Onlangs eens zitten pielen om data uit m'n APS ECU-R te krijgen. Ik weet dat er voor de gewone ECU een arduino oplossing is om de info eruit te krijgen, maar dit werkt niet op de ECU-R.
Gelukkig heb ik wel wat elektronica kennis, dus de schroevendraaier erbij gepakt en de ECU-R eens open geschroefd. Zit een printje in met een WiFi module, een Zigbee module, een USB aansluiting, 2x RJ45 connector en power aansluiting. Klein ARM processortje erin met daarnaast een headertje. Gezien dat soort headertjes meestal iets van UART zijn daar eens een USB <-> COM kabeltje op geknutseld.
Na wat met de instelling pielen kreeg ik data op m'n scherm. Kastje eens uit / aan gezet om te kijken wat er allemaal langs komt, zie ik ineens FTP inlog gegevens langskomen. User, password, ip en poort. Nieuwsgierig als ik ben die inlog eens ingevoerd in FileZilla. Wat schetst mijn verbazing, dit is een user account met complete read en write rechten op de FTP!

.
De verbazing werd nog groter toen ik zag dat deze FTP de firmware files voor ALLE inverters, ECU's etc bevatte!

. Even getest en ik kon gewoon een map aanmaken. In theorie zou iemand dus ook relatief makkelijk aangepaste firmware op de FTP kunnen zetten en zo alle APS producten onbruikbaar kunnen maken. Of juist heel bruikbaar door ze als botnet in te zetten.

. Moet je wel wat programmeerkennis voor hebben, maar die mensen zijn er ook genoeg.
APS maar eens een mailtje gestuurd met de bevindingen. Na een week nog geen reactie. Nog maar eens een mailtje achteraan gestuurd, kreeg ik een vrij compact mailtje terug:
Thank you for bringing this under our attention.
We have shut down the server's access.
For the internal files access, we will update the software for all online ECU's to shut down the access
Even snel gecheckt, kan nog wel inloggen bij de FTP, maar er is verder nits meer te zien. Snap niet hoe zoiets in zo'n product terecht kan komen...
Maar goed, met een zonnige dag nog eens even gekeken wat er nou voor info uitkomt die ik werkelijk nodig heb.
15:53:17.316 tm=4393 dv=32.871094 di=0.355835 op=12 gv=222 curaccgen=0.015939 reactive_power=0.000000 active_power=21.782316 cur_output_energy=0.928456
15:53:17.316 sm=298 dvb=32.871094 dib=0.349121 opb=12 gv=222 curaccgenb=0.015923 reactive_power=0.000000 active_power=21.782316 cur_output_energy=0.928456
ECU pingt elke 5 min alle inverters. De sturen dan braaf alle info retour voor beide panelen als er nog genoeg zon is om de inverters van power te voorzien. Paneel spanning, stroom, totale output power etc etc komt dan langs. Nu nog eens uitzoeken hoe ik dat kan loggen en welke variabele wat is.
Ik hoop alleen niet dat ze nu de hele UART output uit gaan schakelen zodat er geen data meer uit komt...