blob: 4f986791a6aa90e5138e3cc5fd1d81440791d9a2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#include "badge/ble.h"
#include <NimBLEDevice.h>
#include "badge/config.h"
static NimBLEServer *server;
static NimBLEAdvertising *pAdvertising;
void de::uvok::badge::ble_init(void)
{
NimBLEDevice::init("Espadge");
server = NimBLEDevice::createServer();
NimBLEService *service = new NimBLEService("ca260000-b4bb-46b2-bd06-b7b7a61ea990");
// read/write current
auto c = service->createCharacteristic("ca260001-b4bb-46b2-bd06-b7b7a61ea990",
NIMBLE_PROPERTY::READ | NIMBLE_PROPERTY::WRITE || NIMBLE_PROPERTY::NOTIFY);
// get pictures
service->createCharacteristic("ca260002-b4bb-46b2-bd06-b7b7a61ea990", NIMBLE_PROPERTY::READ);
service->start();
server->addService(service);
pAdvertising = NimBLEDevice::getAdvertising();
pAdvertising->setName("NimBLE");
}
void de::uvok::badge::ble_advertise(void)
{
if (!pAdvertising->isAdvertising())
{
Serial.println("Long press detected. Starting advertising...");
pAdvertising->start(10000);
}
}
|