Reverse engineering ToolkitRC P200

Cel jest prosty: zrozumieć elektronikę sterującą trzech kompaktowych zasilaczy P200 i przekształcić je w sterowany komputerowo, trzykanałowy zasilacz laboratoryjny.

To żywy notatnik inżynierski. Potwierdzone pomiary są oddzielane od hipotez roboczych, a wnioski zmieniam, gdy nowe dane im przeczą.

Dlaczego ten zasilacz?

P200 jest mały, może być zasilany z magistrali 24 V DC, ma programowalne główne wyjście oraz przydatny port USB-C z szybkim ładowaniem. Trzy sztuki mogą obsłużyć większość codziennych testów o małym prądzie, pozostawiając większy RIDEN do sporadycznych obciążeń dużej mocy.

Identyfikacja sprzętu

Badany egzemplarz to oryginalny P200, a nie późniejszy P200 V2. Obudowa ma około 84 mm długości, co odpowiada wersji V1. To istotne, ponieważ V1 i V2 korzystają z innych pakietów firmware.

ModelToolkitRC P200 V1
Główny MCUGD32F103CBT6 zaobserwowany na PCB
Interfejs aktualizacjiUSB Mass Storage
FirmwareToolkitRC P200 V1.05-STN · app.upg

USB: przydatne, ale nie do zdalnego sterowania

Po podłączeniu P200 do Linuxa pojawia się pojedynczy interfejs USB: STMicroelectronics 0483:5820, klasa 8 Mass Storage, SCSI Bulk-Only. System montuje niewielki wolumin FAT12 o nazwie Toolkit. Nie pojawia się CDC serial, HID ani dodatkowy interfejs producenta.

Wolumin jest więc przydatny do aktualizacji firmware, ale nie daje oczywistej, udokumentowanej drogi do normalnego sterowania z komputera.

Pakiet firmware

Oficjalny pakiet V1.05-STN zawiera obraz app.upg o rozmiarze 86 548 bajtów. Linux rozpoznaje na początku tablicę wektorów Cortex-M, w tym początkowy wskaźnik stosu 0x200013F0 oraz reset vector 0x08009101.

W obrazie znajdują się czytelne stringi dotyczące napięcia, prądu i protokołów ładowania USB. Pierwsze założenie, że offsety pliku odpowiadają bezpośrednio adresom wykonywalnego flash, nie potwierdziło się podczas analizy. Traktujemy więc format firmware jako nadal nierozwiązany problem.

Dostęp do PCB zmienia plan

Po otwarciu urządzenia znaleźliśmy opisane testpointy oraz złącze debug. Płyta udostępnia sygnały 3,3 V, reset, clock/data i inne punkty kontrolne. GD32F103 obsługuje SWD, dlatego jednym z kolejnych kroków będzie połączenie debuggera w trybie tylko do odczytu.

Inna grupa testpointów może udostępniać niskonapięciową magistralę sterującą w pobliżu sekcji mocy. Najpierw zmierzymy napięcia spoczynkowe, a następnie przechwycimy ruch analizatorem logicznym podczas zmian napięcia, limitu prądu i stanu wyjścia.

Następne pomiary

Cel końcowy

Jeżeli bezpiecznie odtworzymy ścieżkę sterowania, płytki wyświetlaczy mogą przestać być potrzebne. Mały kontroler mógłby udostępniać napięcie, prąd, stan wyjścia i telemetrię hostowi Linux, a trzy stopnie mocy P200 korzystałyby ze wspólnego źródła 24 V jako niezależne kanały.

Docelowa architektura: zasilacz 24 V → trzy kanały P200 → kontroler klasy Pico → dashboard Linux, z RIDEN-em zachowanym jako kanał dużej mocy.