Довольно много времени прошло с момента начала разработки девайсов на базе МК. Всё это время девайсы приходилось обновлять классическим для Arduino способом: прошитый бутлоадер после перезагрузки девайса пытается выгребать новую прошивку по UART. Шло время и готовый девайс переехал на положенное под торпедой место, и для того, чтобы его обновить приходилось проделывать следующее упражение: снять часть торпеды над ногами водителя, демонтировать девайс, вытянуть плату из корпуса, поклацать переключатели выбирающие между работой UART и управлением кондиционером, взять ноут со шнурком и залить обновление…
Очевидно, это зае6@ло.
Стало ясно, что нужен бутлоадер с поддержкой карты и обновления с неё. После безуспешной попытки заставить работать 2boots был найден другой — avr_boot. После этого произошло чудо: после перезагрузки девайс ищет на карте файл с названием FIRMWARE.BIN и если он есть — обновляется из него. Правда этот бутлоадер не умеет обновлять девайс по UART, что мне как бы и не надо.
Разумеется, тестовые испытания найденных бутлоадеров я проводил на макетках, и только после этого сделал это:
6 "соплей" на нужные ноги МК и… бутлоадер обновлен.
Теперь я, как белый человек, вставляю карту с обновлением в девайс ничего при этом в машине не разбирая, и не имея с собой ничего кроме uSD-карты, и обновляю девайс.
Прогресс не стоит на месте. УРА, товарищи! :)