-
-
Notifications
You must be signed in to change notification settings - Fork 145
RNode EEPROM Memory Map
faragher edited this page Sep 18, 2024
·
4 revisions
Address | Bytes | Key | Description |
---|---|---|---|
0x00 | P | Product | |
0x01 | M | Model | |
0x02 | HR | Hardware Revision | |
0x03 - 0x06 | 4 | Serial Number | |
0x07 - 0x0a | 4 | Time of creation | |
0x0b - 0x1a | 16 | Checksum | |
0x1b - 0x9a | 128 | Signature | |
0x9b | IL | Info Lock Byte | |
0x9c | SF | Spreading Factor | |
0x9d | CR | Coding Rate | |
0x9e | TX | TX Power | |
0x9f - 0xa2 | 4 | BW | Bandwidth |
0xa3 - 0xa6 | 4 | Freq | Frequency |
0xa7 | CO | Configuration OK | |
0xb0 | BT | Bluetooth Enable | |
0xb1 | DS | Display Set (Hardware Present) | |
0xb2 | DI | Display Intensity | |
0xb3 | DA | Display Address |
The included checksum is not a firmware checksum, but an MD5 hash of the product, model, hardware revision, serial, and time of creation.(0x00 - 0x0a)
The EEPROM is written not through a flashing utility, but through the RNode itself, making it rather agnostic as to what the hardware is. So long as the firmware is written correctly and the EEPROM contents are well-formed, it should work on all hardware.
FEND | CMD_ROM_WRITE | ADDRESS | DATA | FEND |
---|---|---|---|---|
0x0c | 0x52 | <SINGLE_BYTE> | <SINGLE_BYTE> | 0x0c |
The data must be escaped and can be read back via FEND CMD_ROM_READ(0x51) 0x00 FEND
.
RNodeconf writes the product, model, hardware revision, serial, creation time, checksum, and signature. Additional fields can be used for persistent settings (such as the backlight) or special purposes (the TNC mode settings).