61 lines
1.5 KiB
C
61 lines
1.5 KiB
C
#ifndef BLE_MODEM_H
|
|
#define BLE_MODEM_H
|
|
|
|
#include "wm_type_def.h"
|
|
|
|
/**
|
|
* @brief Turns the BLE modem on
|
|
*
|
|
* @param startService to start the ble service when turning the modem on
|
|
* @return true on success
|
|
* @return false on failure
|
|
*/
|
|
bool ble_modem_on(bool bluetoothOnly, bool startService);
|
|
|
|
/**
|
|
* @brief Turns the BLE modem off
|
|
* @note If the ble service was started, then it will automatically be turned off with the modem
|
|
*
|
|
* @return true on success
|
|
* @return false on failure
|
|
*/
|
|
bool ble_modem_off(void);
|
|
|
|
/**
|
|
* @brief Find out if the modem is turned on or not
|
|
*
|
|
* @return true if turned on
|
|
* @return false if turned off
|
|
*/
|
|
bool is_ble_modem_on(void);
|
|
|
|
/**
|
|
* @brief Sets the BLE modem to sleep during IDLE times.
|
|
* This will lead to a latency penalty of arround 10 seconds,
|
|
* upon receiving a new frame but reduces power consumption when using BLE.
|
|
*
|
|
* @return true if the modem was successfully set to sleep.
|
|
* @return false if not
|
|
*/
|
|
bool ble_modem_sleep(void);
|
|
|
|
/**
|
|
* @brief Disables the sleep state of the BLE modem. Latency will increase and power
|
|
* consumption also.
|
|
*
|
|
* @return true if the modem woke up successfully
|
|
* @return false otherwise
|
|
*/
|
|
bool ble_modem_wake(void);
|
|
|
|
/**
|
|
* @brief Returns true if the BLE modem is allowed to sleep during IDLE times, false
|
|
* if it is not allowed to sleep.
|
|
*
|
|
* @return true if it is sleeping or allowed to sleep
|
|
* @return false otherwise
|
|
*/
|
|
bool ble_modem_is_sleeping(void);
|
|
|
|
#endif //BLE_MODEM_H
|