bzgl. EMS_REQ_BATTERY_BEFORE_CAR_MODE:
Das scheint in der Dokumentation was falsch zu sein (wieder einmal).
Die Doku sagt der Datentyp is UChar8 (intern das gleiche wie uint8), das würde bedeuten er will ein "Wert" für die Abfrage... ist jedoch scheinbar nicht korrekt.
Wenn ich das teste, und explizit den Datentyp mitgebe als "None" dann geht die Abfrage:
bzgl. EMS_REQ_SET_BATTERY_BEFORE_CAR_MODE:
Bei mir gehen diese Requests, jedoch habe ich keine WB und daher kann das wiederum anders aussehen. Folgendes geht bei mir:
Je nach dem was du für ein Typ Batterie hast, kann es leider dann auch wieder anders aussehen.
bzgl. WB_REQ_MODE:
Du musst die Doku anschauen. WB_REQ_MODE muss immer in einem "Container" sein mit dem WB_INDEX.
Beispiel:
Da ich keine WB habe, gibt er ein Error zurück. Aber zu mindestens scheint es syntaktisch korrekt zu sein und müsste so bei dir funktionieren.
PS: mit "-debug 6" siehst du wo der Fehler passiert. z.B. wenn er nicht mal die Authentifizierung macht, dann ist es meist ein Parsing Problem mit dem Input. Wenn es nach "write"-Meldungen bei "read"-Meldungen knallt, ist es meistens das die Antwort von E3DC nicht richtig interpretiert werden kann.
Leider ist das aufgrund der unterschiedlichen Gerätetypen und der schlechten Doku oft ein Try&Error.
Einige Beispiele findest du auch in den Diskussionen auf Github.
Das scheint in der Dokumentation was falsch zu sein (wieder einmal).
Die Doku sagt der Datentyp is UChar8 (intern das gleiche wie uint8), das würde bedeuten er will ein "Wert" für die Abfrage... ist jedoch scheinbar nicht korrekt.
Wenn ich das teste, und explizit den Datentyp mitgebe als "None" dann geht die Abfrage:
Code:
./e3dc '[["EMS_REQ_BATTERY_BEFORE_CAR_MODE","None"]]'
Bei mir gehen diese Requests, jedoch habe ich keine WB und daher kann das wiederum anders aussehen. Folgendes geht bei mir:
Code:
./e3dc '[["EMS_REQ_SET_BATTERY_BEFORE_CAR_MODE",1]]' {"EMS_SET_BATTERY_BEFORE_CAR_MODE":255} ./e3dc '[["EMS_REQ_SET_BATTERY_BEFORE_CAR_MODE",0]]' {"EMS_SET_BATTERY_BEFORE_CAR_MODE":0}
bzgl. WB_REQ_MODE:
Du musst die Doku anschauen. WB_REQ_MODE muss immer in einem "Container" sein mit dem WB_INDEX.
Beispiel:
Code:
./e3dc '[["WB_REQ_DATA",[["WB_INDEX",0],"WB_REQ_MODE"]]]' {"WB_DATA":{"WB_REQ_MODE":"ERR_NOT_AVAILABLE","WB_INDEX":0}}
PS: mit "-debug 6" siehst du wo der Fehler passiert. z.B. wenn er nicht mal die Authentifizierung macht, dann ist es meist ein Parsing Problem mit dem Input. Wenn es nach "write"-Meldungen bei "read"-Meldungen knallt, ist es meistens das die Antwort von E3DC nicht richtig interpretiert werden kann.
Leider ist das aufgrund der unterschiedlichen Gerätetypen und der schlechten Doku oft ein Try&Error.
Einige Beispiele findest du auch in den Diskussionen auf Github.
Kommentar