14#define SERVICE_DATA_VALIDATION 0xFA
17 struct __attribute__((packed)) {
29#define SERVICE_DATA_HUB_DATA_SIZE 9
41 struct __attribute__((packed)) {
55 struct __attribute__((packed)) {
138 struct __attribute__((packed)) {
186 switch (data->
type) {
260 struct __attribute__((packed)) {
#define SERVICE_DATA_HUB_DATA_SIZE
Definition: cs_ServiceDataPackets.h:29
constexpr void convertToExternalError(service_data_encrypted_t *data, int8_t rssi)
Function to convert from service_data_encrypted_error_t to service_data_encrypted_ext_error_t.
Definition: cs_ServiceDataPackets.h:219
constexpr void convertToExternalState(service_data_encrypted_t *data, int8_t rssi)
Function to convert from service_data_encrypted_state_t to service_data_encrypted_ext_state_t.
Definition: cs_ServiceDataPackets.h:206
ServiceDataDataType
Definition: cs_ServiceDataPackets.h:156
@ SERVICE_DATA_DATA_TYPE_MICROAPP
Definition: cs_ServiceDataPackets.h:163
@ SERVICE_DATA_DATA_TYPE_HUB_STATE
Definition: cs_ServiceDataPackets.h:162
@ SERVICE_DATA_DATA_TYPE_EXT_STATE
Definition: cs_ServiceDataPackets.h:159
@ SERVICE_DATA_DATA_TYPE_EXT_ERROR
Definition: cs_ServiceDataPackets.h:160
@ SERVICE_DATA_DATA_TYPE_ERROR
Definition: cs_ServiceDataPackets.h:158
@ SERVICE_DATA_DATA_TYPE_STATE
Definition: cs_ServiceDataPackets.h:157
@ SERVICE_DATA_DATA_TYPE_ALTERNATIVE_STATE
Definition: cs_ServiceDataPackets.h:161
constexpr stone_id_t getStoneId(service_data_encrypted_t *data)
Function to get the stone ID from the encrypted service data.
Definition: cs_ServiceDataPackets.h:185
ServiceDataType
Definition: cs_ServiceDataPackets.h:249
@ SERVICE_DATA_TYPE_SETUP
Definition: cs_ServiceDataPackets.h:250
@ SERVICE_DATA_TYPE_ENCRYPTED
Definition: cs_ServiceDataPackets.h:251
uint8_t stone_id_t
Definition: cs_Typedefs.h:23
State of this crownstone.
Definition: cs_ServiceDataPackets.h:125
uint16_t assetFiltersVersion
Definition: cs_ServiceDataPackets.h:130
uint32_t assetFiltersCrc
Definition: cs_ServiceDataPackets.h:131
uint8_t validation
Definition: cs_ServiceDataPackets.h:134
uint8_t id
Definition: cs_ServiceDataPackets.h:126
service_data_state_flags_t flags
Definition: cs_ServiceDataPackets.h:128
uint16_t partialTimestamp
Definition: cs_ServiceDataPackets.h:132
uint16_t behaviourMasterHash
Definition: cs_ServiceDataPackets.h:129
uint8_t reserved2
Definition: cs_ServiceDataPackets.h:133
uint8_t switchState
Definition: cs_ServiceDataPackets.h:127
In case the crownstone has errors, this will be advertised next to the state.
Definition: cs_ServiceDataPackets.h:80
uint8_t id
Definition: cs_ServiceDataPackets.h:81
int8_t temperature
Definition: cs_ServiceDataPackets.h:85
int16_t powerUsageReal
Definition: cs_ServiceDataPackets.h:87
uint32_t timestamp
Definition: cs_ServiceDataPackets.h:83
uint16_t partialTimestamp
Definition: cs_ServiceDataPackets.h:86
uint32_t errors
Definition: cs_ServiceDataPackets.h:82
service_data_state_flags_t flags
Definition: cs_ServiceDataPackets.h:84
Errors of another crownstone.
Definition: cs_ServiceDataPackets.h:109
int8_t temperature
Definition: cs_ServiceDataPackets.h:114
uint32_t errors
Definition: cs_ServiceDataPackets.h:111
uint32_t timestamp
Definition: cs_ServiceDataPackets.h:112
uint16_t partialTimestamp
Definition: cs_ServiceDataPackets.h:115
uint8_t validation
Definition: cs_ServiceDataPackets.h:117
int8_t rssi
Definition: cs_ServiceDataPackets.h:116
service_data_state_flags_t flags
Definition: cs_ServiceDataPackets.h:113
uint8_t id
Definition: cs_ServiceDataPackets.h:110
State of another crownstone.
Definition: cs_ServiceDataPackets.h:93
uint8_t switchState
Definition: cs_ServiceDataPackets.h:95
uint8_t validation
Definition: cs_ServiceDataPackets.h:103
uint16_t partialTimestamp
Definition: cs_ServiceDataPackets.h:101
int32_t energyUsed
Definition: cs_ServiceDataPackets.h:100
service_data_state_flags_t flags
Definition: cs_ServiceDataPackets.h:96
int16_t powerUsageReal
Definition: cs_ServiceDataPackets.h:99
uint8_t id
Definition: cs_ServiceDataPackets.h:94
int8_t powerFactor
Definition: cs_ServiceDataPackets.h:98
int8_t rssi
Definition: cs_ServiceDataPackets.h:102
int8_t temperature
Definition: cs_ServiceDataPackets.h:97
Microapp data that will be encrypted.
Definition: cs_ServiceDataPackets.h:147
uint16_t partialTimestamp
Definition: cs_ServiceDataPackets.h:152
service_data_microapp_flags_t flags
Definition: cs_ServiceDataPackets.h:148
uint16_t appUuid
Definition: cs_ServiceDataPackets.h:149
uint8_t validation
Definition: cs_ServiceDataPackets.h:153
uint8_t id
Definition: cs_ServiceDataPackets.h:151
State of this crownstone.
Definition: cs_ServiceDataPackets.h:64
int8_t powerFactor
Definition: cs_ServiceDataPackets.h:69
uint16_t partialTimestamp
Definition: cs_ServiceDataPackets.h:72
int8_t temperature
Definition: cs_ServiceDataPackets.h:68
uint8_t id
Definition: cs_ServiceDataPackets.h:65
service_data_state_flags_t flags
Definition: cs_ServiceDataPackets.h:67
int16_t powerUsageReal
Definition: cs_ServiceDataPackets.h:70
service_data_state_extra_flags_t extraFlags
Definition: cs_ServiceDataPackets.h:73
uint8_t validation
Definition: cs_ServiceDataPackets.h:74
int32_t energyUsed
Definition: cs_ServiceDataPackets.h:71
uint8_t switchState
Definition: cs_ServiceDataPackets.h:66
This data is encrypted.
Definition: cs_ServiceDataPackets.h:169
uint8_t type
Definition: cs_ServiceDataPackets.h:170
service_data_encrypted_microapp_t microapp
Definition: cs_ServiceDataPackets.h:178
service_data_encrypted_error_t error
Definition: cs_ServiceDataPackets.h:173
service_data_encrypted_ext_state_t extState
Definition: cs_ServiceDataPackets.h:174
service_data_hub_state_t hubState
Definition: cs_ServiceDataPackets.h:177
service_data_encrypted_state_t state
Definition: cs_ServiceDataPackets.h:172
service_data_encrypted_alternative_state_t altState
Definition: cs_ServiceDataPackets.h:176
service_data_encrypted_ext_error_t extError
Definition: cs_ServiceDataPackets.h:175
Definition: cs_ServiceDataPackets.h:31
service_data_hub_state_flags_t flags
Definition: cs_ServiceDataPackets.h:33
uint16_t partialTimestamp
Definition: cs_ServiceDataPackets.h:35
uint8_t id
Definition: cs_ServiceDataPackets.h:32
uint8_t validation
Definition: cs_ServiceDataPackets.h:37
uint8_t reserved
Definition: cs_ServiceDataPackets.h:36
Definition: cs_ServiceDataPackets.h:224
uint8_t switchState
Definition: cs_ServiceDataPackets.h:225
service_data_state_flags_t flags
Definition: cs_ServiceDataPackets.h:226
uint8_t counter
Definition: cs_ServiceDataPackets.h:231
int8_t temperature
Definition: cs_ServiceDataPackets.h:227
int8_t powerFactor
Definition: cs_ServiceDataPackets.h:228
uint32_t errors
Definition: cs_ServiceDataPackets.h:230
int16_t powerUsageReal
Definition: cs_ServiceDataPackets.h:229
Setup data.
Definition: cs_ServiceDataPackets.h:240
service_data_setup_state_t state
Definition: cs_ServiceDataPackets.h:243
uint8_t type
Definition: cs_ServiceDataPackets.h:241
service_data_hub_state_t hubState
Definition: cs_ServiceDataPackets.h:244
Definition: cs_ServiceDataPackets.h:16
bool hasError
Definition: cs_ServiceDataPackets.h:24
bool hasBeenSetUp
Definition: cs_ServiceDataPackets.h:22
uint8_t asInt
Definition: cs_ServiceDataPackets.h:26
bool uartAliveEncrypted
Definition: cs_ServiceDataPackets.h:19
bool uartEncryptionRequiredByHub
Definition: cs_ServiceDataPackets.h:21
bool uartAlive
Definition: cs_ServiceDataPackets.h:18
bool hasInternet
Definition: cs_ServiceDataPackets.h:23
bool uartEncryptionRequiredByStone
Definition: cs_ServiceDataPackets.h:20
Definition: cs_ServiceDataPackets.h:137
uint8_t asInt
Definition: cs_ServiceDataPackets.h:141
bool timeSet
Definition: cs_ServiceDataPackets.h:139
Definition: cs_ServiceDataPackets.h:40
bool switchLocked
Definition: cs_ServiceDataPackets.h:45
uint8_t asInt
Definition: cs_ServiceDataPackets.h:51
bool tapToToggle
Definition: cs_ServiceDataPackets.h:48
bool error
Definition: cs_ServiceDataPackets.h:44
bool dimmingReady
Definition: cs_ServiceDataPackets.h:42
bool markedDimmable
Definition: cs_ServiceDataPackets.h:43
bool switchcraft
Definition: cs_ServiceDataPackets.h:47
bool behaviourOverridden
Definition: cs_ServiceDataPackets.h:49
bool timeSet
Definition: cs_ServiceDataPackets.h:46
Service data.
Definition: cs_ServiceDataPackets.h:259
struct service_data_t::@29 params
service_data_encrypted_t encrypted
Definition: cs_ServiceDataPackets.h:264
uint8_t array[sizeof(params)]
Definition: cs_ServiceDataPackets.h:269
service_data_setup_t setup
Definition: cs_ServiceDataPackets.h:265
uint8_t deviceType
Definition: cs_ServiceDataPackets.h:262
uint8_t type
Definition: cs_ServiceDataPackets.h:261