HwData Structures » Historie » Revision 2
« Zurück |
Revision 2/16
(diff)
| Weiter »
Redmine Admin, 26.11.2021 16:44
HW-Data¶
Each Board (with MCU) should have an I2C EEPROM containung some "production" information.
Offset | Type |
---|---|
0x00 | Production-Data |
0x20 | Board-Config |
0x40 | Config 1 |
0x60 | Config 2 |
If EEPROM is not available, an sector in internal flash can be used.
The area within the flash should be handled by the "retain"-class from libbiwak. It
already handles header version and CRC.
"Magic"s do not make much sense. Its not supposed to be human readable.
Section | Offset | Type | Size | Decription | Example | Version |
---|---|---|---|---|---|---|
Main | 0x00 | ui8 | 1 | Magic 'H' | 'H' | 3.0. |
0x01 | ui16 | 2 | Articles ID | 0020 | 3.0. | |
0x03 | ui16 | 2 | Board ID; unique | 0020 | 3.0. | |
Version | 0x05 | ui8 | 1 | major version | 0 | 3.0. |
0x06 | ui8 | 1 | minor verison | 4 | 3.0. | |
0x07 | ui8 | 1 | patch verison; assembly option 1) | 0 | 3.0. | |
Production | 0x08 | ui32 | 4 | Serial number | 0001 | 3.0. |
0x0c | ui32 | 4 | Variant/Flags 2) | 0 | 3.0. | |
0x10 | ui8 | 1 | Production year (+2000) | 3 | 3.0. | |
0x11 | ui8 | 1 | Production month | 10 | 3.0. | |
0x12 | ui8 | 1 | Production day | 21 | 3.0. | |
0x13 | ui8 | 1 | Production site | 3 | 3.0. | |
0x14 | ui32 | 4 | reserved | 0 | 3.0. | |
0x18 | Struct | 8 | Retain information; Version, counter, CRC | {-} | 3.0. |
1) although circuit might be changed afterwards, assembly option at time of production
is relevant. To compare with errate-page.
2) Things that might be relevant for running software like used transceivers. Product specific.
Its only related to the board directly, not connected periphery.
Things like production site, version of horo-firmware etc. can be stored off-device.
Article-ID: Very loose. Eval and final have same article.
Board-ID: does not change with minor/major version. Needed to find git repos. No version. Different IDs remain parallel. As long as same souce code is used.
Von Redmine Admin vor etwa 3 Jahren aktualisiert · 2 Revisionen