Czat

2024-01-26, 14:09:11
admin: forum pod tym linkiem: https://k5.2je.eu/index.php?action=forum

2024-01-26, 13:55:37
admin: Witam


Welcome to Quansheng UV-K5 Modding Fan Forum. Please login or sign up.

Paź 18, 2024, 16:30

Login with username, password and session length

Recent

Wgrywanie i odczyt firmware w ats20+ przy pomocy kabla miniUSB i programu AV

Zaczęty przez admin, Sie 29, 2024, 10:39

Poprzedni wątek - Następny wątek

admin

Dziś opiszę sposób na wgrywanie lub odczyt firmware przy użyciu zwykłego kabelka mini USB i złącza dostępnego z tyłu radia. A więc coś dla osób które boją się rozkręcać radio i podłączać do pinów w arduino lub nie mogą tego zrobić z jakiś powodów sprzętowych. Wadą tego rozwiązania jest, że nie zawsze zadziała, zależy od firmware który mamy wgrany prawdopodobnie przez bootloadera i czasami muszę wgrywać przez kontroler asp. Standardowy fabryczny firmware powinien być obsługiwany, goshante również. 

Co potrzebujemy:
Dowolny kabel mini usb z transmisją danych (np. ze starej nawigacji, zestawu z arduino, aparatu itp.) 

Podłączamy kabel mini usb do radia oraz komputera.
Wchodzimy w manager urządzeń Windowsa by sprawdzić czy kabel jest widoczny w systemie i czy został przypisany port COM.
Rozwijamy sekcje porty com i lpt.
Szukamy urządzenia serial ch340.
W moim przypadku przypisany został COM25
miniusb-com.jpg

Sprawa podłączenia załatwiona. Czas na program AVRDUDESS. Jak nie mamy to pobieramy:
https://github.com/ZakKemble/AVRDUDESS/releases/tag/v2.17

- Uruchamiamy program AVRDUDESS
- Wybieramy z rozwijanej listy programator, w przypadku kabla mini usb i arduino nano ma to być: Ardiuno for bootloader using STK500 v1 procotol
- ustawiamy przepływność czy prędkość połączenia 57600 (w moim przypadku 115200 też działało)
avrdudess-config-com-miniusb.png


Niezbędne już mamy więc sprawdźmy komunikację, obok mamy pola mikrokontroler wciskamy przycisk wykryj Radio powinno się zrestartować i pojawić wynik.

>>>: avrdude.exe -c arduino -P COM25 -b 57600 -p m8
Wykryto: 1e950f = ATmega328P
ATS_EX_v1.18.hex: 32 658 / 32 768 Bytes (99,66%)
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~

Jak wszystko gotowe możemy zacząć używać programu.
Na początek możemy zapisać kopię posiadanego oprogramowania.
W polu Flash zaznaczamy opcję Read czyli czytaj
klikamy przycisk z trzema kropkami i wymyślamy jakąś nazwę dla pliku w którym zostanie zapisany soft, po tej czynności ścieżka do pliku sama się uzupełni.
Wybieramy format pliku, ja używam Intel Hex.
Klikamy na Start i po restarcie radia procedura odczytu powinna się rozpocząć.
Przykładowy log:
>>>: avrdude.exe -c arduino -p m328p -P COM25 -b 57600 -U flash:r:"C:\Users\Admin\Downloads\kopia-softu.hex":i
avrdude: AVR device initialized and ready to accept instructions
avrdude: device signature = 0x1e950f (probably m328p)

avrdude: processing -U flash:r:C:\Users\Admin\Downloads\kopia-softu.hex:i
avrdude: reading flash memory ...
Reading | ################################################## | 100% 7.05s
avrdude: writing output file C:\Users\Admin\Downloads\kopia-softu.hex

avrdude done.  Thank you.

Jeżeli potrzebujemy kopii epromu to analogiczne postępujemy w polu EPROM

Teraz główny gwóźdź programu wgrywamy nowy firmware.
Zrobimy to na przykładzie najbardziej polecanego softu goshante.
Pobieramy plik hex z:
https://github.com/goshante/ats20_ats_ex/releases/tag/v1.18
W programie avrdudess w polu flash zaznaczamy opcję Write czyli zapisz.
klikamy przycisk z trzema kropkami i wskazujemy pobrany plik z softem, po tej czynności ścieżka do pliku sama się uzupełni.
Format można ustawić na Auto(tylko zapis).
Klikamy przycisk Start i po restarcie firmware powinno zostać wgrane.
Log będzie wyglądał tak:
avrdudess-config-com-miniusb.png

Jeżeli to nie działa użyj alternatywnej metody z programatorem ICSP
https://k5.2je.eu/index.php?topic=81.0
Metoda ta zadziała też w przypadku uceglenia lub uszkodzenia bootloadera.