A cute tiny piece of code implementing an IoT NAND device, demonstrating how to setup and advertise a cute GATT (NAND) service. The code has been tested on a Nordic nRF51822-DK.

Dependencies:   BLE_API mbed nRF51822

Fork of BLE_HeartRate_IDB0XA1 by ST

Committer:
hux
Date:
Sun Jan 08 23:15:53 2017 +0000
Revision:
23:2e73c391bb12
A cute tiny piece of code implementing an Iot NAND device, demonstrating how to setup and advertise a cute GATT (NAND) service.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hux 23:2e73c391bb12 1 // print.h - print value of a characteristic
hux 23:2e73c391bb12 2 //
hux 23:2e73c391bb12 3 // Synopsis:
hux 23:2e73c391bb12 4 //
hux 23:2e73c391bb12 5 // See also: CHARACTERISTIC, GET, SET
hux 23:2e73c391bb12 6 //
hux 23:2e73c391bb12 7 #ifndef _PRINT_H_
hux 23:2e73c391bb12 8 #define _PRINT_H_
hux 23:2e73c391bb12 9
hux 23:2e73c391bb12 10 #include "ble/Gap.h"
hux 23:2e73c391bb12 11 #include "bricks/o.h"
hux 23:2e73c391bb12 12 #include "bricks/types.h"
hux 23:2e73c391bb12 13 #include "bricks/characteristic.h"
hux 23:2e73c391bb12 14
hux 23:2e73c391bb12 15 //==============================================================================
hux 23:2e73c391bb12 16 // Some Callbacks
hux 23:2e73c391bb12 17 //==============================================================================
hux 23:2e73c391bb12 18
hux 23:2e73c391bb12 19 inline void print(O&o, Characteristic<Buffer> &chr, const char *name)
hux 23:2e73c391bb12 20 {
hux 23:2e73c391bb12 21 Serial out(USBTX, USBRX); // serial port to PC terminal
hux 23:2e73c391bb12 22
hux 23:2e73c391bb12 23 Buffer data; uint8_t *p = data;
hux 23:2e73c391bb12 24 get(o,chr,data);
hux 23:2e73c391bb12 25
hux 23:2e73c391bb12 26 out.printf("%s: %02x-%02x-%02x-%02x-%02x-",name,(int)(p[0]),(int)(p[1]),(int)(p[2]),(int)(p[3]),(int)(p[4]));
hux 23:2e73c391bb12 27 out.printf("%02x-%02x-%02x-%02x-%02x\r\n",(int)(p[5]),(int)(p[6]),(int)(p[7]),(int)(p[8]),(int)(p[9]));
hux 23:2e73c391bb12 28 }
hux 23:2e73c391bb12 29
hux 23:2e73c391bb12 30 inline void print(O&o, Characteristic<Bool> &chr, const char *name)
hux 23:2e73c391bb12 31 {
hux 23:2e73c391bb12 32 Serial out(USBTX, USBRX); // serial port to PC terminal
hux 23:2e73c391bb12 33 Bool data;
hux 23:2e73c391bb12 34
hux 23:2e73c391bb12 35 get(o,chr,data);
hux 23:2e73c391bb12 36 out.printf("%s: %02x\r\n",name,(int)data);
hux 23:2e73c391bb12 37 }
hux 23:2e73c391bb12 38
hux 23:2e73c391bb12 39 #endif // _SET_H_