Cloning Beagle Bone Black is common now a days. Most of the software/platform developer face problems due to Invalid Magic number. There are two ways to solve it.
I will explain that process in different post.

You can verify this information with EEPROM content available in table in BBB SRM.
This command will write "aa" in EEPROM. you can type "i2c md 0x50 0.2 0x20" and verify. Now can follow the same process and write Full Magic Number.
1. Changing in U-Boot to bypass magic number check.
This option would require downloading U-Boot sources and compiling by modifying/removing Magic number check "if" condition.I will explain that process in different post.
2. Reading BBB Magic Number and writing back to your BBB Clone.
This requires to interact with BBB EEPROM via I2C.Details:
Please refer BBB system reference manual for detailed information. According to reference manual following are the contents available BBB EEPROM.
Following are the connection of EEPROM.
According to connection, data can be read via I2C channel 0 from EEPROM. There are 3 I2c channels available in BBB and EEPROM is connected to I2C0. This information can change so check BBB SRM before interacting over I2C.
Reading EEPROM data.
1. Power on BBB.
2. Wait for U-Boot message.
3. Press any key to enter into U-Boot.
4. Type following command.
i2c md 0x50 0.2 0x20
You can verify this information with EEPROM content available in table in BBB SRM.
Write EEPROM data
1. Power on BBB.
2. Wait for U-Boot message.
3. Press any key to enter into U-Boot.
4. Connect TP4(Write Protection pin) to ground.
5. Type following command.
i2c mw 0x50 0.2 0xaa 0x1
This command will write "aa" in EEPROM. you can type "i2c md 0x50 0.2 0x20" and verify. Now can follow the same process and write Full Magic Number.
Awesome, used a small bash script with printf / dd to fix broken serial numbers on many BBB thank you!
ReplyDelete