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 KIM HyoengJun

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.

ext_fota/BleMsgHandler.h

Committer:
dudnwjs
Date:
2015-06-23
Revision:
3:1e70387e1337
Parent:
2:dba344c91bce
Child:
4:60be78a172c2

File content as of revision 3:1e70387e1337:

#ifndef BLEMSGHANDLER_H
#define BLEMSGHANDLER_H

#include "mbed.h"
#include "MsgQueue.h"
#include "SerialManager.h"

namespace sevencore_fota{
    
typedef struct {
    unsigned short bType;
    unsigned short bDstid;
    unsigned short bSrcid;
    unsigned short bLength;
} ble_hdr;    

class BleMsgHandler
{
public:
    BleMsgHandler(Serial* _device);
    BleMsgHandler(Serial* _device, Serial* _hostpc);
    ~BleMsgHandler(void);
    void PrintTitle(void);
    void BleMsgAlloc(unsigned short id,unsigned short dest_id,unsigned short src_id,unsigned short data_len,void *pdata,uint8_t *msg);
    int BleSendMsg(uint8_t *msg, unsigned short size);
    void BleReceiveMsg(void);
    void BleMsgHandle(void);
    
private:
    bool print_flag;
    Serial* device;
    Serial* hostpc;
    SerialManager* SerialM;
    MsgQueue* MsgQ;
    unsigned char recv_msg[512];
};

}//namespace

#endif //BLEMSGHANDLER_H