Mikrokontrolery

Tester elementów elektronicznych na atmega – aktualizacja firmware’u

W mailach i komentarzach kilka razy przewijała się prośba o ten wpis. Chodzi o aktualizację oprogramowania w bardzo przydatnym testerze podzespołów, opartym na mikrokontrolerze atmega. Poniżej przedstawiam kilka możliwości pozyskania nowszego firmware’u, w tym nieco zmodyfikowanego, poprawiającego funkcjonalność.

Krótko o testerze elementów

Budowę testerka opisywałem w 2017 roku tutaj. Był to zestaw do samodzielnego montażu zakupiony na aliexpress. Wersji sprzętowych jest obecnie dostępnych kilkanaście, ja skupię się na posiadanym – nazywam popularnie AY-AT, mega328_color_kit, M328Kit+TFT. Bliźniaczym układem jest GM328A.

Indman z forum EEVblog zebrał w tabeli dostępne wersje klonów testera, wraz z krótkim opisem, plik nosi nazwę TableClonesEN.pdf i jest dostępny tutaj: https://yadi.sk/d/yW8xa5NJgUo5z.

W moim układzie “fabrycznie” zainstalowano zmodyfikowane oprogramowanie autorstwa Karl-Heinz Kübbeler w wersji 1.12k. Atmega328 została zabezpieczona przed odczytem, a fusebity to: hfuse: 0xdf, lfuse: 0xf7, efuse: 0xfc i lock bits ustawiony na 0xfc – czyli nie odczytamy zawartości.

Wsad ten można znaleźć na Githubie https://github.com/kubi48/TransistorTester-source/tree/master/trunk/mega328_color_kit pod nazwą OrigChina.hex i OrigChina.eep.

Ostatnia wersja wydana przez Karla-Heinza Klubber to 1.13k, w powyższym linku znajdują się zarówno źródła, jak i wersje skompilowane pod różne wersje sprzętowe. Od 3 lat firmware nie jest rozwijany:

Tester AY-AT i wgrywanie gotowego firmware’u z repozytorium blurpy

Użytkownik Githuba – blurpy – udostępnił w swoim repo skompilowaną wersję oprogramowania którą rozwija Markus Reschke. Można tam znaleźć zarówno wersję podstawową jak i zmodyfikowaną – do testera z kilkoma modami zwiększającymi dokładność pomiarów.

Strona główna repo to: https://github.com/blurpy/transistor-tester/tree/master. Jest tam szczegółowy opis modyfikacji hardware, frmware’u. jak i procesu wgrywania. Udostępniono również wersję “chińską” 1.12k, dostarczaną z testerem.

Tutaj https://github.com/blurpy/transistor-tester/tree/master/firmware/1.42m/unmodified są pliki z wsadem do flasha i eepromu atmegi 328 do stockowej wersji testera. Do wgrywania softu mniej wprawnym użytkownikom polecam graficzny AVRDUDESS pod Windows. Najprostszym i najwygodniejszym programatorem będzie USBasp, chiński gotowiec czy zrobiony samodzielnie. By wygodnie zaprogramować mikrokontroler, można dolutować goldpiny od strony druku (zdjęcie z repo blurpy):

Lub tak jak ja, wykorzystać mają płytkę testową:

Do AVRDUDESS należy załadować pliki ComponentTester.hex oraz ComponentTester.epp, ustawić fusebity na fuses_lo =0xf7, fuses_hi=0xd9, fuses_ext=0xfc, lock_byte=0xff. Okno programu powinno wyglądać jak niżej:

Po przełożeniu atmegi 328 do testera i wciśnięciu impulsatora, układ ożył :):

Wykonałem kilka testowych pomiarów:

Obecnie dostępna wersja to dosyć wiekowa 1.42m, a najnowsza na tą chwilę wydana przez Markusa Reschke to 1.51m. Także szukamy dalej czegoś nowszego.

Oprogramowanie TTester od Indmana

Wspomniany już wcześniej Indman udostępnił olbrzymią ilość informacji nt. klonów sprzętowych testera ze zdjęciami, plikami pomocy. Od jakiegoś czasu w jego archiwum nie ma już niestety skompilowanych wsadów. Można je znaleźć na forach, na których się udziela, tj. https://vrtp.ru, https://www.eevblog.com/forum, https://4pda.to. Na tym ostatnim udało mi się dokopać do kompilacji wersji 1.45m. Link do paczki: https://4pda.to/forum/index.php?showtopic=948444&st=2360#entry114211498. Programowanie wygląda jak wyżej, czyli okno AVRDUDESS będzie wyglądać tak:

Po wgraniu tester ożył:

I ekrany z kilku testowych pomiarów:

Trzeba przyznać, że graficznie ten firmware jest bardzo dopracowany. Gruba, czytelna czcionka, ładnie dobrane kolory i wizualnie przyjemny układ mierzonych wartości. Mi się podoba. Indmam ma bardzo duży wkład w rozwój oprogramowania, zgłasza błędy i usprawnienia, które implementuje developer Markus Reschke.

Component Tester – kompilacja m-firmware

Chcąc mieć najświeższe oprogramowanie w testerze elementów elektronicznych, najprawdopodobniej trzeba je skompilować samemu. Deweloper Markus Reschke udostępnia wszystkie pliki źródłowe na swoim githubie: https://github.com/madires/Transistortester-Warehouse.

Wśród wielu pliku, znajduje się tam bardzo szczegółowa instrukcja, dotycząca funkcji testera, jak i kompilacji i wgrywania firmware’u. Folder z plikami pomocy: https://github.com/madires/Transistortester-Warehouse/tree/master/Documentation/English.

Kompilację można przeprowadzić zarówno pod Windows, instalując i konfigurując uprzednio WinAVR Toolchain, jak i w naturalnym środowisku, czyli pod Linuksem. Przed utworzeniem firmware,u, koniecznie trzeba wyedytować 3 pliki – Makefile, gdzie podajemy typ mikrokontrolera, jego taktowanie, model programatora. Plik config.h, gdzie podajemy właściwości sprzętowe (np. enkoder), funkcje oprogramowania (co można zmierzyć i przetestować), parametry interfejsu użytkownika (język, wygląd). Plik config_328.h, gdzie podajemy typ wyświetlacza, jego podłączenie oraz pozostałe parametry związane z portami. Ustawienia dla poszczególnych testerów można znaleźć w pliku Clones.

Większość ustawień sprowadza się do odkomentowania lub zakomentowania fragmentu kodu, zmiany portu itp. Opcjonalnie w pliku colors.h można ustawić sobie kolory w interfejsie użytkownika.

Ustawień jest sporo, ja wzorowałem się na plikach config.h i config_328.h udostępnionych przez Indmana. Od siebie ustawiłem język polski, dodałem informację o kompilacji na ekranie startowym i zmieniłem nieco kolory czcionek poszczególnych pozycji menu.

Kompilacja sprowadza się do wykonania polecenia make w folderze z plikami źródłowymi:

Sztuką jest zmieścić jak najwięcej opcji przy zachowaniu maksymalnego rozmiaru pojemności flasha. Duże znaczenie ma wybrana czcionka i znaki graficzne. Nie robiłem optymalizacji i musiałem zrezygnować np. z testowania czujników DHT.

Wgrywanie firmware’u do mikrokontrolera załatwia komenda make upload, jeśli mamy poprawnie skonfigurowany programator, pliki hex i eep zostaną załadowane odpowienio do flasha i eepromu:

Na koniec ustawienie fusebitów, polecenie make fuses:

Pierwsze uruchomienie i…:

Tester żyje. Wydaje się, że wszystko działa prawidłowo. Zrzuty z kilku pomiarów:

Udostępniam pliki wynikowe do flasha i eepromu tutaj: Component Tester 1.51m. Wsad pasuje do testera jak na zdjęciach, z kolorowym ekranem TFT i kwarcem 8MHz. Fuse bity są identyczne jak w oprogramowaniu kompilowanym przez blurpy czy Indmana. Do programowania można wykorzystać AVRDUDESS. Przydatne mogą być wcześniejsze screeny z ustawieniami.

Podsumowanie

Tester podzespołów to bardzo przydatne urządzenie. Ogrom pracy włożony przez społeczność w rozwój oprogramowania zaprocentował w postaci choćby dużej popularności urządzenia. Dla mnie jest to podstawowy “przyrząd mierniczy”, znacznie wygodniejszy niż tradycyjne multimetry. Do sprawdzenia diod, tranzystorów czy kondensatorów jest po prostu idealny. Nie jest to sprzęt o dużej dokładności, ale uzyskiwane wyniki są powtarzalne i pozwalają jednoznacznie określić przydatność i sprawność badanych elementów elektronicznych. Jeśli ktoś posiada linki do dopracowanych wersji oprogramowania, to zapraszam do podzielenia się w komentarzach.

Wojtek

Ostatnie posty

Tani moduł IoT z kamerką ESP32 CAM – pierwsze uruchomienie

Mega tanie, bezprzewodowe moduły Internet of Things na dobre zadomowiły się w naszych sieciach. Od…

14 godzin temu

Aktualizacja oprogramowania w stacji lutowniczej AiXun T3A

Pewnie nie każdy posiadacz tytułowej stacji lutowniczej wie, że posiada ona możliwość aktualizacji firmware'u. Producent…

2 tygodnie temu

Programator USB AVR ISP z Arduino Nano

Jakiś czas temu, przeglądając Aliexpress natknąłem się na ciekawy shield do Arduino Nano. Według opisu…

3 tygodnie temu

Wzmacniacz słuchawkowy Lovely Cube – popularny klon Lehmanna

Dziś tematyka audio, a nawet audiofilska. Uznany wzmacniacz słuchawkowy Lehmann Black Cube Linear o dość…

2 miesiące temu

Podsumowanie 2023 roku

Tradycyjnie w styczniu, publikuję podsumowanie minionego roku na stronie grylewicz.pl. Poniżej trochę liczb, lista najpopularniejszych…

3 miesiące temu

Naprawa zapuszczonego radia Makita DMR116 – brak dźwięku

W dzisiejszym wpisie przedstawię proces odgruzowywania radia Makita DMR116. Nie da się ukryć, że urządzenie…

6 miesięcy temu