Bluenet  5.7.0
Bluenet, firmware for nRF52 smart home devices
Loading...
Searching...
No Matches
cs_iBeacon.h
Go to the documentation of this file.
1
10#pragma once
11
12#include <ble/cs_UUID.h>
14#include <util/cs_Utils.h>
15
34class IBeacon {
35private:
44 union {
47 struct {
50 uint16_t adv_indicator;
51
55
58 uint16_t major;
59
62 uint16_t minor;
63
71 int8_t txPower;
75 uint8_t _buffer[sizeof(_params)];
76 };
77
78public:
89 IBeacon(cs_uuid128_t uuid, uint16_t major, uint16_t minor, int8_t rssi);
90
104 uint8_t size() { return 23; }
105
106 uint8_t* getArray() { return _buffer; }
107
109 void setMajor(uint16_t major);
111 uint16_t getMajor();
112
114 void setMinor(uint16_t minor);
116 uint16_t getMinor();
117
122
124 void setTxPower(int8_t txPower);
126 int8_t getTxPower();
127};
Implementation of the iBeacon specification.
Definition: cs_iBeacon.h:34
uint8_t _buffer[sizeof(_params)]
Buffer.
Definition: cs_iBeacon.h:75
uint8_t size()
The size of the iBeacon advertisement data.
Definition: cs_iBeacon.h:104
uint16_t getMinor()
Get minor value.
void setUUID(cs_uuid128_t &uuid)
Set UUID.
uint16_t adv_indicator
Advertisement indicator, defined as 0x0215 for iBeacons.
Definition: cs_iBeacon.h:50
void setTxPower(int8_t txPower)
Set RSSI value.
uint16_t getMajor()
Get major value
cs_uuid128_t getUUID()
Get UUID.
IBeacon(cs_uuid128_t uuid, uint16_t major, uint16_t minor, int8_t rssi)
Default constructor for the iBeacon class.
uint16_t major
Major number (group level identifier)
Definition: cs_iBeacon.h:58
uint8_t * getArray()
Definition: cs_iBeacon.h:106
int8_t txPower
Known (calibrated) rssi value at 1m distance.
Definition: cs_iBeacon.h:71
void setMajor(uint16_t major)
Set major value.
int8_t getTxPower()
Get RSSI value.
uint16_t minor
Minor number (individual nodes)
Definition: cs_iBeacon.h:62
void setMinor(uint16_t minor)
Set minor value.
struct IBeacon::@3::@5 _params
Individual fields.
cs_uuid128_t uuid
Proximity UUID, shared for all iBeacons for a given application.
Definition: cs_iBeacon.h:54
Definition: cs_Typedefs.h:45