-
Data: 2018-02-12 20:26:35
Temat: Re: Protokół dla bootloadera
Od: Marek <f...@f...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Mon, 12 Feb 2018 18:44:27 +0100, Bool <n...@n...com> wrote:
> Możesz skrótowo napisać jak robiłeś to w przypadku z modemem GSM?
Mcu przez stos tcpip modemu GSM pobiera sobie binarny plik obrazu
firmware'u z serwera www. Stos większości modemów gsm umożliwia
prostą komunikacje przez polecenia AT. Modem zestawia połączenie a
mcu komendami AT wymienia sobie dane , można kawałeczkami pobrać
sobie dowolnie duży plik. Kod pobierający nowy soft nie jest częścią
bootloadera (bo byłby za duży) ale częścią softu użytkowego. W
związku z tym, że soft użytkowy nie może się sam nadpisać (no, byłoby
to klopotliwe, szczególnie gdyby np. połączenie zostało przerwane) to
tymczasowo zapisuje pobrany obraz firmware'u w wolnym za sobą
obszarze flash mcu (z pewnym marginesem) . Po wygraniu, robi reset po
którym startuje bootloader, który sprawdza czy pod odpowiednim
adresem jest obraz, jeśli jest kopiuje go pod docelowy adres
nadpisując poprzedni firmware (i usuwa znacznik w tymczasowym obrazie
by po kolejnym uruchomieniu nie kopiować ponownie). Tak w skrócie.
Pominąłem takie szczegóły jak, to że pobierany firmware jest
zaszyfrowany (klucz ma tylko bootloader i on deszyfruje dopiero przy
docelowym nadpisywaniu), w trakcie pierwszego kopiowania do flash pod
adres tymczasowy jest sprawdzane crc obrazu, by nie dopuścić do
uruchomienia nieprawidlowego kodu itp.
Aktualizacja ok 90kB obrazu pobieranego 256 bajtowymi paczkami po
9600bps uarcie mcu-modem trwa ok 4 min. Sama aktualizacja jest
inicjowana smsem, komunikacja zwrotna w przypadku problemów z
pobraniem pliku itp też jest smsem.
Jeśli chodzi o szczegóły komunikacji to już to jest zależne od
implementacji obsługi stosu w danym modemie, ja to ćwiczyłem na
modułach G510.
--
Marek
Następne wpisy z tego wątku
- 12.02.18 20:33 Marek
- 13.02.18 09:29 Piotr Gałka
- 13.02.18 10:08 Marek
- 13.02.18 14:43 Bool
- 13.02.18 16:34 Piotr Gałka
- 14.02.18 08:47 jacek pozniak
- 14.02.18 09:21 jacek pozniak
- 14.02.18 09:34 Marek
- 14.02.18 09:46 Marek
- 14.02.18 10:21 J.F.
- 14.02.18 10:52 cezar
- 14.02.18 12:59 jacek pozniak
- 14.02.18 15:01 Marek
- 14.02.18 16:05 Marek
- 14.02.18 18:17 Waldemar
Najnowsze wątki z tej grupy
- Disk on Module, czym to odczytać?
- Pasta ochronna? Lutownicza?
- zagadka pneumatyczna
- Klip testowy, jak sie to używa
- Jak sie smazy elektronike z odleglosci kilkuset metrów?
- William Shockley, co-inventor of the transistor
- Gazowy kocioł CO regulacja cyklingu i regulacja pogodowa
- Zamek elektroniczny
- szablon do pasty DIY
- Głośnik potrzebny
- Silikonowy przewód ekranowany
- Wtyk bananowy ekranowany
- Co może być gorsze od pożaru elektryka?
- daltonizm
- Mały Linux
Najnowsze wątki
- 2025-11-18 Warszawa => DevOps Engineer <=
- 2025-11-18 Warszawa => Konsultant ERP Microsoft Dynamics 365 Commerce <=
- 2025-11-18 Wrocław => Programista React ze znajomością C++ <=
- 2025-11-18 Wrocław => React Developer with knowledge of C++ <=
- 2025-11-18 Warszawa => Senior Algorithm Developer (Java/Kotlin) <=
- 2025-11-18 Warszawa => Cloud Engineer <=
- 2025-11-18 Nowe przepisy dotyczące pieszych
- 2025-11-18 Chiny => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu <
- 2025-11-18 Warszawa => Project Manager (AI and innovation) <=
- 2025-11-18 Warszawa => Project Manager (AI and innovation) <=
- 2025-11-18 Warszawa => Java Developer <=
- 2025-11-18 Warszawa => System Administrator <=
- 2025-11-18 piękne wzruszyłem się
- 2025-11-17 SAFIJAN twierdzi że przyrzeczenie sędziego można składać przed KOMINIARZEM ;-)
- 2025-11-17 Warszawa => International Freight Forwarder <=




Prezenty pod choinkę z drugiej ręki? Polacy wciąż tradycjonalistami