advertising a version number
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
#include "BLEOTA.h"
|
||||
|
||||
BLEOTAClass::BLEOTAClass(){
|
||||
_pVersionNumber = new BLECharacteristic(VERSION_NUMBER_UUID, BLECharacteristic::PROPERTY_NOTIFY);
|
||||
_pVersionNumberDescriptor = new BLEDescriptor(VERSION_NUMBER_DESCRIPTOR_UUID);
|
||||
};
|
||||
|
||||
void BLEOTAClass::begin(BLEServer* server, char* versionNumber = "1.0.0") {
|
||||
// set internal versionNumber
|
||||
_vNum = versionNumber;
|
||||
// set internal server
|
||||
_pServer = server;
|
||||
// create service
|
||||
BLEService* otaService = _pServer->createService(OTA_SERVICE_UUID);
|
||||
// version number property
|
||||
otaService->addCharacteristic(_pVersionNumber);
|
||||
_pVersionNumber->setValue(_vNum);
|
||||
_pVersionNumberDescriptor->setValue("Version Number");
|
||||
_pVersionNumber->addDescriptor(_pVersionNumberDescriptor);
|
||||
|
||||
otaService->start();
|
||||
}
|
||||
18
src/BLEOTA.h
18
src/BLEOTA.h
@@ -1,4 +1,22 @@
|
||||
#ifndef BLEOTA
|
||||
#define BLEOTA
|
||||
|
||||
#include <Arduino.h>
|
||||
#include <BLEServer.h>
|
||||
|
||||
#define OTA_SERVICE_UUID "71a4438e-fd52-4b15-b3d2-ec0e3e56193b"
|
||||
#define VERSION_NUMBER_UUID "1978a3df-c009-4837-b295-57ef429dde8c"
|
||||
#define VERSION_NUMBER_DESCRIPTOR_UUID "1e0c35d1-ba03-4f4d-a99c-bac7664d95ed"
|
||||
|
||||
class BLEOTAClass {
|
||||
public:
|
||||
BLEOTAClass();
|
||||
void begin(BLEServer* server, char* versionNumber = "1.0.0");
|
||||
private:
|
||||
BLEServer* _pServer;
|
||||
char* _vNum;
|
||||
BLECharacteristic* _pVersionNumber;
|
||||
BLEDescriptor* _pVersionNumberDescriptor;
|
||||
};
|
||||
|
||||
#endif /* BLEOTA */
|
||||
Reference in New Issue
Block a user