SOC: smart EQ

Alles rund um SoC (Ladezustand des Fahrzeuges). Probleme, Fragen, Fehlfunktionen gehören hier hin
Humidor
Beiträge: 23
Registriert: Do Jul 07, 2022 7:54 am

Re: SOC: smart EQ

Beitrag von Humidor »

Danke für die Erklärung!

Hatte gehofft, wenn man sich 1x manuell über PIN einloggt, könnte es vielleicht wieder gehen, aber Fehlanzeige....Schade.
b.bosch
Beiträge: 4
Registriert: Di Dez 13, 2022 3:23 pm

Re: SOC: smart EQ

Beitrag von b.bosch »

Hallo Zusammen,

seit zwei Tagen bekomme ich keine SOC Werte mehr für meinen Smart. Ich kann mich im Portal bei Smart driekt anmelden, meine App läuft auf, aber das ist der Log:

Code: Alles auswählen

2023-10-31 22:10:15: PID: 4367: Lp1: Error from soc_smart:  (LV0) at 86 getAndWriteSoc /var/www/html/openWB/modules/soc_smarteq/main.sh
UnboundLocalError: local variable 'code' referenced before assignment
    return code
  File "/var/www/html/openWB/modules/soc_smarteq/soc_smarteq.py", line 230, in get_code
    code = self.get_code()
  File "/var/www/html/openWB/modules/soc_smarteq/soc_smarteq.py", line 235, in get_tokens
    Tokens = self.get_tokens()
  File "/var/www/html/openWB/modules/soc_smarteq/soc_smarteq.py", line 326, in reconnect
    self.store['Tokens'] = self.reconnect()
  File "/var/www/html/openWB/modules/soc_smarteq/soc_smarteq.py", line 416, in fetch_soc
    soc = Smart.fetch_soc()
  File "/var/www/html/openWB/modules/soc_smarteq/soc_smarteq.py", line 455, in main
    main()
  File "/var/www/html/openWB/modules/soc_smarteq/soc_smarteq.py", line 460, in <module>
Traceback (most recent call last):

During handling of the above exception, another exception occurred:

UnboundLocalError: local variable 'code' referenced before assignment
    return code
  File "/var/www/html/openWB/modules/soc_smarteq/soc_smarteq.py", line 230, in get_code
    code = self.get_code()
  File "/var/www/html/openWB/modules/soc_smarteq/soc_smarteq.py", line 235, in get_tokens
    Tokens = self.get_tokens()
  File "/var/www/html/openWB/modules/soc_smarteq/soc_smarteq.py", line 326, in reconnect
    self.store['Tokens'] = self.reconnect()
  File "/var/www/html/openWB/modules/soc_smarteq/soc_smarteq.py", line 400, in fetch_soc
Traceback (most recent call last):
2023-10-31 22:10:15 ERROR:soc_smarteq:get_code: Exception: HTTPSConnectionPool(host='webapp.testing.soaf-dev.computerrock.com', port=443): Max retries exceeded with url: /?code=0F63F7LCXsI7xATnZo-VuOKl567woThHQHE-j-CM%2C0F63F7LCXsI7xATnZo-VuOKl567woThHQHE-j-CM (Caused by NewConnectionError('<requests.packages.urllib3.connection.HTTPSConnection object at 0x738d1510>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution',))
2023-10-31 22:10:13 ERROR:soc_smarteq:get_resume: Exception: HTTPSConnectionPool(host='webapp.testing.soaf-dev.computerrock.com', port=443): Max retries exceeded with url: /?code=wyj4W6t_RssNMz8YIeRnEr71d7bHdamU39g-j-CM (Caused by NewConnectionError('<requests.packages.urllib3.connection.HTTPSConnection object at 0x738d1930>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution',))
2023-10-31 22:10:12 ERROR:soc_smarteq:fetch_soc: exception, (re-)connecting ...local variable 'code' referenced before assignment
2023-10-31 22:10:12 ERROR:soc_smarteq:get_code: Exception: HTTPSConnectionPool(host='webapp.testing.soaf-dev.computerrock.com', port=443): Max retries exceeded with url: /?code=0F63F7LCXsI7xATnZo-VuOKl567woThHQHE-j-CM (Caused by NewConnectionError('<requests.packages.urllib3.connection.HTTPSConnection object at 0x738cb490>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution',))
2023-10-31 22:10:10 WARNING:soc_smarteq:init: no store file found, full reconnect required
**** REBOOT ****
Mein IOBroker meldet dieses:

Code: Alles auswählen

Missing token
smart-eq.0
	2023-10-31 21:46:26.531	error	Failed to login via OTP. Please enter the OTP code from the mail in the adapter settings and and save.
smart-eq.0
	2023-10-31 21:46:26.527	error	{"errors":[{"key":"errors.mfa.skip"}],"trackingId":"7bcb7e1235e7752a8705b0acd9514931"}
smart-eq.0
	2023-10-31 21:46:26.524	error	AxiosError: Request failed with status code 403
smart-eq.0
	2023-10-31 21:46:25.858	info	Login with username and password
smart-eq.0
	2023-10-31 20:46:25.858	info	Login with username and password
smart-eq.0
	2023-10-31 20:46:25.657	info	starting. Version 0.0.4 in /opt/iobroker/node_modules/iobroker.smart-eq, node: v16.17.1, js-controller: 5.0.12
Haben die bei Smart was geändert? Könnt Ihr mir weiterhelfen?

Viele Grüße
Björn
rleidner
Beiträge: 954
Registriert: Mo Nov 02, 2020 9:50 am
Has thanked: 5 times
Been thanked: 6 times

Re: SOC: smart EQ

Beitrag von rleidner »

Seit einiger Zeit geht smart EQ bei Neuanmeldung per 2FA, d.h. statt password wird der per email bereitgestellte 6-stellige code notwendig.
Das habe ich im soc-Modul bisher nicht umgesetzt.
Stattdessen benutze ich momentan ioBroker mit smarteq und simpleAPI.
Auch der smarteq in Iobroker nutzt 2FA. Evtl in Iobroker das smarteq Modul mal updaten.
openWB-2 Standard+ | openWB EVU Kit v2 MID| 9,9kWp mit Kostal Plenticore 8.5 plus | VW ID.3, Kia EV6, Smart EQ forfour
b.bosch
Beiträge: 4
Registriert: Di Dez 13, 2022 3:23 pm

Re: SOC: smart EQ

Beitrag von b.bosch »

Danke für die schnelle Rückmeldung. Im IO Broker habe ich das gestern auch mit dem 0.6 Modul umgsetzt und es klappt. Wird es hier denn auch eine Modifikation geben? Gerade das SOC Laden auf 80% fand ich sehr nett. Wüsste nicht, wie ich das über den IO Broker hinbekomme
rleidner
Beiträge: 954
Registriert: Mo Nov 02, 2020 9:50 am
Has thanked: 5 times
Been thanked: 6 times

Re: SOC: smart EQ

Beitrag von rleidner »

b.bosch hat geschrieben: Mi Nov 01, 2023 12:10 pm Danke für die schnelle Rückmeldung. Im IO Broker habe ich das gestern auch mit dem 0.6 Modul umgsetzt und es klappt. Wird es hier denn auch eine Modifikation geben? Gerade das SOC Laden auf 80% fand ich sehr nett. Wüsste nicht, wie ich das über den IO Broker hinbekomme
Im ioBroker SimpleAPI installieren.
In openWB den http SOC Modul konfigurieren mit Abfrage URL:

Code: Alles auswählen

http://<ip des iobroker>:<port des iobroker>/getPlainValue/smart-eq.0.WMEXXXXXXXXXXXXXX.status.data.soc.value
ip, port und VIN entsprechend setzen.
openWB-2 Standard+ | openWB EVU Kit v2 MID| 9,9kWp mit Kostal Plenticore 8.5 plus | VW ID.3, Kia EV6, Smart EQ forfour
larndt
Beiträge: 3
Registriert: Do Nov 02, 2023 9:14 am

Re: SOC: smart EQ

Beitrag von larndt »

Hallo,
Ich hab das gleiche 2FA SmartEQ Problem besitze aber keinen ioBroker.
@rleidner: Gibt es denn Pläne die 2FA Problematik in OpenWB direkt und ohne Umweg über ioBroker zu beheben?
rleidner
Beiträge: 954
Registriert: Mo Nov 02, 2020 9:50 am
Has thanked: 5 times
Been thanked: 6 times

Re: SOC: smart EQ

Beitrag von rleidner »

larndt hat geschrieben: Do Nov 02, 2023 9:22 am Hallo,
Ich hab das gleiche 2FA SmartEQ Problem besitze aber keinen ioBroker.
@rleidner: Gibt es denn Pläne die 2FA Problematik in OpenWB direkt und ohne Umweg über ioBroker zu beheben?
In einem Testprogramm habe ich 2FA realisiert.
Das auf openWB zu übertragen ist nicht ganz einfach, da die Konfiguration in 2 Schritten erfolgen muß.
Es stellen sich auch weitere Fragen / Überlegungen:
1) Besteht genug Interesse, dass sich der Aufwand lohnt?
Wenn ja, besteht das Interesse für openWB 1.9 oder 2.x?

Ich schlage vor, es melden sich hier alle smart User und mit 1.9 oder 2.x.

2) Vor einiger Zeit wurde in der smart App angezeigt, dass die smartEQ-Online Platform Ende 2024 beendet wird und bis dahin kostenlos ist.
Lohnt sich der Aufwand für ca. 1 Jahr wenn es die Alternative ioBroker gibt?

3) Ich habe ein neues Testprogramm für die Mercedes EQ Platform begonnen, mit der ich auch den smart abfragen kann.
Das Verfahren ist deutlich aufwändiger, könnte für den smart aber auch über 2024 hinaus funktionieren...

4) Bisher wird der OAUTH Refresh-Token in der ramdisk immer gespeichert, wenn der Access-Token erneuert wird, also relativ häufig.
Mit 2FA wäre dann bei jedem Neustart/Update, bei dem die ramdisk gelöscht wird, ein neuer 2FA Zyklus notwendig.
Ich könnte den Refresh-Token dann eher auf der SD-Karte speichern um das zu umgehen, evtl. mit einer Logik um zu häufiges Schreiben zu vermeiden, z.B. immer nach x Tagen.
Leider ist der Refresh-Token nicht mit einer Gültigkeitsdauer versehen - hier müsste ich also das x noch herausfinden (try-and-error).
openWB-2 Standard+ | openWB EVU Kit v2 MID| 9,9kWp mit Kostal Plenticore 8.5 plus | VW ID.3, Kia EV6, Smart EQ forfour
Humidor
Beiträge: 23
Registriert: Do Jul 07, 2022 7:54 am

Re: SOC: smart EQ

Beitrag von Humidor »

Prinzipiell würde ich mich freuen, wenn es für die openwb 2.x wieder funktionieren würde...
jedoch bin ich auch dem iobroker nicht abgeneigt, mir fehlen hier jedoch die Kenntnisse, das umzusetzen...
larndt
Beiträge: 3
Registriert: Do Nov 02, 2023 9:14 am

Re: SOC: smart EQ

Beitrag von larndt »

openwb 2.x +1

Falls es aber auf die ioBroker Lösung hinauslaufen sollte - könnte ich den ioBroker vielleicht direkt auf die OpenWB installieren um sich einen zweiten Raspberry Pi zu sparen?
evoco
Beiträge: 20
Registriert: Sa Apr 03, 2021 9:07 pm

Re: SOC: smart EQ

Beitrag von evoco »

rleidner hat geschrieben: Do Nov 02, 2023 10:09 am
larndt hat geschrieben: Do Nov 02, 2023 9:22 am Hallo,
Ich hab das gleiche 2FA SmartEQ Problem besitze aber keinen ioBroker.
@rleidner: Gibt es denn Pläne die 2FA Problematik in OpenWB direkt und ohne Umweg über ioBroker zu beheben?
In einem Testprogramm habe ich 2FA realisiert.
Das auf openWB zu übertragen ist nicht ganz einfach, da die Konfiguration in 2 Schritten erfolgen muß.
Es stellen sich auch weitere Fragen / Überlegungen:
1) Besteht genug Interesse, dass sich der Aufwand lohnt?
Wenn ja, besteht das Interesse für openWB 1.9 oder 2.x?

Ich schlage vor, es melden sich hier alle smart User und mit 1.9 oder 2.x.


Also mich würde es auch sehr interessieren, ich habe keinen Smart aber einen "E300 DE" (S213) und würde diesen gerne über SOC einbinden.

Leider bekomme ich auch die Fehlermeldung:
#######################################################################
Modulmeldung:
<class 'UnboundLocalError'> local variable 'code' referenced before assignment
###########################################################################

Stehe gerne als Testuser zur Verfügung, nutze die 2.x Version.

Danke vorab.
Antworten