[Из песочницы] Обновление прошивки VoCore: UART

Недавно нам с друзьями пришло несколько VoCore, которые заказывали летом. Мы сразу же начали их изучать и всячески экспериментировать. В ходе моих попыток настроить одну, система была убита и мини-компьютер больше не загружался. Через несколько минут было найдено несколько страниц, посвященных VoCore, и инструкция по использованию kermit.Чтобы перепрошить сей девайс, нам понадобится преобразователь USB-UART и проводочки, чтобы это всё соединить. На картинке ниже указаны, где находится питание и порт UART:

23ac2c2a39e942609fec0ca7a32ca14e.pngВтыкаем монтажные проводки и загибаем концы, чтобы не не паять. Контакт получается стабильным.

d7c7d63dd19c431f82acde030664e777.jpg

Была такая проблема, что плата видела только 13М RAM вместо положенных 32М. На форуме VoCore посоветовали подключить общий провод к другому контакту GND, но это не помогло. Поэтому у меня питание идет напрямую от USB.

f7e855db671f48d6a85ae1dd719dd06f.jpg

Далее включаем kermit, передаем в него параметры и подключаемся:

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. ---------------------------------------------------- Передергиваем питание вокорки и нажимаем 'x' (по умолчанию у нас есть 1 секунда): U-Boot for VoCore (based on RT5350)… Version: May 30 2014 20:52:36

Press 'x' to console…

VoCore> Переводим вокорку в режим приёма данных: VoCore> loadb ## Ready for binary (kermit) download to 0×80100000 at 57600 bps… Теперь нажимаем Ctrl+\ и затем C, чтобы вернуться в меню kermit. Заливаем прошивку: C-Kermit> send vocore.bin Пока прошивка передаётся, можно пойти попить чайку, у нас есть на это примерно 12 минут…

После того, как прошивка скачалась, снова подключаемся к консоли:

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 = 0×00380004 = 3807876 Bytes ## Start Addr = 0×80100000 Сравниваем полученный размер с размером исходного файла — он должен быть одинаковым. Запоминаем его.Далее стираем, что у нас было: VoCore> erase linux

Erase linux kernel block! From 0×50000 length 0×7B0000 raspi_erase: offs:50000 len:7b0000 … Записываем свой линукс (размер указывайте свой!): VoCore> cp.linux 380004 current count: 3407876

Copy linux image[3807876 byte] to SPI Flash[0×00050000]… raspi_write: to:50000 len:340004 … VoCore> Если что-то пошло не так и ОС не загрузилась, то БЕЗ ПАНИКИ делаем всё заново. У меня получилось с первого раза, чего и вам желаю.При удачном исходе загрузка пройдет успешно:

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 После такого достижения я рассказал свою историю друзьям. Они, в свою очередь, обозвали меня дураком и поведали, что можно восстановить настройки командой:

firstboot

© Habrahabr.ru