MySensors Library & Examples
2.3.2
Macros
MyEepromAddresses
MySensors internal APIs and functionalities
Collaboration diagram for MyEepromAddresses:
Detailed Description
Macros
#define
SIZE_NODE_ID
(1u)
Size node ID.
#define
SIZE_PARENT_NODE_ID
(1u)
Size parent node ID.
#define
SIZE_DISTANCE
(1u)
Size GW distance.
#define
SIZE_ROUTES
(256u)
Size routing table.
#define
SIZE_CONTROLLER_CONFIG
(23u)
Size controller config.
#define
SIZE_PERSONALIZATION_CHECKSUM
(1u)
Size personalization checksum.
#define
SIZE_FIRMWARE_TYPE
(2u)
Size firmware type.
#define
SIZE_FIRMWARE_VERSION
(2u)
Size firmware version.
#define
SIZE_FIRMWARE_BLOCKS
(2u)
Size firmware blocks.
#define
SIZE_FIRMWARE_CRC
(2u)
Size firmware CRC.
#define
SIZE_SIGNING_REQUIREMENT_TABLE
(32u)
Size signing requirement table.
#define
SIZE_WHITELIST_REQUIREMENT_TABLE
(32u)
Size whitelist requirement table.
#define
SIZE_SIGNING_SOFT_HMAC_KEY
(32u)
Size soft signing HMAC key.
#define
SIZE_SIGNING_SOFT_SERIAL
(9u)
Size soft signing serial.
#define
SIZE_RF_ENCRYPTION_AES_KEY
(16u)
Size RF
AES
encryption key.
#define
SIZE_NODE_LOCK_COUNTER
(1u)
Size node lock counter.
#define
EEPROM_START
(0u)
EEPROM start address.
#define
EEPROM_NODE_ID_ADDRESS
EEPROM_START
Address node ID.
#define
EEPROM_PARENT_NODE_ID_ADDRESS
(
EEPROM_NODE_ID_ADDRESS
+
SIZE_NODE_ID
)
Address parent node ID.
#define
EEPROM_DISTANCE_ADDRESS
(
EEPROM_PARENT_NODE_ID_ADDRESS
+
SIZE_PARENT_NODE_ID
)
Address distance to GW.
#define
EEPROM_ROUTES_ADDRESS
(
EEPROM_DISTANCE_ADDRESS
+
SIZE_DISTANCE
)
Address routing table.
#define
EEPROM_CONTROLLER_CONFIG_ADDRESS
(
EEPROM_ROUTES_ADDRESS
+
SIZE_ROUTES
)
Address configuration bytes sent by controller.
#define
EEPROM_PERSONALIZATION_CHECKSUM_ADDRESS
(
EEPROM_CONTROLLER_CONFIG_ADDRESS
+
SIZE_CONTROLLER_CONFIG
)
Personalization checksum (set by
SecurityPersonalizer.ino
)
#define
EEPROM_FIRMWARE_TYPE_ADDRESS
(
EEPROM_PERSONALIZATION_CHECKSUM_ADDRESS
+
SIZE_PERSONALIZATION_CHECKSUM
)
Address firmware type.
#define
EEPROM_FIRMWARE_VERSION_ADDRESS
(
EEPROM_FIRMWARE_TYPE_ADDRESS
+
SIZE_FIRMWARE_TYPE
)
Address firmware version.
#define
EEPROM_FIRMWARE_BLOCKS_ADDRESS
(
EEPROM_FIRMWARE_VERSION_ADDRESS
+
SIZE_FIRMWARE_VERSION
)
Address firmware blocks.
#define
EEPROM_FIRMWARE_CRC_ADDRESS
(
EEPROM_FIRMWARE_BLOCKS_ADDRESS
+
SIZE_FIRMWARE_BLOCKS
)
Address firmware CRC.
#define
EEPROM_SIGNING_REQUIREMENT_TABLE_ADDRESS
(
EEPROM_FIRMWARE_CRC_ADDRESS
+
SIZE_FIRMWARE_CRC
)
Address signing requirement table.
#define
EEPROM_WHITELIST_REQUIREMENT_TABLE_ADDRESS
(
EEPROM_SIGNING_REQUIREMENT_TABLE_ADDRESS
+
SIZE_SIGNING_REQUIREMENT_TABLE
)
Address whitelist requirement table.
#define
EEPROM_SIGNING_SOFT_HMAC_KEY_ADDRESS
(
EEPROM_WHITELIST_REQUIREMENT_TABLE_ADDRESS
+
SIZE_WHITELIST_REQUIREMENT_TABLE
)
Address soft signing HMAC key. This is set with
SecurityPersonalizer.ino
.
#define
EEPROM_SIGNING_SOFT_SERIAL_ADDRESS
(
EEPROM_SIGNING_SOFT_HMAC_KEY_ADDRESS
+
SIZE_SIGNING_SOFT_HMAC_KEY
)
Address soft signing serial key. This is set with
SecurityPersonalizer.ino
.
#define
EEPROM_RF_ENCRYPTION_AES_KEY_ADDRESS
(
EEPROM_SIGNING_SOFT_SERIAL_ADDRESS
+
SIZE_SIGNING_SOFT_SERIAL
)
Address RF
AES
encryption key. This is set with
SecurityPersonalizer.ino
.
#define
EEPROM_NODE_LOCK_COUNTER_ADDRESS
(
EEPROM_RF_ENCRYPTION_AES_KEY_ADDRESS
+
SIZE_RF_ENCRYPTION_AES_KEY
)
Address node lock counter. This is set with
SecurityPersonalizer.ino
.
#define
EEPROM_LOCAL_CONFIG_ADDRESS
(
EEPROM_NODE_LOCK_COUNTER_ADDRESS
+
SIZE_NODE_LOCK_COUNTER
)
First free address for sketch static configuration.
Copyright (C) 2013-2019 Sensnology AB. Generated by
doxygen
1.8.17