NEWS
Test Adapter apsystems-ecu v0.2.x GitHub
-
@peter_n
verständlich -
Erkenntnisse:
-
Die DS3 werden mit InverterType YC600 in der GetRealTimeData-Response kodiert. Deshalb wurden auch drei YC600 Inverter angelegt (hat mich sehr gewundert). Die angezeigten Inverterdaten sind auch halbwegs plausibel. Auffällig sind "ac voltage module 1/2" mit ~240V. Gehe davon aus, dass das nicht passt.
Könnte sein, dass man zukünftig die ersten beiden Stellen der Inverter-ID (70) zur Unterscheidung benutzen könnte. Das müsste allerdings von weiteren DS3 Besitzern bestätigt werden -
Das eigentliche Problem ist die z.T. fehlende Response der ECU mit nachfolgendem Schliessen der TCP-Verbindung durch die ECU. Ob das sporatisch oder im Zusammenhang mit bestimmten Services passiert ist noch unklar. Könnte sein, dass die ECU die Anzahl Services/Zeiteinheit begrenzt. Habe etwas ähnliches bei der Adapterentwicklung bemerkt.
-
Die ECU-FW: ECU_R_PRO_2.0.... ist hoffentlich hinsichtlich der Services kompatible zur ECU_R_1.2....
Nächste Schritte:
-
Frage: Du hast doch DS3 und keine YC600 (sorry )
-
Test: Stelle in der Konfig den Parameter "ECU interval [sec] for polling (10..900)" mal von 10 auf 120. 10 mach eh nicht viel Sinn, da die ECU-Inverterkommunikation (wahrscheinlich auch bei ECU-FW ECU_R_PRO_2.0.... ) mit einem 300sec Zyklus läuft.
-
Werde gelegentlich ein Testversion zum Eingrenzen des Problems bereitstellen. Wird aber ein paar Tage dauern.
-
-
Hallo zusammen,
nochmal an dieser Stelle vielen Dank für den tollen Adapter Peter!
@cwoltz said in Test Adapter apsystems-ecu v0.2.x GitHub:
Hallo,
ich habe den Adapter installiert und eingerichtet (V0.2.4). Ich verwende eine ECU R und 3 DS3 mit je zwei Modulen.Es werden aber nur einmal die Werte aktualisiert. Danach nicht mehr. Erst wenn ich den Adapter manuell neu starte wird einmal aktualisiert. Hat hier einer ne Idee woran das liegt?
Die einzelnen Inverter werden als Objekte angelegt und die Daten sind passend für den Moment der Abfrage.Ich habe ein ähnliches Verhalten.
Ein System mit einem QS1 an einem ECU-B funktioniert einwandfrei.
Ein zweites System mit einem ECU-R (2x DS3-S & 4x QS1) macht wie bei @cwoltz Probleme.Der Adapter wechselt nach einigen Sekunden bei "Verbindung" auf rot. Er wird automatisiert alle 5min neu gestartet.
Die WR werden gefunden und aufgelistet, die Daten werden aber nicht aktualisiert. Nur die Daten der ECU-R werden an ioBroker übertragen (zB "last_system_power").Ich habe ein Issue erstellt.
Da andere diesen Adapter mit einem ECU-R erfolgreich betreiben, könnte ich mir vorstellen, dass es an den DS3-S liegt.
Habe mir probeweise mal HomeAssistant installiert. Dort gibt es einen ebenfalls einen APSystem "Adapter". Der funktioniert mit der ECU-R problemlos. Allerdings würde ich gern auf HomeAssistant verzichten, bin mit ioBroker extrem zufrieden.
Güße,
Sebastian -
@peter_n
Die V0.2.4 funktioniert in meiner Konfiguration (ECU-R + 4xYC600) einschließlich poll_always wie gewünscht. -
@stundenblume
Ich vermute, dass das Problem in der ECU liegt, und bevorzugt bei umfangreicheren Systemen auftritt.
Der DS3 schein aus Protokollsicht zum YC600 kompatible zu sein. Wird deshalb auch z.Z. als YC600xxxx erstellt.Bitte mal das Polling auf 120sec setzen und einen Log über ca. 3*120 sec erstellen.
Wenn das ganze bei HomeAssistant funktioniert wird es auch bei iobroker möglich sein. Bin dran!
Die gute Nachricht ist, dass der DS3 wohl funktioniert und auch eine ECU-B prinzipiel unterstützt wird.
-
Sorry bekomme keine Benachrichtigung wenn hier geantwortet wird. Hoffe der Log macht auch etwas Sinn wenn die WR nicht an sind.
Bisher lief der Adapter auf 300Sekunden, aber gleichzeitig mit einem geplanten Neustart.
Folgend der Log ohne aktive WR.apsystems-ecu.0 2022-03-24 20:16:13.967 debug Ecu.trNextCycle() 120sec delay apsystems-ecu.0 2022-03-24 20:16:13.967 debug Ecu.ecuStateMachine(evDisconnected) stWaitForDisconnected -> stWaitForNextCycle apsystems-ecu.0 2022-03-24 20:16:13.966 debug Ecu.trDisconnect() - done apsystems-ecu.0 2022-03-24 20:16:13.966 error Ecu.ecuStateMachine() +++ socket error apsystems-ecu.0 2022-03-24 20:16:13.966 debug Ecu.ecuStateMachine(evSocketError) stWaitForResponse -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:16:13.966 debug Ecu.reqService(ENERGY_OF_WMY req:APS1100390004216000xxxxxxEND00END) apsystems-ecu.0 2022-03-24 20:16:13.965 debug Ecu.trServiceSM(evRepeatService) stEnergyOfWeek->stEnergyOfWeek apsystems-ecu.0 2022-03-24 20:16:13.965 warn Ecu.ecuStateMachine() - no response from Ecu, repeat service ... apsystems-ecu.0 2022-03-24 20:16:13.965 debug Ecu.ecuStateMachine(evResponseTimeout) stWaitForResponse -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:16:13.965 warn rspWatchDog +++ timeout apsystems-ecu.0 2022-03-24 20:16:10.969 info state apsystems-ecu.0.ecu.power_of_day_date changed: 2022-03-24 (ack = true) apsystems-ecu.0 2022-03-24 20:16:10.969 info state apsystems-ecu.0.ecu.cmd_power_of_day changed: false (ack = true) apsystems-ecu.0 2022-03-24 20:16:10.965 debug Ecu.trServiceSM(evNextService) stPowerOfDay->stEnergyOfWeek apsystems-ecu.0 2022-03-24 20:16:10.965 debug Ecu.reqService(ENERGY_OF_WMY req:APS1100390004216000xxxxxxEND00END) apsystems-ecu.0 2022-03-24 20:16:10.965 debug Ecu.ecuStateMachine(evResponseOk) stWaitForResponse -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:16:10.965 debug Ecu.decodeAndProcessPowerOfDay() - status=00 - done apsystems-ecu.0 2022-03-24 20:16:10.964 debug Ecu.decodeRsp() 344ms - 41,50,53,31,31,30,36,31,38,30,30,30,33,30,30,6,10,0,0,30,30,30,30,30,30,0,0,6,25,0,0,6,30,0,0,6,35,0,0,6,40,0,0,6,45,0,0,6,50,0,9,6,55,0,13,7,0,0,17,7,5,0,1b,7,10,0,20,7,15,0,28,7,20,0,41,7,25,0,4b,7,30,0,55,7,35,0,61,7,40,0,6a,7,45,0,75,7,50,0,84,7,55,0,9c,8,0,0,da,8,5,1,0,8,10,1,4e,8,15,1,8a,8,20,1,b5,8,25,1,f2,8,30,2,17,8,35,2,34,8,40,2,5e,8,45,2,c6,8,50,3,11,8,55,3,41,9,0,3,7b,9,20,3,68,9,25,4,4a,9,30,4,c8,9,35,5,4,9,40,5,29,9,45,5,4d,9,50,5,81,9,55,5,ab,10,0,5,ce,10,5,5,f3,10,10,3,3d,10,15,6,3c,10,20,6,58,10,25,6,6a,10,30,6,7f,10,35,6,90,10,40,6,a1,10,45,6,ad,10,50,6,b7,10,55,6,c7,11,0,6,de,11,5,6,ea,11,10,5,61,11,15,7,7,11,20,7,10,11,25,7,e,11,30,7,12,11,35,7,15,11,40,7,1e,11,45,7,22,11,50,7,32,11,55,7,34,12,0,7,24,12,5,7,36,12,10,7,29,12,15,6,eb,12,20,6,2b,12,25,5,c8,12,30,5,bc,12,35,5,b0,12,40,5,a8,12,45,5,aa,12,50,5,a1,12,55,5,90,13,0,5,84,13,5,5,81,13,10,5,79,13,15,3,78,13,20,4,17,13,25,4,5,13,30,3,f6,13,35,3,ec,13,40,3,e4,13,45,3,d3,13,50,3,c2,13,55,3,a7,14,0,3,2b,14,5,2,7d,14,10,2,22,14,15,2,5d,14,20,2,4a,14,25,1,f9,14,30,2,2d,14,35,2,23,14,40,2,17,14,45,2,2,14,50,2,5,14,55,1,a1,15,0,1,9a,15,5,1,67,15,10,0,f5,15,15,1,16,15,20,0,8f,15,25,0,e5,15,30,1,13,15,35,1,e,15,40,0,a7,15,45,0,ee,15,50,0,c1,15,55,0,7a,16,0,0,f5,16,5,1,1a,16,10,0,f3,16,15,1,0,16,20,0,c7,16,25,0,88,16,30,0,5f,16,35,0,38,16,40,0,54,16,45,0,62,16,50,0,70,16,55,0,52,17,0,0,36,17,5,0,36,17,10,0,37,17,15,0,33,17,20,0,33,17,25,0,35,17,30,0,30,17,35,0,2a,17,40,0,24,17,45,0,1f,17,50,0,1c,17,55,0,18,18,0,0,15,18,5,0,13,18,10,0,11,18,15,0,f,18,20,0,a,18,25,0,2,18,30,0,0,18,35,0,0,18,40,0,0,18,45,0,0,18,50,0,0,45,4e,44 apsystems-ecu.0 2022-03-24 20:16:10.619 debug Ecu.reqService(POWER_OF_DAY req:APS1100390003216000xxxxxxEND20220324END) apsystems-ecu.0 2022-03-24 20:16:10.619 debug Ecu.trServiceSM(evRepeatService) stPowerOfDay->stPowerOfDay apsystems-ecu.0 2022-03-24 20:16:10.619 debug Ecu.ecuStateMachine(evConnected) stWaitForConnect -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:16:10.423 debug Ecu.trConnect() hide=true, ip=192.168.xxx.xxx port=8899 apsystems-ecu.0 2022-03-24 20:16:10.422 debug Ecu.ecuStateMachine(evCycleTimer) stWaitForNextCycle -> stWaitForConnect apsystems-ecu.0 2022-03-24 20:14:10.422 debug Ecu.trNextCycle() 120sec delay apsystems-ecu.0 2022-03-24 20:14:10.422 debug Ecu.ecuStateMachine(evDisconnected) stWaitForDisconnected -> stWaitForNextCycle apsystems-ecu.0 2022-03-24 20:14:10.422 debug Ecu.trDisconnect() - done apsystems-ecu.0 2022-03-24 20:14:10.421 error Ecu.ecuStateMachine() +++ socket error apsystems-ecu.0 2022-03-24 20:14:10.421 debug Ecu.ecuStateMachine(evSocketError) stWaitForResponse -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:14:10.421 debug Ecu.reqService(POWER_OF_DAY req:APS1100390003216000xxxxxxEND20220324END) apsystems-ecu.0 2022-03-24 20:14:10.421 debug Ecu.trServiceSM(evRepeatService) stPowerOfDay->stPowerOfDay apsystems-ecu.0 2022-03-24 20:14:10.421 warn Ecu.ecuStateMachine() - no response from Ecu, repeat service ... apsystems-ecu.0 2022-03-24 20:14:10.420 debug Ecu.ecuStateMachine(evResponseTimeout) stWaitForResponse -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:14:10.420 warn rspWatchDog +++ timeout apsystems-ecu.0 2022-03-24 20:14:07.419 debug Ecu.trServiceSM(evNextService) stInverterSignalLevel->stPowerOfDay apsystems-ecu.0 2022-03-24 20:14:07.419 debug Ecu.reqService(POWER_OF_DAY req:APS1100390003216000xxxxxxEND20220324END) apsystems-ecu.0 2022-03-24 20:14:07.419 debug Ecu.ecuStateMachine(evResponseOk) stWaitForResponse -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:14:07.419 debug Ecu.decodeAndProcessInverterSignalLevel() - status=00 - done apsystems-ecu.0 2022-03-24 20:14:07.418 debug prefix=undefined i=5 isl.inverterId[i]=806000056773 apsystems-ecu.0 2022-03-24 20:14:07.418 debug prefix=undefined i=4 isl.inverterId[i]=806000055796 apsystems-ecu.0 2022-03-24 20:14:07.418 debug prefix=undefined i=3 isl.inverterId[i]=806000055586 apsystems-ecu.0 2022-03-24 20:14:07.418 debug prefix=qs1_806000058312 i=2 isl.inverterId[i]=806000058312 apsystems-ecu.0 2022-03-24 20:14:07.418 debug prefix=yc600_703000014489 i=1 isl.inverterId[i]=703000014489 apsystems-ecu.0 2022-03-24 20:14:07.418 debug prefix=yc600_703000015029 i=0 isl.inverterId[i]=703000015029 apsystems-ecu.0 2022-03-24 20:14:07.417 debug Ecu.decodeRsp() 929ms - 41,50,53,31,31,30,30,36,30,30,30,33,30,30,30,70,30,0,1,30,30,30,30,30,30,1,44,89,0,80,60,0,5,83,12,0,80,60,0,5,55,86,0,80,60,0,5,57,96,0,80,60,0,5,67,73,0,45,4e,44 apsystems-ecu.0 2022-03-24 20:14:06.488 debug Ecu.reqService(INVERTER_SIGNAL_LEVEL req:APS1100280030216000xxxxxxEND) apsystems-ecu.0 2022-03-24 20:14:06.488 debug Ecu.trServiceSM(evRepeatService) stInverterSignalLevel->stInverterSignalLevel apsystems-ecu.0 2022-03-24 20:14:06.488 debug Ecu.ecuStateMachine(evConnected) stWaitForConnect -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:14:06.189 debug Ecu.trConnect() hide=true, ip=192.168.xxx.xxx port=8899 apsystems-ecu.0 2022-03-24 20:14:06.189 debug Ecu.ecuStateMachine(evCycleTimer) stWaitForNextCycle -> stWaitForConnect apsystems-ecu.0 2022-03-24 20:12:06.188 debug Ecu.trNextCycle() 120sec delay apsystems-ecu.0 2022-03-24 20:12:06.188 debug Ecu.ecuStateMachine(evDisconnected) stWaitForDisconnected -> stWaitForNextCycle apsystems-ecu.0 2022-03-24 20:12:06.188 debug Ecu.trDisconnect() - done apsystems-ecu.0 2022-03-24 20:12:06.187 error Ecu.ecuStateMachine() +++ socket error apsystems-ecu.0 2022-03-24 20:12:06.187 debug Ecu.ecuStateMachine(evSocketError) stWaitForResponse -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:12:06.187 debug Ecu.reqService(INVERTER_SIGNAL_LEVEL req:APS1100280030216000xxxxxxEND) apsystems-ecu.0 2022-03-24 20:12:06.187 debug Ecu.trServiceSM(evRepeatService) stInverterSignalLevel->stInverterSignalLevel apsystems-ecu.0 2022-03-24 20:12:06.187 warn Ecu.ecuStateMachine() - no response from Ecu, repeat service ... apsystems-ecu.0 2022-03-24 20:12:06.186 debug Ecu.ecuStateMachine(evResponseTimeout) stWaitForResponse -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:12:06.186 warn rspWatchDog +++ timeout apsystems-ecu.0 2022-03-24 20:12:03.255 debug ecu.createAndSetInverterObjects(qs1,806000058312) - done apsystems-ecu.0 2022-03-24 20:12:03.210 debug ecu.createAndSetInverterObjects(yc600,703000014489) - done apsystems-ecu.0 2022-03-24 20:12:03.203 warn State "apsystems-ecu.0.yc600_703000014489.ac_voltage2" has no existing object, this might lead to an error in future versions apsystems-ecu.0 2022-03-24 20:12:03.203 warn State "apsystems-ecu.0.yc600_703000014489.ac_voltage1" has no existing object, this might lead to an error in future versions apsystems-ecu.0 2022-03-24 20:12:03.202 debug ecu.createAndSetInverterObjects(yc600,703000015029) - done apsystems-ecu.0 2022-03-24 20:12:03.202 warn State "apsystems-ecu.0.yc600_703000015029.ac_voltage2" has no existing object, this might lead to an error in future versions apsystems-ecu.0 2022-03-24 20:12:03.202 warn State "apsystems-ecu.0.yc600_703000015029.ac_voltage1" has no existing object, this might lead to an error in future versions apsystems-ecu.0 2022-03-24 20:12:03.186 debug Ecu.reqService(INVERTER_SIGNAL_LEVEL req:APS1100280030216000xxxxxxEND) apsystems-ecu.0 2022-03-24 20:12:03.186 debug Ecu.trServiceSM(evNextService) stRealTimeData->stInverterSignalLevel apsystems-ecu.0 2022-03-24 20:12:03.185 debug Ecu.ecuStateMachine(evResponseOk) stWaitForResponse -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:12:03.185 error Ecu.decodeAndProcessRealTimeData() - +++ invalid inverter type:00 apsystems-ecu.0 2022-03-24 20:12:03.184 debug Ecu.decodeRsp() 119ms - 41,50,53,31,31,30,31,33,35,30,30,30,32,30,30,30,31,0,6,30,30,30,30,30,30,46,70,30,0,1,50,29,0,30,31,0,0,0,0,0,0,0,0,0,0,0,0,70,30,0,1,44,89,0,30,31,0,0,0,0,0,0,0,0,0,0,0,0,80,60,0,5,83,12,0,30,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,60,0,5,55,86,0,30,30,80,60,0,5,57,96,0,30,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,60,0,5,67,73,0,30,30,45,4e,44 apsystems-ecu.0 2022-03-24 20:12:03.064 debug Ecu.reqService(REAL_TIME_DATA req:APS1100280002216000xxxxxxEND) apsystems-ecu.0 2022-03-24 20:12:03.064 debug Ecu.trServiceSM(evRepeatService) stRealTimeData->stRealTimeData apsystems-ecu.0 2022-03-24 20:12:03.064 debug Ecu.ecuStateMachine(evConnected) stWaitForConnect -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:12:03.024 debug Ecu.trConnect() hide=true, ip=192.168.xxx.xxx port=8899 apsystems-ecu.0 2022-03-24 20:12:03.023 debug Ecu.ecuStateMachine(evCycleTimer) stWaitForNextCycle -> stWaitForConnect apsystems-ecu.0 2022-03-24 20:10:03.023 debug Ecu.trNextCycle() 120sec delay apsystems-ecu.0 2022-03-24 20:10:03.023 debug Ecu.ecuStateMachine(evDisconnected) stWaitForDisconnected -> stWaitForNextCycle apsystems-ecu.0 2022-03-24 20:10:03.023 debug Ecu.trDisconnect() - done apsystems-ecu.0 2022-03-24 20:10:03.020 error Ecu.ecuStateMachine() +++ socket error apsystems-ecu.0 2022-03-24 20:10:03.020 debug Ecu.ecuStateMachine(evSocketError) stWaitForResponse -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:10:03.005 debug Ecu.reqService(REAL_TIME_DATA req:APS1100280002216000xxxxxxEND) apsystems-ecu.0 2022-03-24 20:10:03.004 debug Ecu.trServiceSM(evNextService) stSystemInfo->stRealTimeData apsystems-ecu.0 2022-03-24 20:10:03.004 debug Ecu.ecuStateMachine(evResponseOk) stWaitForResponse -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:10:03.004 debug Ecu.decodeAndProcessSystemInfo() - done apsystems-ecu.0 2022-03-24 20:10:03.003 debug Ecu.decodeRsp() 293ms - 41,50,53,31,32,30,31,31,32,30,30,30,31,32,31,36,32,30,30,30,31,33,37,35,33,30,31,0,0,5,fa,0,0,0,0,0,0,3,58,20,22,3,24,19,31,37,0,6,0,0,31,30,30,31,35,45,43,55,5f,52,5f,50,52,4f,5f,32,2e,30,2e,36,30,31,32,45,75,72,6f,70,65,2f,50,61,72,69,73,80,97,1b,2,d0,35,60,c5,a8,7a,22,d5,30,30,0,0,0,0,0,0,0,0,0,0,45,4e,44 apsystems-ecu.0 2022-03-24 20:10:02.709 debug Ecu.reqService(SYSTEMINFO req:APS1100160001END) apsystems-ecu.0 2022-03-24 20:10:02.709 debug Ecu.trServiceSM(evRepeatService/null) stSystemInfo->stSystemInfo apsystems-ecu.0 2022-03-24 20:10:02.708 debug Ecu.ecuStateMachine(evConnected) stWaitForConnect -> stWaitForResponse apsystems-ecu.0 2022-03-24 20:10:02.487 info state apsystems-ecu.0.ecu.cmd_start_stop changed: true (ack = true) apsystems-ecu.0 2022-03-24 20:10:02.484 info state apsystems-ecu.0.ecu.cmd_start_stop changed: true (ack = false) apsystems-ecu.0 2022-03-24 20:10:02.482 info state apsystems-ecu.0.ecu.power_of_day_date changed: 2022-03-24 (ack = true) apsystems-ecu.0 2022-03-24 20:10:02.481 debug Ecu.trConnect() hide=true, ip=192.168.xxx.xxx port=8899 apsystems-ecu.0 2022-03-24 20:10:02.480 debug Ecu.ecuStateMachine(evInit) stWaitForInit -> stWaitForConnect apsystems-ecu.0 2022-03-24 20:10:02.480 debug Ecu.init() - done apsystems-ecu.0 2022-03-24 20:10:02.479 info state apsystems-ecu.0.ecu.cmd_power_of_day changed: true (ack = false) apsystems-ecu.0 2022-03-24 20:10:02.476 info state apsystems-ecu.0.ecu.cmd_energy_of_year changed: true (ack = false) apsystems-ecu.0 2022-03-24 20:10:02.475 info state apsystems-ecu.0.ecu.cmd_energy_of_month changed: true (ack = false) apsystems-ecu.0 2022-03-24 20:10:02.474 info state apsystems-ecu.0.ecu.cmd_energy_of_week changed: true (ack = false) apsystems-ecu.0 2022-03-24 20:10:02.466 debug new scheduleSunSetSunrise() at Thu Mar 24 2022 20:10:02 GMT+0100 (Mitteleuropäische Normalzeit) apsystems-ecu.0 2022-03-24 20:10:02.461 debug sunset at {"hour":18,"minute":47} apsystems-ecu.0 2022-03-24 20:10:02.458 debug sunrise at {"hour":6,"minute":21} apsystems-ecu.0 2022-03-24 20:10:02.455 debug Ecu.createStaticObjects() - done apsystems-ecu.0 2022-03-24 20:10:02.405 debug Schedule restart: */10 4-22 * * * apsystems-ecu.0 2022-03-24 20:10:02.383 info starting. Version 0.2.3 in /opt/iobroker/node_modules/iobroker.apsystems-ecu, node: v14.18.3, js-controller: 3.3.22 apsystems-ecu.0 2022-03-24 20:10:00.038 info Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason apsystems-ecu.0 2022-03-24 20:10:00.037 info terminating apsystems-ecu.0 2022-03-24 20:10:00.030 debug Ecu.unload() - done apsystems-ecu.0 2022-03-24 20:10:00.030 debug Ecu.trDisconnect() - done apsystems-ecu.0 2022-03-24 20:10:00.030 debug Ecu.ecuStateMachine(evUnload) stWaitForNextCycle -> stUnload apsystems-ecu.0 2022-03-24 20:10:00.029 info Scheduled restart.
-
@stundenblume said in Test Adapter apsystems-ecu v0.2.x GitHub:
psystems-ecu.0
-
Log ohne aktive WR ist OK! (das Log nächstes mal als File anhängen)
-
Bitte noch eine Screenschoot der angelegten Datenpunkte von ./ecu, ./info ./WR (da reicht einer) schicken
-
-
Hier nochmal drei Zyklen mit einem QS1 an einem Netzteil.
Aktuell sind nur die beiden DS3-S und ein QS1 dauernd im Einsatz. Die anderen sind an der ECU angemeldet, liegen aber noch im Karton. Reiche gleich nochmal die Seriennummern(?) nach.
-
Das sind die drei aktiv genutzten:
apsystems-ecu.0.qs1_806000058312
apsystems-ecu.0.yc600_703000014489 (DS3-S)
apsystems-ecu.0.yc600_703000015029 (DS3-S)Der den ich für den letzten Log an das Netzteil angeschlossen habe ist ein QS1, für den wurden aber keine Objekte angelegt, obwohl der schonmal für ein paar Stunden draußen war und Strom produziert hat.
-
In einer RealTimeData- Response werden 6 Inverter gelistet:
- 703000015029 - YC600/DS3
- 703000014489 - YC600/DS3
- 806000058312 - QS1
- 806000055586 - QS1 - ohne Daten
- 806000055796 - QS1
- 806000056773 - QS1 - ohne Daten
Denke, das passt zu Deinen Angaben.
Aktuell sehe ich drei Punkte:
1 - Instabilität der ECU Verbindung
2 - DS3 werden als InverterType 01 (YC600) gemeldet (ID beginnt mit 70)
3 - Angemeldete Inverter werden im RealTimeProtokoll in einem eigenem Format aufgeführt.OK! Für diese Punkte habe ich vorab genug Infos.
-
Ich habe Testversion V0.2.5 bereitgestellt.
Bearbeitet wurden die Punkte:
1 - Instabilität der ECU Verbindung
2 - DS3 werden als InverterType 01 (YC600) gemeldet (ID beginnt mit 70)
3 - Angemeldete Inverter werden im RealTimeProtokoll in einem eigenem Format aufgeführt.Details siehe Changelog.
Zum (schnelleren) Testen kann man die ECU Pollzeit auf 10sec setzen. Später sollten ca. 60sec ausreichend sein.
- Die ECU-Verbindung ist jetzt hoffentlich stabiler.
- Die DS3 sollten jetzt auch als DS3 in der Datenbank auftauchen.
- An der ECU-angemeldete, aber nicht vorhandene Inverter werden ignoriert bis die ECU auch RealTimeDaten liefert
Die V0.2.5 läuft auf meinem Minisystem (1 QS1) ohne Probleme
Tiefergehende tests konnte ich natürlich nicht durchführen.Bei Problemen wie immer ein Logfile posten!
-
habe die 0.2.5 problemlos installieren können.
Der Adapter bleibt grün.Der Log ist angenehm unaufregend.
apsystems-ecu.0 2022-03-25 19:25:10.946 warn rspWatchDog +++ timeout apsystems-ecu.0 2022-03-25 19:24:07.805 warn rspWatchDog +++ timeout apsystems-ecu.0 2022-03-25 19:21:03.673 error Ecu.decodeAndProcessRealTimeData() - +++ invalid inverter type:64
Werde gleich mal den Test QS1 ans Netzteil hängen.
Vielen Dank schonmal bis hierher!
-
Es scheint tatsächlich alles zu laufen.
Der bisher unbekannte WR ist bei den Objekten angelegt und dessen aktuellen Daten werden gelesen.Werde morgen berichten wie es mit den anderen WR gelaufen ist wenn die Sonne bekommen.
Wenn ich das Objekt mit dem YC600 lösche, sollte der dann ja später als DS3 erkannt werden oder?
1000 Dank!
Sebastian -
Sieht auf jedem Fall schon mal besser aus
Die DS3 sollten erkannt werden und als neues Device mit ds3_.... erscheinen. Die yc600 objekte einfach löschen.
Mit dem PowerOfMWYService scheint es noch Probleme zu geben. Auch gefällt mir die Meldung: "+++ invalid inverter type" nicht. Aber mal das Gesamtbild abwarten.
gruesse peter -
@peter_n
habe einen yc600 gelöscht. Es wird dafür auch kein DS3-S angelegt und der vorhandene yc600 erhält keine frischen Daten.
Habe auf einem Testsystem den Adapter auch mal ganz neu installiert. Auch dort werden nur die QS1 angelegt.Der ECU-B funktioniert auch nach dem Update normal mit einem QS1.
Hier mal ein aktueller Log.
-
Positiv
1 ECU-Kommunikation läuft stabil
2 Registrierte Inverter die nicht vorhanden sind werden als solche erkannt und ignoriertNegativ
3 YC600 und DS3 werden nicht mehr erkannt. Habe in der 0.2.6 was eingebaut, bin mir aber nicht ganz sicher ob das passt. Bitte testen.
4 PowerOfWeekMonthYear-Service wird von der ECU nicht mehr beantwortet. Habe den Eindruck das der Service von der Pro-Firmware nicht mehr unterstützt wird! Mal beobachten.Gelegentlich würde mich auch ein Log der ECU-B interessieren.
-
zu 3
Installation hat geklappt und Objekte werden angelegt. Wie es mit frischen Daten aussieht kann ich morgen früh sagen.
iob_ecu-r_0-2-6.logzu 4
Ist für mich nicht tragisch.
Hast Du Deine ECU-R nicht am Netz und hast daher ein anderes Verhalten?Ist es generell eine Überlegung Wert die ECU nicht an das Internet zu hängen, nicht dass APSystems mal auf die Idee kommt die Möglichkeit des Auslesens zu sperren oder erschweren?
Hier nochmal ein Log von der ECU-B Instanz. iob_ecu-b_0-2-6.log
Diese beiden Logs sind von einer anderen ioBroker Installation als bisher. Dann sind die aber konsistent.Mal an alle mit einer ECU-R: Habt ihr auch das Problem dass nach ~anderthalb Tagen keine Daten mehr von ioBroker oder Homeassistant abgerufen werden können? EMA bekommt aber weiter Daten. Dann hilft bei mir nur ein Reboot der ECU-R. Die verwendete ECU-B hat das verhalten nicht und läuft seit dem ersten Start am Stück durch.
-
Es sieht sehr viel besser aus. iob_ecu-b_0-2-6_220327.log
-
Mir fällt gerade auf dass bei den DS3 "dc_power1&2" nicht angelegt werden.
-
@stundenblume
Voltage1 und Voltage2 fehlen auch ...
Bin dran.