Open main menu

DAVE Developer's Wiki β

Changes

ConfigID and UniqueID

3,701 bytes added, 25 January
DAVE Embedded Systems' hardware implementation
{{InfoBoxTop}}
{{AppliesToAXEL Lite TN}}
{{AppliesToAXEL ULite TN}}
{{AppliesTo SBC Lynx TN}}
{{AppliesTo ORCA TN}}
{{AppliesTo ORCA SBC TN}}
{{AppliesTo MITO 8M Mini TN}}
{{AppliesTo MITO 8M Nano TN}}
{{AppliesTo MITO 8M TN}}
{{AppliesToETRA TN}}
{{AppliesTo ETRA SBC TN}}
{{AppliesToBORA TN}}
{{AppliesToBORA Lite TN}}
{{Applies To Diva}}
{{Applies To Bora}}
{{Applies To BoraLite}}
{{AppliesToAxel}}
{{AppliesToAxelLite}}
{{AppliesToAXELULite}}
{{AppliesToSBCLynx}}
{{InfoBoxBottom}}
<section begin="Body" />
== ConfigID and UniqueID==
# I2C Eeprom
## example: DIVA family processor (AM335x) or BORA Lite processor (ZYNQ) implements ConfigID using I2C Eeprom when NOR SPI is not present (module boots from NAND or SD)
## DIVA and BORA Lite use the first 32bytes on I2C EPROM to store ConfigID (and its CRC32), UniqueID (and its CRC32)
# 1-wire
## example: latest XELKAXEL Lite, DIVELK, BELK Carrier Boards AXEL ULite and BORA/BORA Xpress/BORA Lite Evaluation Kits implement CB ConfigID using the onboard 1-wire device (DS2431)
==== Software implementation ====
</pre>
=== A real case example of ConfigID benefit ===The ConfigID benefit is clear when:* there is a number of products deployed on the field* the products deployed on the field needs a SW updateThe ideal scenario is that all products are equal and there are no differences on the Bill Of Material (BOM):<gallery caption="All products have the same BOM with a single Config ID">File:Smartphone-icon.png|ConfigID AFile:Smartphone-icon.png|ConfigID AFile:Smartphone-icon.png|ConfigID AFile:Smartphone-icon.png|ConfigID AFile:Smartphone-icon.png|ConfigID AFile:Smartphone-icon.png|ConfigID A</gallery>In this case there are no problems to deploy a new SW update on the field: all products have the <u>'''same'''</u> HW configuration, then the '''<u>same</u>''' SW configuration.  Unfortunately, this is an ideal scenario. The reality is that:* component obsolescence* product shortage* second source strategiesforce to have an on-the-field different version of product (with same functionalities but with different HW configuration) which doesn't permit to realize what proposed in the ideal case.  {{ImportantMessage|text=The usage of the ConfigID technique, allows the running SW to identify the underlying HW configuration and automatically adapt the BSP (i.e. the driver layer) to properly use the HW subsystems: this, maintaining the overall product features identical to the final User point-of-view.}} <gallery caption="All products are similar BUT there are different Config ID between the 2 product versions">File:Smartphone-icon.png|ConfigID AFile:Smartphone-icon.png|ConfigID AFile:Smartphone-icon-2.png|ConfigID BFile:Smartphone-icon-2.png|ConfigID BFile:Smartphone-icon.png|ConfigID AFile:Smartphone-icon-2.png|ConfigID B</gallery>With a scenario, like the one described above, if you would like to update the SW you need to implement a strategy for understanding what platform version is going to be updated. The Config ID is used exactly for this goal. The ConfigID provides to the software update routine the information on which product version is so the update can be adapted to the exact product version. In this way, you can distribute one single version of the software update which will automatically adapt itself to the currently running platform. ==== How to handle After Sales with Config ID ====One of the mos common questions about Config ID is how to handle the Config ID issue. Below is described with an example how to handle it. This product is returned from the field with a problem on the display:[[File:Smartphone-icon.png|none|thumb|159x159px|Config ID A]]After Sales Dept analizes the product and decide to substitute the display. The problem is that the existing display is not available - because of is End Of Life (EOL) - and it is required to move to a different display: in the product a different Config ID will be written because of the 2 displays requires a dedicated SW version and cannot be distinguished automatically during the startup. The final result is to have the similar product:[[File:Smartphone-icon-2.png|none|thumb|189x189px|Config ID B]]As indicated, the new display requires a different Config ID (from A to B) so it can be updated with an easy software routine before start the SW update. This Config ID update routine can be implemented in manufacturing facility typically using a dedicated USB pen drive which modify the saved ConfigID to the new one depending on the storage memory in use<section end="Body" />
8,220
edits