Bluetooth Low Energy based Firmware Over The Air with Mbed. Mbed part is a external processor of the IoT devices and communicate with a Bluetooth module. The Bluetooth module have to support BLE and implement BLE FOTA profile designed by ours. BLE FOTA profile specification is available from our GIT hub wiki(https://github.com/sevencore/BLEFOTA).
Dependencies: mbed
Fork of mbed_fota by
Bluetooth Low Energy based Firmware Over The Air with Mbed. Mbed part is a external processor of the IoT devices and communicate with a Bluetooth module. The Bluetooth module have to support BLE and implement BLE FOTA profile designed by ours. BLE FOTA profile specification is available from our GIT hub wiki.
Diff: ext_fota/BleMsgHandler.h
- Revision:
- 8:9eec2c246a85
- Parent:
- 6:8dd20294b2aa
--- a/ext_fota/BleMsgHandler.h Mon Jul 20 09:22:15 2015 +0000 +++ b/ext_fota/BleMsgHandler.h Thu Aug 20 05:16:55 2015 +0000 @@ -1,6 +1,25 @@ +/** + * @file BleMsgHandler.h + * @brief Ble message handler ( Ble message is communication mathod between Mbed and DA14583 ) + * Copyright 2015 SEVENCORE Co., Ltd. + * + * @author HyeongJun Kim + * @version 1.0.0 + * @date 2015-08-17 +*/ + #ifndef BLEMSGHANDLER_H #define BLEMSGHANDLER_H +/** + **************************************************************************************** + * @addtogroup ext_fota module + * @brief Ble message Handler Class Header. + * + * @{ + **************************************************************************************** + */ + #include "mbed.h" #include "MsgQueue.h" #include "SerialManager.h" @@ -21,23 +40,91 @@ class BleMsgHandler { public: + /** + **************************************************************************************** + * @brief Ble message handler constructor only connected Device + **************************************************************************************** + */ BleMsgHandler(Serial* _device); + /** + **************************************************************************************** + * @brief Ble message handler constructor with connected Device & HostPC + **************************************************************************************** + */ BleMsgHandler(Serial* _device, Serial* _hostpc); + /** + **************************************************************************************** + * @brief Ble message handler destructor + **************************************************************************************** + */ ~BleMsgHandler(void); + /** + **************************************************************************************** + * @brief Ble message handler Start title print function + **************************************************************************************** + */ void PrintTitle(void); + /** + **************************************************************************************** + * @brief Create ble message + **************************************************************************************** + */ void BleMsgAlloc(unsigned short id,unsigned short dest_id,unsigned short src_id,unsigned short data_len,void *pdata,uint8_t *msg); + /** + **************************************************************************************** + * @brief Send ble message to device + **************************************************************************************** + */ int BleSendMsg(uint8_t *msg, unsigned short size); + /** + **************************************************************************************** + * @brief Receive ble message from device + **************************************************************************************** + */ void BleReceiveMsg(void); + /** + **************************************************************************************** + * @brief Get message from MsgQueue and Execute corresponding function + **************************************************************************************** + */ void BleMsgHandle(void); + /** + **************************************************************************************** + * @brief Debugging message output to hostpc + **************************************************************************************** + */ void HostPcPrint(char *str); + /** + **************************************************************************************** + * @brief Receive test method + **************************************************************************************** + */ void ReceiveToSerialTest(void); + /** + **************************************************************************************** + * @brief Receive and Store Da14583 flash data + **************************************************************************************** + */ void FirmwareDataReceive(unsigned short code_size, char *version); private: + /** + **************************************************************************************** + * @brief GAPM Command Event Handler + **************************************************************************************** + */ void HandleGapmCmpEvt(unsigned short msgid,struct gapm_cmp_evt *param,unsigned short dest_id,unsigned short src_id); + /** + **************************************************************************************** + * @brief GAPC Command Event Handler + **************************************************************************************** + */ void HandleGapcCmpEvt(unsigned short msgid,struct gapc_cmp_evt *param,unsigned short dest_id,unsigned short src_id); + + +private: bool print_flag; Serial* device; Serial* hostpc; @@ -49,4 +136,5 @@ }//namespace +/// @} ext_fota module #endif //BLEMSGHANDLER_H \ No newline at end of file