EEPROM on PD family motherboards

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