EEPROM address
- In earlier revisions of D1, the EEPROM address is 0x50
- In later revisions of D1 and all D1+ EEPROMs are 0x56
Data in EEPROM
EEPROM may be empty in early revisions.
Offset |
Length |
Data type |
Data |
Description |
0 |
8 |
char[8] |
MAGIC |
If the EEPROM is full, the value is "JETHOME_" |
|
1 |
boolean |
MAC_PRESENT |
|
|
1 |
boolean |
USID_PRESENT |
|
|
1 |
boolean |
DTB_ID_PRESENT |
|
|
1 |
boolean |
MOTHERBOARD_ID_PRESENT |
|
|
20 |
|
reserved |
|
32 |
17 |
char[17] |
MAC |
Backup copy of MAC address. |
|
15 |
|
reserved |
|
64 |
28 |
char[28]
|
USID |
USID backup |
|
4 |
|
reserved |
|
96 |
32 |
Null-term string |
DTB_ID |
Name of custom DTS file, for example pd75_basic_v1.dtb
|
128 |
32 |
Null-term string |
MOTHERBOARD_ID |
PD76_BASIC_V2.0 |
TODO: Zigbee modules description?
MAC/USID entry rules
- MAC address and USID in the CPU module have the highest priority.
- If the MAC / USID in the motherboard does not match the data in the CPU module, we overwrite the data in the motherboard.
- If there are no MAC/USIDs in the CPU module (they were overwritten), we restore them from the motherboard data.
Values for boards
Pay |
DTB_ID |
MOTHERBOARD_ID |
Note |
PD76 Basic v2. 1 |
|
|
May be empty |