NEWS
FHEM Adapter
-
@Robin82
Prima.....vielen Dank für die Rückmeldung.
Demnächst sollte V1.5.3 am Start sein..Gruß LausiD
-
Hallo @LausiD,
erst einmal Danke für Deine Arbeit.
Hatte Version 1.3.0 am Start und nun auf 1.5.3 aktualisiert.
Instanz bekommt aber leider keine Verbindung zu FHEM hin:
-Verbunden mit Host: wahr
-Lebenszeichen: wahr
-Verbunden mit Host: falschWiederholt kommt im Log jetzt:
fhem.0 2020-06-12 11:32:31.570 error (1587) TypeError: Cannot read property 'val' of null at adapter.getForeignStates (/opt/iobroker/node_modules/iobroker.fhem/main.js:573:41) at adapterStates.getStates (/opt/iobroker/node_module fhem.0 2020-06-12 11:32:31.569 error (1587) uncaught exception: Cannot read property 'val' of null fhem.0 2020-06-12 11:31:56.856 error at process._tickCallback (internal/process/next_tick.js:68:7) fhem.0 2020-06-12 11:31:56.856 error at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49) fhem.0 2020-06-12 11:31:56.856 error at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23) fhem.0 2020-06-12 11:31:56.856 error at client.mget (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:673:13) fhem.0 2020-06-12 11:31:56.856 error at adapterStates.getStates (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:6757:17) fhem.0 2020-06-12 11:31:56.856 error at adapter.getForeignStates (/opt/iobroker/node_modules/iobroker.fhem/main.js:573:41) fhem.0 2020-06-12 11:31:56.856 error (1572) TypeError: Cannot read property 'val' of null fhem.0 2020-06-12 11:31:56.856 error (1572) uncaught exception: Cannot read property 'val' of null fhem.0 2020-06-12 11:31:21.766 error at process._tickCallback (internal/process/next_tick.js:68:7) fhem.0 2020-06-12 11:31:21.766 error at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49) fhem.0 2020-06-12 11:31:21.766 error at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23) fhem.0 2020-06-12 11:31:21.766 error at client.mget (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:673:13) fhem.0 2020-06-12 11:31:21.766 error at adapterStates.getStates (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:6757:17) fhem.0 2020-06-12 11:31:21.766 error at adapter.getForeignStates (/opt/iobroker/node_modules/iobroker.fhem/main.js:573:41) fhem.0 2020-06-12 11:31:21.766 error (1557) TypeError: Cannot read property 'val' of null fhem.0 2020-06-12 11:31:21.754 error (1557) uncaught exception: Cannot read property 'val' of null
Objekt-Tabelle wurde jedoch nach und nach gefüllt.
Zurück auf 1.3.0 gibt leider die gleichen Fehler.
Kann ich noch weitere Infos liefern um den Fehler einzugrenzen?Viele Grüße,
Andreas -
@Scooty
Hi Andreas,
du hast die Version 1.5.2 von github, oder?
Läuft der Adapter beim Start bis STEP 6?
Hast du unter fhem.0.info.Configurations.allowedIOBin ( Übertrag ioBroker zu FHEM) einen Eintrag?Gruß LausiD
-
@LausiD
Danke für die prompte Reaktion.du hast die Version 1.5.2 von github, oder?
Ja, direkt aus github, Version 1.5.3: https://github.com/iobroker-community-adapters/ioBroker.fhem
Läuft der Adapter beim Start bis STEP 6?
Ja, Abbruch lt. Log nach/bei STEP 6.
fhem.0 2020-06-12 12:43:01.529 warn (3399) TypeError: Cannot read property 'val' of null fhem.0 2020-06-12 12:43:01.522 warn (3399) Exception: TypeError: Cannot read property 'val' of null fhem.0 2020-06-12 12:43:01.504 info (3399) > detected 9 state(s) of "vw-connect.0.TMBJW7NP7L70XXXXX.remote" fhem.0 2020-06-12 12:43:01.185 info (3399) STEP 06 ===== check Subscribe - check fhem.0.info.Configurations.allowedIOBin
Hast du unter fhem.0.info.Configurations.allowedIOBin ( Übertrag ioBroker zu FHEM) einen Eintrag?
Bingo, das scheint's zu sein, ohne Einträge in fhem.0.info.Configurations.allowedIOBin startet der Adapter.
fhem.0 2020-06-12 12:49:26.731 info (3455) END ===== Synchronised FHEM in 10199 ms :-)
Hat sich die Syntax geändert? Ist doch eine Liste komma-separierter Einträge aus der Objekttabelle, oder ?
Gerade getestet, Probleme sind wohl wie auch oben im Log ersichtlich die Objekte des VW-Connect Adapters.Viele Grüße,
Andreas -
@Scooty
Von github kommt noch V 1.5.2 oder?
Ok Fehler erkannt....in den Objekten von vw-connect sind states ohne val (Wert)
Muss ich noch ändernGruß LausiD
-
@LausiD said in FHEM Adapter:
Von github kommt noch V 1.5.2 oder?
Ups, ja, von github ist Version 1.5.2
Ok Fehler erkannt....in den Objekten von vw-connect sind states ohne val (Wert)
Muss ich noch ändernAlles klar, danke für die Unterstützung.
Viele Grüße,
Andreas -
Hallo,
ich habe gerade den Adapter installiert und mir ist dabei aufgefallen, das der Adapter bei KNX Geräten leider kein "state_switch" Objekt im ioBroker anlegt. Daduch kann ich in der VIS einige Toggles nicht benutzen.
ein jsonlist2 vom KNX Device sieht wie folgt aus:{ "Arg":"bu_LichtDecke", "Results": [ { "Name":"bu_LichtDecke", "PossibleSets":"g1:off,on", "PossibleAttrs":"alias comment:textField-long eventMap:textField-long group room suppressReading userReadings:textField-long verbose:0,1,2,3,4,5 IODev do_not_notify:1,0 showtime:1,0 answerReading:1,0 stateRegex:textField-long stateCmd:textField-long putCmd:textField-long format listenonly:1,0 readonly:1,0 slider useSetExtensions:1,0 event-aggregator event-min-interval event-on-change-reading event-on-update-reading oldreadings stateFormat:textField-long timestamp-on-change-reading DbLogExclude DbLogInclude DbLogValueFn:textField-long alarmDevice:Actor,Sensor alarmSettings alexaName alexaProactiveEvents:1,0 alexaRoom cmdIcon devStateIcon devStateIcon:textField-long devStateStyle genericDeviceType:security,ignore,switch,outlet,light,blind,thermometer,TemperatureSensor,thermostat,contact,garage,window,lock,MotionSensor,speaker homebridgeMapping:textField-long icon siriName sortby webCmd webCmdLabel:textField-long widgetOverride userattr", "Internals": { "DEF": "1/0/40:dpt1.001", "DEVNAME": "bu_LichtDecke", "FIRSTGADNAME": "g1", "FUUID": "5c7bd032-f33f-6f0b-03c9-1fd93b0796862f01", "GETSTRING": "g1:noArg", "KNX_MSGCNT": "17", "KNX_RAWMSG": "C0113cw0102800", "KNX_TIME": "2020-06-14 09:57:42", "LASTInputDev": "KNX", "MSGCNT": "17", "NAME": "bu_LichtDecke", "NR": "92", "NTFY_ORDER": "50-bu_LichtDecke", "SETSTRING": "g1:off,on", "STATE": "off", "TYPE": "KNX" }, "Readings": { "getG1": { "Value":"off", "Time":"2020-06-14 09:57:42" }, "last-sender": { "Value":"1/1/60", "Time":"2020-06-14 09:57:42" }, "setG1": { "Value":"off", "Time":"2020-06-13 16:37:03" }, "state": { "Value":"off", "Time":"2020-06-14 09:57:42" } }, "Attributes": { "DbLogExclude": ".*", "IODev": "KNX", "alexaName": "Deckenlicht", "alexaRoom": "Büro", "alias": "Deckenlicht", "devStateIcon": "off:light_light_dim_00 on:light_light_dim_100@orange", "genericDeviceType": "light", "group": "Licht", "homebridgeMapping": "On=state,valueOn=on,valueOff=off,cmdOn=g1+on,cmdOff=g1+off", "icon": "light_ceiling_light", "room": "Buero,Homekit,alexa,ioBroker", "siriName": "Deckenlicht" } } ], "totalResultsReturned":1 }
Im ioBroker sieht es wie folgt aus:
Wäre es möglich, dies noch in den Adapter mit einzubauen?
-
@pole23 geht es um den KNX-Adapter oder den FHEM Adapter?
-
Hallo, es geht um den FHEM Adapter.
-
@pole23 sagte in FHEM Adapter:
"PossibleSets":"g1:off,on",
Um ein state_switch anzulegen müsste hier on und off definiert sein.
Ist das Device bu_LichtDecke von FHEM so angelegt oder hast du manuell was geändert?
Sorry, KNX habe ich hier nicht
Schaltest du mit g1 off?Gruß LausiD
-
Das Device wurde so von FHEM angelegt. Ich kann es innerhalb von FHEM mit „set bu_LichtDecke on“ und „set bu_LichtDecke g1 on“ schalten.
-
@pole23 sagte in FHEM Adapter:
Ich kann es innerhalb von FHEM mit „set bu_LichtDecke on“ und „set bu_LichtDecke g1 on“ schalten.
Und mit was schaltest du in FHEM aus?
Eine Möglichkeit die immer geht
Du legst ein dummy als Schalter an ( sehr einfach mit fhem.0.info.Commands.createSwitch) und machst in FHEM ein kleines notify dazu -> fertigGruß LausiD
-
@Scooty sagte in FHEM Adapter:
Bingo, das scheint's zu sein, ohne Einträge in fhem.0.info.Configurations.allowedIOBin startet der Adapter.
Kannst du mal bitte mit Update von github versuchen...Danke
-
@LausiD Ich schalte mit „set bu_LichtDecke on“ die Devices an und aus. Ich bin aber der Meinung, dass das mit einer älteren Version des Adapters funktioniert hatte. Ich muss mal schauen, ob ich das noch rausbekomme, welche das genau war.
-
@LausiD said in FHEM Adapter:
Kannst du mal bitte mit Update von github versuchen...Danke
Nach Update startet die Instanz nun ohne Probleme :
(4631) END ===== Synchronised FHEM in 65238 ms :-)
Klasse, vielen Dank, sollte bei weiteren Tests noch etwas auffallen, melde ich mich (ist keine Drohung ) .
Viele Grüße,
Andreas -
Hallo @LausiD,
tja, da bin ich schon wieder.
Leider schaffe ich es, durch eine Aktion in FHEM die FHEM-Instanz in IOBroker abzuschiessen (Neustart erfolgt aber zuverlässig).
Möchte die Bedienung aus FHEM etwas komfortabler gestalten, daher habe ich im FHEM-Device "fhem.0.send2ioB" eine setList definiert (RAW-Definition):
attr fhem.0.send2ioB setList vw-connect.0.TMBJW7NP7L70XXXXX.remote.batterycharge:true,false\ vw-connect.0.TMBJW7NP7L70XXXXX.remote.climatisation:true,false\ vw-connect.0.TMBJW7NP7L70XXXXX.remote.flash:true,false\ vw-connect.0.TMBJW7NP7L70XXXXX.remote.honk:true,false\ vw-connect.0.TMBJW7NP7L70XXXXX.remote.lock:true,false\ vw-connect.0.TMBJW7NP7L70XXXXX.remote.standheizung:true,false\ vw-connect.0.TMBJW7NP7L70XXXXX.remote.windowheating:true,false\ vw-connect.0.TMBJW7NP7L70XXXXX.remote.climatisation:true,false\ chromecast.0.SZDG_GHOME01.status.volume:slider,0,5,100,1\ chromecast.0.SZDG_GHOME01.player.stop:true,false\ chromecast.0.SZDG_GHOME01.player.pause:true,false\ chromecast.0.SZDG_GHOME01.player.play:true
Kann es sein, dass beim Speichern von Änderungen dieser setList FHEM wohl einen Event erzeugt, den der FHEM-Adapter in IOBRoker nicht verträgt (s. letzte Zeile im Log):
fhem.0 2020-06-15 12:02:37.362 info (4782) Terminated (NO_ERROR): Without reason fhem.0 2020-06-15 12:02:37.361 info (4782) terminating fhem.0 2020-06-15 12:02:37.353 debug (4782) [stateChange] stateChange (in): fhem.0.info.Info.alive false {"val":false,"ack":true,"ts":1592215357339,"q":0,"from":"system.adapter.fhem.0","user":"system.user.admin","lc":1592215357339} fhem.0 2020-06-15 12:02:37.351 debug (4782) [stateChange] stateChange (in): fhem.0.info.connection false {"val":false,"ack":true,"ts":1592215357338,"q":0,"from":"system.adapter.fhem.0","user":"system.user.admin","lc":1592215357338} fhem.0 2020-06-15 12:02:37.334 debug (4782) adapter.on.unload: clearTimeout getAlive fhem.0 2020-06-15 12:02:37.333 debug (4782) adapter.on.unload: clearTimeout setAlive fhem.0 2020-06-15 12:02:37.332 error (4782) ReferenceError: channel is not defined at parseEvent (/opt/iobroker/node_modules/iobroker.fhem/main.js:2317:29) at processEvent (/opt/iobroker/node_modules/iobroker.fhem/main.js:2304:5) fhem.0 2020-06-15 12:02:37.331 error (4782) uncaught exception: channel is not defined fhem.0 2020-06-15 12:02:37.329 warn (4782) ReferenceError: channel is not defined at parseEvent (/opt/iobroker/node_modules/iobroker.fhem/main.js:2317:29) at processEvent (/opt/iobroker/node_modules/iobroker.fhem/main.js:2304:5) fhem.0 2020-06-15 12:02:37.326 warn (4782) Exception: ReferenceError: channel is not defined fhem.0 2020-06-15 12:02:37.325 debug (4782) [main] [eventFHEM] eventFHEM(in): "vw-connect.0.TMBJW7NP7L7057941.remote.climatisation:true,false"
Zwei weitere Dinge:
- Beim Neustart der FHEM-Instanz werden wohl alle IOBroker Devices in FHEM gelöscht und wieder neu angelegt? Ist das so gewollt? Damit werden leider auch alle von mir zwischenzeitlich geänderten Attribute (wie z.B. "room") auf Standard zurückgesetzt. Oder habe ich ein Verständnisproblem und sollte nicht mit den nativen IOBroker-Devices in FHEM arbeiten?
Edit: Betrifft ggf. nur das "room" Attribut, Attribut "userReadings" bleibt bestehen. - Zumindest die "vw-connect" Objekte werden in FHEM mit einem "_" statt dem "-" im FHEM-Devicenamen angelegt, also z.B.
#in FHEM vw_connect.0.TMBJW7NP7L70XXXXX.remote.climatisation
# in IOBroker vw-connect.0.TMBJW7NP7L70XXXX.remote.climatisation
Führte bei mir ein wenig zu Verwirrung, weil man in FHEM bei einem
set fhem.0.send2ioB
nicht den FHEM-Devicenamen sondern den IOBroker Objektnamen verwenden muss.
Weißt Du, warum das "-" durch das "_" beim Anlage des Devices in FHEM ersetzt wird?Vielen Dank und Grüße,
AndreasPS: Sorry, keine Ahnung woher dieses "Select all" in den Code-Bereichen herkommt....
- Beim Neustart der FHEM-Instanz werden wohl alle IOBroker Devices in FHEM gelöscht und wieder neu angelegt? Ist das so gewollt? Damit werden leider auch alle von mir zwischenzeitlich geänderten Attribute (wie z.B. "room") auf Standard zurückgesetzt. Oder habe ich ein Verständnisproblem und sollte nicht mit den nativen IOBroker-Devices in FHEM arbeiten?
-
@Scooty sagte in FHEM Adapter:
Kann es sein, dass beim Speichern von Änderungen dieser setList FHEM wohl einen Event erzeugt, den der FHEM-Adapter in IOBRoker nicht verträgt
Stimmt Nach Update von github sollte Absturz erledigt sein
@Scooty sagte in FHEM Adapter:
Beim Neustart der FHEM-Instanz werden wohl alle IOBroker Devices in FHEM gelöscht und wieder neu angelegt?
Werden nicht gelöscht jedoch im Raum ioB_IN erwartet.
Zusätzlich zum Raum ioB_IN einen weiteren Raum zuordnen sollte gehen@Scooty sagte in FHEM Adapter:
Zumindest die "vw-connect" Objekte werden in FHEM mit einem "_" statt dem "-" im FHEM-Devicenamen angelegt
In FHEM darf der Device Name kein "-" enthalten, deshalb erfolgt die Umwandlung in "_"
Vielen Dank für Deine Rückmeldung und Gruß
LausiD -
@pole23 sagte in FHEM Adapter:
Ich schalte mit „set bu_LichtDecke on“ die Devices an und aus
Sorry, verstehe ich nicht so ganz.
Mit „set bu_LichtDecke on“ schaltest du im Wechsel an/aus?
Wofür brauchst du dann ein state_switch?Gruß
LausiD -
@LausiD Sorry, da habe ich mich falsch ausgedrückt. Ich schalte mit "set bu_LichtDecke on" die Lampe an und mit "set bu_LichtDecke off" die Lampe wieder aus. Daher würde hier ein Switch sinn machen, da ich sonst in der VIS ein Problem mit den Toggle habe.
-
Hallo LausiD,
danke für die Infos bezüglich room und FHEM-Devicenamen, verstanden.
Kann bestätigen, dass das Absturzproblem nach Update setlist behoben ist.
Vielen Dank!Andreas