New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
VARIABLE_NOT_FOUND has unknown prefix! #224
Comments
Hm, die Meldung Übrigens wurde der SENEC-Collector gar nicht von mir aktualisiert, nur das Dashboard selbst wurde kürzlich (auf Version 0.13) aktualisiert. Insofern denke ich nicht, dass es irgendwas mit dem Update zu tun hat. Könnte ich mal den gesamten Output des SENEC-Containers sehen? Vielleicht finden sich da weitere Hinweise. Das geht wie folgt:
Bei mir sieht es so aus (als Referenz):
Eine Neuinstallation würde ich erst mal nicht machen. Ich denke nicht, dass dies etwas ändern würde. Vielleicht genügt es schon, den SENEC-Collector neu zu starten:
|
Hallo Herr Ledermann erstmal Danke :-) Using Ruby 3.2.2 on platform aarch64-linux-musl Getting state names from SENEC by parsing source code... Was ich noch im Log gefunden haben Got record #102704 from SENEC at 192.168.179.31: NEUSTART, Inverter 516 W, House 160 W, 2023-08-17 07:46:13 +0000 Got record #102705 from SENEC at 192.168.179.31: NEUSTART, Inverter 517 W, House 163 W, 2023-08-17 07:46:18 +0000 Got record #102706 from SENEC at 192.168.179.31: NEUSTART, Inverter 517 W, House 160 W, 2023-08-17 07:46:23 +0000 Got record #102707 from SENEC at 192.168.179.31: NEUSTART, Inverter 516 W, House 161 W, 2023-08-17 07:46:28 +0000 Der Speicher war nicht erreichbar, deshalb habe ich erstmal nachgeschaut ob sich der Pi aufgehangen hat da der Speicher weiter zu SENEC kommuniziert hat. Gruß |
Danke für die ausführlichen Infos. Da das Problem direkt nach dem Speicher-Neustart (vermutlich durch ein Update der Software im Speicher) aufgetreten ist, sehe ich hier einen deutlichen Zusammenhang. Möglicherweise hat SENEC tatsächlich etwas geändert und der Abruf funktioniert nicht wie bislang. Bei mir sehen die Versionen gänzlich anders aus, aber es ist auch ein V3 hybrid duo: Wie ich aber gerade sehe, stammt die Fehlermeldung doch aus meinem Programmcode :-) Offenbar liefert der Speicher einen bestimmten Messwert nicht mehr zurück (oder hat ihn umbenannt). Welcher das ist, wird leider nicht ausgegeben. Ich werde da mal nachforschen und melde mich wieder. Es deutet aber alles darauf hin, dass SENEC etwas geändert hat, was sich auf die Kommunikation mit SOLECTRUS negativ auswirkt. Das ist auch für mich eine neue Situation. |
Vielen Dank, ich kann verstehen, wie sollen Sie was Testen was sie nicht zur Verfügung haben :-(. Alles gut. Bis dahin hat mir Ihre SW sehr viel Spaß gemacht. |
Hallo ich nochmal, die Senec Kollegen schrauben solectrus-senec-collector-1 | Error getting data from SENEC at 192.168.179.31: VARIABLE_NOT_FOUND has unknown prefix! Allgemeiner Name (CN) senecGuiSelf das war vorher immer http jetzt https mit Self signed Certificate |
Danke für die Info, das ist äußerst hilfreich! Ich versuche, Anpassungen am Collector vorzunehmen und hoffe, dass sich SENEC nicht etwas ausgedacht hat, dass die Abfrage von Messwerten gänzlich unmöglich macht. Ich melde mich, sobald ich ein Update für den Collector erstellt habe. Vielleicht können Sie das dann ausprobieren. |
Ja sehr gerne |
Ok, ich habe nun zwei Anpassungen im Collector durchgeführt:
Um diese neue Neuerung auszuprobieren und mich bei der weiteren Anpassung zu unterstützen, muss auf das
(also Außerdem muss in der
Nachdem
Im Log des Collectors muss dann dies stehen:
Also "built at" von heute und ACHTUNG: Dies löst noch nicht das eigentliche Problem. Helfen würde mir aber sehr, wenn ich erfahren würde, was weiter im Log steht. Da dürften Fehlermeldungen auftauchen, deren Inhalt für die eigentliche Problembehebung wesentlich ist. Möglicherweise müssen wir dann weitere Update-Runden drehen. Mein SENEC-Speicher hat offenbar noch eine ältere Version, mit der das Problem nicht auftritt. Ich kann die gesamte Problematik hier bei mir also noch nicht reproduzieren. Ich gehe aber davon aus, dass SENEC derzeitig Updates ausrollt und früher oder später alle User betroffen sind. PS: Gerne per Du :-) |
Hallo, yml angepasst
.env angepasst
der Pull hat auch neue Sources geladen
Logs leider noch alt
|
Da läuft offenbar noch die "alte" Version 0.8.0 des SENEC-Collectors (siehe Log-Output). Offenbar wurde zwar das neue Image geladen, aber kein neuer Container gestartet. Vielleicht einfach wie folgt:
|
nimmt noch die alte hat beim Pull auch nichts mehr heruntergeladen :-( solectrus-senec-collector-1 | SENEC collector for SOLECTRUS, Version develop, built at 2023-08-17T14:43:09.197Z |
Dem Log entnehme ich, dass die Bitte dazu noch in der ...
senec-collector:
image: ghcr.io/solectrus/senec-collector:develop
depends_on:
influxdb:
condition: service_healthy
links:
- influxdb
environment:
- SENEC_HOST
- SENEC_SCHEMA
- SENEC_INTERVAL
- INFLUX_HOST
- INFLUX_SCHEMA
- INFLUX_PORT
- INFLUX_TOKEN=${INFLUX_TOKEN_WRITE}
- INFLUX_ORG
- INFLUX_BUCKET
- INFLUX_MEASUREMENT=${INFLUX_MEASUREMENT_PV}
restart: always
... Sorry für die späte Ergänzung. Insgesamt ist hier alles mit heißer Nadel gestrickt. |
So passt besser |
Sehr gut, danke, das hilft weiter. Die Kommunikation per Ich würde Sie daher bitten, dass Sie (bei Gelegenheit) folgenden curl \
--insecure -X POST \
-H "Content-Type: application/json" \
-d '{"STATISTIC":{"CURRENT_STATE":"","MEASURE_TIME":""},"ENERGY":{"GUI_BAT_DATA_CURRENT":"","GUI_BAT_DATA_FUEL_CHARGE":"","GUI_BAT_DATA_POWER":"","GUI_BAT_DATA_VOLTAGE":"","GUI_GRID_POW":"","GUI_HOUSE_POW":"","GUI_INVERTER_POWER":"","STAT_HOURS_OF_OPERATION":""},"PV1":{"MPP_POWER":""},"TEMPMEASURE":{"CASE_TEMP":""},"WALLBOX":{"APPARENT_CHARGING_POWER":""}}' \
https://192.168.179.31/lala.cgi Das ist genau das, was der SENEC-Collector zum Abfragen der Werte macht. Bei mir ergibt das diesen JSON-Output:
Mich würde es sehr interessieren, wie genau die Ausgabe auf Ihrem SENEC-Speicher aussieht. Da dürfte mindestens einmal Helfen würde es außerdem, wenn Sie mir einen Mitschnitt der Requests schicken könnten, die der Browser bei Aufruf der IP absenden. Das ist aber knifflig, ich beschreibe es dennoch mal, falls Sie das versuchen möchten:
Wenn ich diese |
Die Har Datei als ZIP sonst konnte ich die hier nicht hochladen meine Seite ist sowieso derzeit "öffentlich wenn bekannt Ich hoffe das passt sonst bitte melden. |
Tolle Hilfe, vielen Dank! Damit komme ich weiter. Wie es aussieht, fehlen nur zwei Werte: der aktuelle Status des Speichers sowie der Zeitpunkt der Messung. Mir ist noch nicht ganz klar, wo sich insbesondere der Zeitstempel versteckt. Um den Umfang der neuen API zu ermitteln, bitte folgenden
Danach würde ich einen weiteren |
Guten Morgen hier das Ergebnis des Curl {"DEBUG":{"CHARGE_TARGET":"fl_C52D4385","DC_TARGET":"fl_C3FE3B31","FEED_TARGET":"fl_00000000","PU_AVAIL":"fl_00000000","SECTIONS":["st_BAT1","st_BAT1OBJ1","st_BMS","st_BMS_PARA","st_CASC","st_DEBUG","st_DISPLAY","st_ENERGY","st_FACTORY","st_FEATURES","st_FILE","st_GRIDCONFIG","st_LOG","st_PM1","st_PM1OBJ1","st_PM1OBJ2","st_PV1","st_PWR_UNIT","st_RTC","st_SELFTEST_RESULTS","st_SOCKETS","st_STATISTIC","st_STECA","st_SYS_UPDATE","st_TEMPMEASURE","st_TEST","st_UPDATE","st_WALLBOX","st_WIZARD"]}} |
Danke, das ist nun die Liste aller verfügbaren Datenobjekte. Hier nun die letzte Abfrage, die ich benötigte, sie holt sämtliche aktuellen Werte aus dem Speicher ab: curl \
--insecure -X POST \
-H "Content-Type: application/json" \
-d '{
"BAT1": {},
"BAT1OBJ1": {},
"BMS": {},
"BMS_PARA": {},
"CASC": {},
"DEBUG": {},
"DISPLAY": {},
"ENERGY": {},
"FACTORY": {},
"FEATURES": {},
"FILE": {},
"GRIDCONFIG": {},
"LOG": {},
"PM1": {},
"PM1OBJ1": {},
"PM1OBJ2": {},
"PV1": {},
"PWR_UNIT": {},
"RTC": {},
"SELFTEST_RESULTS": {},
"SOCKETS": {},
"STATISTIC": {},
"STECA": {},
"SYS_UPDATE": {},
"TEMPMEASURE": {},
"TEST": {},
"UPDATE": {},
"WALLBOX": {},
"WIZARD": {}
}' \
https://192.168.179.31/lala.cgi Der Output wird deutlich größer sein. Da kann ich dann sehen, welche Werte es überhaupt gibt und wie die Felder heißen. |
Bitte :-) |
Perfekt, damit kann ich nun arbeiten. |
Das Die wesentlichen Änderungen sind, dass der Speicher-Status sowie der Zeitpunkt der abgeholten Messung aus anderen Datenfeldern entnommen wird. Bitte ausprobieren wie folgt:
Anschließend sollte das Dashboard von SOLECTRUS wieder funktionieren. Rückmeldung wäre toll 😄 Eine kleine Verbesserung möchte ich aber noch angehen: Derzeitig ist es so, dass man zwingend den Eintrag Dazu habe ich hier wieder zwei
Wohlgemerkt, da steht |
First curl: * Trying 192.168.2.101:80...
* connect to 192.168.2.101 port 80 failed: Connection refused
* Failed to connect to 192.168.2.101 port 80 after 0 ms: Connection refused
* Closing connection 0 second curl: * Trying 192.168.2.101:80...
* connect to 192.168.2.101 port 80 failed: Connection refused
* Failed to connect to 192.168.2.101 port 80 after 0 ms: Connection refused
* Closing connection 0 With the development container of the collector the dashboard is back2live. |
Hallo mein solectrus Dashboard funktioniert wieder :-) gerne auch selber schauen unter https://solar.montenarh.de Meine Curls
curl -vs http://192.168.179.31/js/DE-de.js 1> /dev/null
Vielen Dank !! |
Super, freut mich sehr, dass es wieder klappt! Zum |
Ja genau so ist es man mus "hart https://[ipadresse} eingeben. Starting Nmap 7.80 ( https://nmap.org ) at 2023-08-18 12:27 Mitteleuropäische Sommerzeit |
Ok, danke! Dann werde ich es im SENEC-Collector wohl so machen, dass ich erst |
Ich habe nun eine neue Version (v0.9.0) des SENEC-Collectors veröffentlicht. Diese enthält aber nicht eine Vielen Dank für die großartige Unterstüzung, @KMontenarh und @Timokirch! |
@ledermann |
Fragen an dich, @halmich:
Solange SOLECTRUS bei dir problemlos funktioniert, scheint es keinen Bedarf für ein Update des SENEC-Collectors zu geben. Dennoch wird es nicht schaden und ist empfehlenswert. Ja nachdem, ob der Speicher auf |
@ledermann Eben bemerke ich, dass seit einer Stunde keine Daten an Solectrus übertragen werden. Edit: EDIT2: 2023-08-30 07:39:34 [I|NET] IP address changed from 192.168.178.100 to unconnected (255.255.255.255). |
Danke für deinen Bericht, @halmich!
Das ist interessant. Werde ich mir genauer ansehen, sobald das Update auch bei mir ankommt. |
Hi, |
@Kuechenfenster Yes, update SENEC-Collector to v0.9.0. If you still get errors, please open a new issue, as this one is already closed. |
Hallo Herr Ledermann, nach dem Update auf die Version 13 habe ich folgende Fehlermeldung im Senec Collector Log gefunden.
solectrus-senec-collector-1 | Error getting data from SENEC at x.y.a.b: VARIABLE_NOT_FOUND has unknown prefix!
Ich bin leider kein Anwendungsentwickler :-(. Vielleicht muss ich alle Komponenten nochmal neu "installieren"
Wnn ja wie kann ich das tun ohne die alten Daten zu verlieren?.
Das Webinterface der Anlage auf der internen IP Adresse ist erreichbar ist erreichbar, diese läuft im Konditionierungsbetrieb.
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
solectrus-app-1 ghcr.io/solectrus/solectrus:latest "docker/startup.sh" app 2 hours ago Up 56 minutes (healthy) 0.0.0.0:3000->3000/tcp, :::3000->3000/tcp
solectrus-db-1 postgres:15-alpine "docker-entrypoint.s…" db 2 hours ago Up 56 minutes (healthy) 5432/tcp
solectrus-forecast-collector-1 ghcr.io/solectrus/forecast-collector:latest "/bin/sh -c 'bundle …" forecast-collector 6 days ago Up 56 minutes
solectrus-influxdb-1 influxdb:2.7-alpine "/entrypoint.sh infl…" influxdb 6 days ago Up 56 minutes (healthy) 8086/tcp
solectrus-redis-1 redis:7-alpine "docker-entrypoint.s…" redis 2 hours ago Up 56 minutes (healthy) 6379/tcp
solectrus-senec-collector-1 ghcr.io/solectrus/senec-collector:latest "/bin/sh -c 'bundle …" senec-collector 6 days ago Up 56 minutes
Danke für Ihre Unterstützung
Gruß
Karlheinz Montenarh (KMO)
p.s. Ich habe mich registriert.
The text was updated successfully, but these errors were encountered: