📜 ⬆️ ⬇️

VoCore firmware update: UART

Recently, several friends of VoCore came to my friends, who ordered in the summer. We immediately began to study them and to experiment in every way. During my attempts to set up one, the system was killed and the mini-computer no longer booted. A few minutes later several pages were found dedicated to VoCore, and instructions for using kermit.

To reflash this device, we need a USB-UART converter and wires to connect it all. The picture below shows where the power and port UART:



We stick in the wiring and bend the ends so as not to not solder. The contact is stable.
')


There was such a problem that the board only saw 13M RAM instead of the prescribed 32M. At the forum, VoCore was advised to connect the common wire to another GND contact, but this did not help. Therefore, my power comes directly from USB.



Next, turn on kermit, pass parameters to it and connect:

C-Kermit> set line /dev/ttyUSB0 C-Kermit> set speed 57600 C-Kermit> set serial 8N1 C-Kermit> set carrier-watch off C-Kermit> set flow-control none C-Kermit> set prefixing all C-Kermit> set modem none C-Kermit> set file type bin C-Kermit> set file name lit C-Kermit> connect Connecting to /dev/ttyUSB0, speed 57600 Escape character: Ctrl-\ (ASCII 28, FS): enabled Type the escape character followed by C to get back, or followed by ? to see other options. ---------------------------------------------------- 

We distort the power supply and click the 'x' (by default we have 1 second):

 U-Boot for VoCore(based on RT5350).. Version: May 30 2014 20:52:36 Press 'x' to console... VoCore> 

We transfer to the data reception mode:

 VoCore> loadb ## Ready for binary (kermit) download to 0x80100000 at 57600 bps... 

Now press Ctrl + \ and then C to return to the kermit menu. Fill the firmware :

 C-Kermit> send vocore.bin 


While the firmware is being transferred, you can go and drink some tea, we have about 12 minutes to do it ...

After the firmware is downloaded, reconnect to the console:

 C-Kermit> connect Connecting to /dev/ttyUSB0, speed 57600 Escape character: Ctrl-\ (ASCII 28, FS): enabled Type the escape character followed by C to get back, or followed by ? to see other options. ---------------------------------------------------- ## Total Size = 0x00380004 = 3807876 Bytes ## Start Addr = 0x80100000 

Compare the resulting size with the size of the source file - it must be the same. We memorize it.
Next, erase what we had:

 VoCore> erase linux Erase linux kernel block !! From 0x50000 length 0x7B0000 raspi_erase: offs:50000 len:7b0000 ........................................................................................................................... 

Write your Linux (specify your size!):

 VoCore> cp.linux 380004 current count: 3407876 Copy linux image[3807876 byte] to SPI Flash[0x00050000].... raspi_write: to:50000 len:340004 ..................................................... VoCore> 

If something went wrong and the OS did not boot, then WITHOUT A PANIC, we do it all over again. I got the first time, and what you want.

If successful, the download will succeed:

 U-Boot for VoCore(based on RT5350).. Version: May 30 2014 20:52:36 Press 'x' to console... Booting image at bc050000 . Image Name: MIPS OpenWrt Linux-3.10.36 Created: 2014-07-21 20:50:55 UTC Image Type: MIPS Linux Kernel Image (lzma compressed) Data Size: 982138 Bytes = 959.1 kB Load Address: 80000000 Entry Point: 80000000 Load Kernel: ............... Verifying Checksum ... OK Uncompressing Kernel Image ... OK 


After this achievement, I told my story to my friends. They, in turn, called me a fool and told me that you can restore the settings with the command:

 firstboot 

Source: https://habr.com/ru/post/244213/


All Articles