HomeMade

Pełna wersja: ATS-20+ - problem z wgraniem nowego softu
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Witam!
Posiadam już dłuższy czas ten odbiornik i wadą jest minimalny krok 1kHz.Wadę tą usuwa nowy soft,więc chciałem go wgrać i tu pojawia się problem..Komputer nie widzi go w menedżerze(wgrany sterownik CH340).Jest w nim Arduino Nano.Inny Arduino Nano który posiadam jest widoczny.W internecie wyczytałem,że ktoś miał podobny problem i okazało się,że port USB w Arduino był uszkodzony.
Czy mogę w grać nowy soft za pomocą:
1.Arduino Builder
2. lub za pomoca AVRDUDESS 2.17 jak to zalecają
na nowy moduł arduino i zamienić go z tym w odbiorniku.
Może jest inny sposób,aby to rozwiązać.
Liczę na Waszą pomoc i z góry dziękuję.
Który firmware masz zamiar wgrać? Bo jeśli ten:
https://github.com/diqezit/ats20_ats_ex
to ma on wersję "with bootloader", którą wgrywa się przez złącze ISP programatorem np. USBasp. CH340 może sobie być upalony...
Chciałem wgrać ten soft :
https://github.com/goshante/ats20_ats_ex
ale komputer już na początku nie widzi go w menedżerze,więc dalsze próby nic nie dają.
Czy można wgrać nowy soft przez złacze ISP(są one na module ArduinoNano i mam programator z wyjściami ISP) ,czy potrzebny jest do tego "bootloader"?
Stąd moja prośba jak sobie z tym poradzić.Prawdopodobnie moje pytania są banalne,ale nie jestem najmocniejszy w tym temacie.
Może mam uszkodzone wejście mikrousb na module(ktoś pisał na forum o takim przypadku).
Nie ma banalnych pytań, mogą być tylko głupawe odpowiedzi Wink. Ale spróbuję...

Jeżeli masz uszkodzony port USB w Arduino, to nadal możesz wgrywać oprogramowanie do procesora przez ISP. Jest tylko jeden problem - bootloader...

Bootloader, to mały program wgrywany do procesora pod adres, od którego procesor rozpoczyna pracę po resecie. Jego zadaniem jest nasłuchiwanie przez chwilę, czy na jakimś porcie ( w Arduino nano jest to uart0, do którego podłączony jest konwerter USB/uart) pojawia się jakaś komunikacja próbująca przesłać dane zawierające program użytkowy. Jeśli jest, to bootloader programuje pamięć procesora tymi danymi (oczywiście nie zamazując nimi obszaru, w którym sam się znajduje), a następnie przekazuje sterowanie do tego programu. Jeśli nie ma takiej komunikacji, to po chwili bootloader uruchamia program, który był zapewne wgrany wcześniej.

Program musi więc być tak skompilowany, by działał w obszarze pamięci powyżej bootloadera. Ten sam program może być skompilowany tak, by działał od adresu początku pamięci - wtedy odbywamy się bez bootloadera.

Bootloader ułatwia życie, bo umożliwia wgrywanie fw przez wygodne w użyciu porty, ale pożera część pamięci programu.

Soft, który chcesz wgrać wymaga bootloadera, więc po standardowym wgraniu przez ISP nie uruchomi się, a przy tym zamaże bootloader. Chyba, że znamy adres, pod którym należy go wgrać i można ten adres ustawić w programatorze. Musiałbym to sprawdzić, bo nie pamiętam. Spróbuję dziś wieczorem to sprawdzić. Soft w wersji, którą Ci podrzucilem z tego, co zrozumiałem z opisu zawiera bootloader, więc można go śmiało wgrywać przez ISP - to też mogę sprawdzić.

A jednak jest trochę inaczej - firmware od Goshante zawiera też bootloader. Można go więc wgrać za pomocą programatora USBasp. Sprawdziłem na moim radiu. Jedyne, co się stało, to u mnie w nano bootloader działał na 115200 (był widocznie w nowszej wersji), a po wgraniu pliku ATS_EX_v1.18.hex uległ wymianie na starszy i teraz działa na 57600. U ciebie nie ma to znaczenia, bo i tak CH340 nie działa.

Mam jeszcze dwie uwagi:

- Istnieje kilka wersji tego radia. M. in. dzielnik do pomiaru napięcia baterii może być podłączony do ADC A1, A2 albo może go nie być wcale. Jeśli radio po wgraniu ATS_EX_v1.18.hex pokazuje stan baterii 0%, spróbuj wgrać ATS_EX_v1.18_A1.hex. Firmware od diqezit ma wybór ADC w menu (przez ISP wgrałem ATS_EX.ino.with_bootloader.hex w wersji 6.6 bez obsługi RDS w radiu FM , za to z listą ulubionych częstotliwości i działa) .

- Są doniesienia, że wskutek błędu projektowego w układzie zasilania (nie wiem, czy we wszystkich wersjach, u mnie tak jest) po podpięciu przewodu miniUSB do PC na linii 3v3, z której zasilany jest np. SI4732 pojawia się napięcie 4.2V lub więcej, co może uszkodzić układy przystosowane do 3.3V. Z tego powodu zaleca się odcięcie linii 5V w kablu USB i zasilanie radia z akumulatora. Tak samo jest przy podpięciu programatora do złącza ISP. Powinno się odciąć 5V. Moje radio akurat przeżyło to 4.2V, ale nigdy nie wiadomo...
Dziękuję za szczegółowe informacje.Zanim się za to wezmę to chciałbym się dowiedzieć czy jest taka możliwość jeżeli bym wylutował z radyjka oryginalny moduł Arduino(aby móc do czego wrócić) i w to miejsce (mam sprzęt do tej czynności) wlutował drugi z nowym softem.
PS.Masz rację,tam gdzie jest 3,3V po podłączeniu do miniUSB kabelka pojawia się 5V
Oczywiście, że możesz wlutować nowy moduł - mnie by się nie chciało walczyć z lasem goldpinów, jeśli nadal działa procesor i istnieje ISP Wink.
Wielkie dzięki dla SP5LU za szczegółowe informacje.Wgrałem podany soft przez ISP
i wszystkie opcje OK,oprócz funkcji MODE-było AM,LSB i CW,brak było USB.Jak zacząłem kombinować to zablokowałem arduino.Wymieniłem ja na nowe,wgrałem soft goshanta i jest OK.Jeśli chodzi o wskaźnik stanu baterii to pokazywał 0%.Po wykonaniu dzielnika w postaci 2 rezystorów 10k między 5V( a dokładnie około 4,1V) a GND i podaniu napięcia z dzielnika ( około 2V) na pin A2 arduino pokazało się 98%. Napięcie 5V można wziąć z szeregu pinów pustych:5V;3.3V;GND;SDA;SCL;REST
Super, że udało Ci się uruchomić radio!
Dziwna sprawa z tym brakiem USB... na jakim sofcie? Może jest jakaś blokada w zależności od pasma... sprawdzę sobie wieczorem i wgram nowego diqezita Wink.

edit:Prawdziwi twardziele nie czytają instrukcji:
"2.1. SSB Mode Operation
Enter SSB Mode: Use the MODE button until LSB or USB is displayed.
Sideband Selection: Press and hold the BW button for 1-2 seconds to switch between LSB and USB."
Dziękuję za wyjaśnienie problemu.Jak sięgam pamięcią pierwszym razem po zaprogramowaniu przez ISP było USB,potem zacząłem sprawdzać całe menu i pojawiło mi się LSB,ale znikło USB, i "zgłupiałem".Po Twoim poście wszystko mi się wyjaśniło.Nie wpadłem na pomysł,że w menu LSB jest podmenu na przejście na USB.Masz rację,że trzeba czytać "całe zdanie do końca"(człowiek się uczy całe życie).Jeszcze raz stokrotne dzięki.
Przekierowanie