FHEM Forum

FHEM - Hausautomations-Systeme => MQTT => Thema gestartet von: sash.sc am 03 Juni 2019, 11:15:11

Titel: [gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 03 Juni 2019, 11:15:11
Hallo zusammen.

ich habe 4 funkmesssteckdosen mit tasmota vernünftig am laufen. jetzt wollte ich einen aussensensor, der mist espeasy geflasht ist, auch über mqtt einbinden.

Dieser wird aber nicht automatisch angelegt. Hier mal das lsit vom server


CONNECTS   42
   DEF        1883 global
   FD         49
   FUUID      5c8fba0d-f33f-852e-f0dc-9a68bd21cec721b3
   FVERSION   00_MQTT2_SERVER.pm:0.187940/2019-03-05
   NAME       mqtt
   NR         418
   PORT       1883
   STATE      Initialized
   TYPE       MQTT2_SERVER
   READINGS:
     2019-06-03 11:02:10   RETAIN          {"/LWT":"offline","/multisens/Lux/Lux":"946.67","/multisens/RSSI/RSSI":"-61.00","/multisens/status/LWT":"Connected","tele/Garten/LWT":"Online","tele/WaMa/LWT":"offline","tele/fridge/LWT":"Online","tele/tvschrank/LWT":"Online","zigbee2mqtt/bridge/state":"online"}
     2019-06-03 11:02:10   nrclients       5
     2019-06-03 10:58:12   state           Initialized
   clients:
     mqtt_127.0.0.1_42618 1
     mqtt_192.168.2.11_12227 1
     mqtt_192.168.2.13_7259 1
     mqtt_192.168.2.145_50527 1
     mqtt_192.168.2.86_10769 1
   retain:
     /LWT:
       ts         1559552308.40693
       val        offline
     /multisens/Lux/Lux:
       ts         1559552308.40693
       val        946.67
     /multisens/RSSI/RSSI:
       ts         1559552308.40693
       val        -61.00
     /multisens/status/LWT:
       ts         1559552530.17313
       val        Connected
     tele/Garten/LWT:
       ts         1559552507.52806
       val        Online
     tele/WaMa/LWT:
       ts         1559552308.40693
       val        offline
     tele/fridge/LWT:
       ts         1559552506.96742
       val        Online
     tele/tvschrank/LWT:
       ts         1559552507.30329
       val        Online
     zigbee2mqtt/bridge/state:
       ts         1559552519.64677
       val        online
Attributes:
   autocreate simple
   room       MQTT
   verbose    4


und hier mal die Auszüge aus dem event monitor mit verbose 4 vom mqtt2 server


2019.06.03 11:08:10 4 : mqtt_192.168.2.145_50527 ESPClient_5C:CF:7F:40:EB:A4 PINGREQ
2019.06.03 11:08:10 4 : mqtt_192.168.2.145_50527 ESPClient_5C:CF:7F:40:EB:A4 PUBLISH /multisens/Licht/Lux:21961.25
2019.06.03 11:08:10 1 : MQTT2_DEVICE: Error evaluating state: Bareword "state" not allowed while "strict subs" in use at (eval 2452) line 1.

2019.06.03 11:09:10 4 : mqtt_192.168.2.145_50527 ESPClient_5C:CF:7F:40:EB:A4 PUBLISH /multisens/Licht/Lux:20915.83
2019.06.03 11:09:10 1 : MQTT2_DEVICE: Error evaluating state: Bareword "state" not allowed while "strict subs" in use at (eval 2754) line 1.
2019.06.03 11:09:11 4 : mqtt_192.168.2.145_50527 ESPClient_5C:CF:7F:40:EB:A4 PINGREQ
2019.06.03 11:09:16 4 : mqtt_192.168.2.11_12227 DVES_4AA7BF PUBLISH tele/tvschrank/STATE:{"Time":"2019-06-03T11:09:16","Uptime":"35T19:21:36","Vcc":3.286,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"POWER":"on","Wifi":{"AP":1,"SSId":"WLAN-DFB306","BSSId":"44:4E:6D:68:29:3E","Channel":13,"RSSI":82,"LinkCount":21,"Downtime":"0T00:18:24"}}


Hier mal ein auszug mit verbose 5 vom mqtt2 server


2019.06.03 11:11:40 4 : mqtt_192.168.2.145_50527 ESPClient_5C:CF:7F:40:EB:A4 PUBLISH /multisens/Licht/Lux:19452.50
2019.06.03 11:11:40 5 : mqtt: dispatch autocreate=complex\000ESPClient_5C_CF_7F_40_EB_A4\000/multisens/Licht/Lux\00019452.50
2019.06.03 11:11:40 1 : MQTT2_DEVICE: Error evaluating state: Bareword "state" not allowed while "strict subs" in use at (eval 3443) line 1.


Kann mir jemand mal auf die Sprünge helfen, warum das mqtt2 device von espeasy nicht angelegt wird ?

im Bild mal die definition von epseasy

Gruß und danke
#Sascha
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: Beta-User am 03 Juni 2019, 11:41:36
Hmm, irgendwie scheinen deine lists und die logauszüge nicht so recht zusammenzupassen. Kann es sein, dass du dazwischen rumexperimentiert hast?

Wie dem auch sei, als erste Maßnahme solltest du m.E. mal den ersten Querstrich am Beginn des Topic-Pfades entfernen. Da hatte ich auch schon das Problem, dass autocreate durcheinanderkam. Ansonsten: sind alle beteiligten Module aktuell?
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 03 Juni 2019, 11:51:34
Hab das autocreate von simpel auf complex umgestellt gehabt. Sonst nix.

Du meinst in der Definition von espeasy den ersten schrägstrich entfernen?

habe erst heute ein FHEM Update durchegführt !
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: Beta-User am 03 Juni 2019, 12:11:28
Im Web-IF des ESPEasy-Devices (dein Screenshot) bei "Controller Publish" und "Controller Subscribe" den "/" am Anfang des Pfades (vor %sysname%).

autocreate steht jetzt wieder auf "simple"? (Das Teil schient zwar kein JSON zu senden, aber sicherheitsbalber...)

Und es findet sich auch einmal "Licht" und einmal "Lux" in dem, was MQTT2_SERVER empfangen hat bzw. in den log-Auszügen. War evtl. auch eine Spracheinstellungsänderung auf dem ESPEasy selbst, jedenfalls war es unterschiedlich, obwohl es vom selben Absender z kommen schien...

Nur sicherheitshalber: Nach dem update auch shutdown restart durchgeführt?
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 03 Juni 2019, 12:17:09
Einen restart hatte ich gemacht.

"Licht" ist der name des Sensors auf dem ESPEasy läuft. "Lux" ist der name des Wertes/Value der mitgesendet wird.
Diese beiden Name/Einheiten sind frei veränderbar.

Auch nachdem ich das 1. / entfernt habe gibt es keine Änderung.


2019.06.03 12:16:16 4 : mqtt_192.168.2.145_50884 ESPClient_5C:CF:7F:40:EB:A4 PUBLISH multisens/Licht/Lux:4587
2019.06.03 12:16:16 1 : MQTT2_DEVICE: Error evaluating state: Bareword "state" not allowed while "strict subs" in use at (eval 21908) line 1.


Habe auch mal auf meinem WIN10 rechner MQTT.FX am laufen. Dort kommt die Meldung vom Sensor ohne probleme rein.
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: Beta-User am 03 Juni 2019, 12:39:11
Hmm, dass da was ankommt, sieht man auch an den Log-Auszügen. Da scheint was mit der Verarbeitung nicht zu klappen.

Sowas hatte ich vor einiger Zeit auch mal, da hing es aber u.a. mit einer bridgeRegexp zusammen (und urplötzlich ging es dann doch, ohne dass ich rausgefunden hätte, an was es gehangen hatte).
Ist jetzt etwas stochern im Nebel: gibt es (mindestens irgendein) MQTT2_DEVICE mit einer bridgeRegexp?

Sierheitshalber noch: kannst du FHEM nochmal neu starten, nachdem du jetzt den Start-"/" weg hast?
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 03 Juni 2019, 12:51:44
Was heißt "gibt es (mindestens irgendein) MQTT2_DEVICE mit einer bridgeRegexp?"

Gruß Sascha



Gesendet von meinem E6653 mit Tapatalk

Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: Beta-User am 03 Juni 2019, 13:04:30
Das soll bedeuten:
Ob es denn irgendein FHEM-Device eines bestimmten Typs gibt, bei dem ein bestimmtes Attribut gesetzt ist?

(Bitte sei so gut und schlag ggf. die Stichworte versuchsweise zuerst in der commandref kurz nach, wenn was unklar ist).
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: DasQ am 03 Juni 2019, 15:37:32
welches MQTT protokoll nutzt du?
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 03 Juni 2019, 15:42:14
Openhab mqtt

Gesendet von meinem E6653 mit Tapatalk

Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: DasQ am 03 Juni 2019, 15:51:21
dann hast du vermutlich ne buggy version erwischt. verwende doch bitte mal eine andere espeasy version.
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 03 Juni 2019, 16:02:13
Das ist die von vor ca. 2 Wochen.

Gesendet von meinem E6653 mit Tapatalk

Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: Beta-User am 03 Juni 2019, 16:18:28
Hmm, irgendwas scheint ja reinzukommen?!?

Bitte ggf. mal den MQTT-Verkehr mithören (z.B. mit rawEvents am MQTT2_SERVER).

@DasQ: Demnach nutzt du das Duo ESPEasy/MQTT2_SERVER erfolgreich und es gibt v.a. keine Probleme wegen der vielen Doppelpunkte in der CID? Oder ist das der 2-er CLIENT+ext. Broker?
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: DasQ am 03 Juni 2019, 16:57:31
also espeasy over mqtt läuft hier astrein. zu den doppelpunkten kann ich nix sagen, bei mir ist da der Hostname des ESP drin

zu den standard topics, nutz ich noch meine eignen in den rules im espeasy


hier mal zwei list von verschiedensten ESPEASY
ein IR image
Internals:
   CID        ESP_IR
   DEF        ESP_IR
   DEVICETOPIC ESP_IR
   FUUID      5c43481e-f33f-9f3d-8270-3f2a1e9f24be09d5
   IODev      MQTT2_Broker
   LASTInputDev MQTT2_Broker
   MQTT2_Broker_MSGCNT 679
   MQTT2_Broker_TIME 2019-06-03 16:54:36
   MSGCNT     679
   NAME       ESP_IR
   NR         35
   STATE      <a href="http://192.168.1.164" target="_blank">
Online
</a>
Uptime: 1d05h34m
Luftdruck BMP: 1015.39 hPa
<br>
Temperatur DHT: 26.60°
Luftfeuchte DHT: 30.00%
<br>
Temperatur BMP: 25.86°
Luftfeuchte BMP: 31.53%
   TYPE       MQTT2_DEVICE
   READINGS:
     2019-06-03 16:54:31   DruckBMP280     1015.39
     2019-06-03 16:54:34   FeuchteBMP280   31.53
     2019-06-03 16:54:36   FeuchteDHT11    30.00
     2019-06-03 16:02:32   LWT             Online
     2019-06-03 16:54:33   TempBMP280      25.86
     2019-06-03 16:54:35   TempDHT11       26.60
     2019-01-11 19:32:02   ip              192.168.1.164
     2019-04-21 19:06:28   log             
     2019-04-21 19:06:28   mode            output
     2019-04-21 19:06:28   pin             13
     2019-04-21 19:06:28   plugin          1
     2019-05-27 19:54:10   state           samsung_exit
     2019-01-11 19:32:01   systemname      ESP-IR
     2019-06-03 16:54:30   uptime          1d05h34m
Attributes:
   IODev      MQTT2_Broker
   devStateIcon Online:10px-kreis-gruen Offline:10px-kreis-rot
   group      IR-ESP
   readingList ESP_IR:ESP-IR/status/LWT:.* LWT
ESP_IR:ESP-IR/uptime:.* uptime
ESP_IR:ESP-IR/BMP280/DruckBMP280:.* DruckBMP280
ESP_IR:ESP-IR/BMP280/TempBMP280:.* TempBMP280
ESP_IR:ESP-IR/BMP280/FeuchteBMP280:.* FeuchteBMP280
ESP_IR:ESP-IR/DHT11/TempDHT11:.* TempDHT11
ESP_IR:ESP-IR/DHT11/FeuchteDHT11:.* FeuchteDHT11
   room       Wetter,Wohnzimmer
   setList    Lauter         ESP-IR/cmd event,Lauter
Leiser         ESP-IR/cmd event,Leiser
Pioneer_on_off ESP-IR/cmd event,Pioneer_on_off
samsung_oben   ESP-IR/cmd event,samsung_oben
samsung_unten  ESP-IR/cmd event,samsung_unten
samsung_links  ESP-IR/cmd event,samsung_links
samsung_rechts ESP-IR/cmd event,samsung_rechts
samsung_ok     ESP-IR/cmd event,samsung_ok
samsung_on_off ESP-IR/cmd event,samsung_on_off
samsung_lauter ESP-IR/cmd event,samsung_lauter
samsung_leiser ESP-IR/cmd event,samsung_leiser
samsung_return ESP-IR/cmd event,samsung_return
samsung_exit   ESP-IR/cmd event,samsung_exit
samsung_source ESP-IR/cmd event,samsung_source
   stateFormat <a href="http://ip" target="_blank">
LWT
</a>
Uptime: uptime
Luftdruck BMP: DruckBMP280 hPa
<br>
Temperatur DHT: TempDHT11°
Luftfeuchte DHT: FeuchteDHT11%
<br>
Temperatur BMP: TempBMP280°
Luftfeuchte BMP: FeuchteBMP280%
   webCmd     Lauter:Leiser


und einmal von nem standard espeasy
Internals:
   CID        ESP_Kuechenuhr
   DEF        ESP_Kuechenuhr
   DEVICETOPIC ESP_Kuechenuhr
   FUUID      5c43481e-f33f-9f3d-6783-1504246ec895d104
   IODev      MQTT2_Broker
   LASTInputDev MQTT2_Broker
   MQTT2_Broker_MSGCNT 342
   MQTT2_Broker_TIME 2019-06-03 16:49:48
   MSGCNT     342
   NAME       ESP_Kuechenuhr
   NR         32
   STATE      <a href="http://192.168.1.161" target="_blank">
Online
</a>
Uptime: 0d07h02m
Temperatur: 25.50°
Luftfeuchte: 35.10%
   TYPE       MQTT2_DEVICE
   OLDREADINGS:
   READINGS:
     2019-06-03 10:01:38   LWT             Online
     2019-06-03 16:49:48   h               35.10
     2019-05-23 11:19:14   ip              192.168.1.161
     2019-04-21 16:43:44   systemname      ESP_Kuechenuhr
     2019-06-03 16:49:48   t               25.50
     2019-06-03 16:49:47   uptime          0d07h02m
Attributes:
   IODev      MQTT2_Broker
   devStateIcon Online:10px-kreis-gruen Offline:10px-kreis-rot
   event-on-change-reading .*
   genericDeviceType thermometer
   group      ESP
   homebridgeMapping clear CurrentRelativeHumidity=h CurrentTemperature=t
   readingList ESP_Kuechenuhr:/ESP_Kuechenuhr/ip:.* ip
ESP_Kuechenuhr:/ESP_Kuechenuhr/uptime:.* uptime
ESP_Kuechenuhr:/ESP_Kuechenuhr/h:.* h
ESP_Kuechenuhr:/ESP_Kuechenuhr/t:.* t
ESP_Kuechenuhr:/ESP_Kuechenuhr/status/LWT:.* LWT
   room       Homekit,Kueche
   siriName   Temperatur
   stateFormat <a href="http://ip" target="_blank">
LWT
</a>
Uptime: uptime
Temperatur: t°
Luftfeuchte: h%
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: DasQ am 03 Juni 2019, 17:02:11
so jetzt hab ichs geschnallt.

vergib dem ding mal nenn ordentlichen namen
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: Beta-User am 03 Juni 2019, 17:44:54
@DasQ:
Danke vorab mal für die Bestätigung, dass das grundsätzlich klappt und auch nicht an dem initialen Schrägstrich liegt.

@sash.sc:
Da das mit den Doppelpunkten ggf. ein generelles Problem iVm. autocreate darstellen _könnte_, wäre es noch gut, wenn du uns Versionsinfos zu MQTT2_DEVICE und MQTT2_SERVER zukommen lassen könntest und wenigstens auszugsweise den MQTT-Verkehr von diesem ESP her. Wäre hilfreich, wenn Rudi hier mitliest und das nachstellen will ;) . Dann hat ggf. der nächste nicht dasselbe Problem...

(@DasQ: Das ist ausdrücklich keine Kritik an dem Vorschlag, das Problem auf andere Weise zu beseitigen, ich habe nur den Wunsch, die "MQTT2_Welt" möglichst so mitzugestalten, dass man als User möglichst mit den Default-Einstellungen werkeln kann, wenn dies nicht grade ausdrücklich durch den firmwareersteller empfohlen wird ("tasmota" als Gerätename-default).)
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 03 Juni 2019, 18:11:10
Schonmal vorab. Habe erst heute ein Update von fhem gemacht.
Ich schaue mal, was das log bzw Event Monitor dann hergibt.
Oder gibt es noch eine andere Möglichkeit den mqtt Verkehr mitzuschneiden?

Danke für eure Hilfe.

Gruß Sascha
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 03 Juni 2019, 18:14:56
Zitat von: DasQ am 03 Juni 2019, 17:02:11
so jetzt hab ichs geschnallt.

vergib dem ding mal nenn ordentlichen namen
Werde ich nachher mal machen und dann schauen.




Gesendet von meinem E6653 mit Tapatalk

Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: Beta-User am 03 Juni 2019, 18:18:35
Zitat von: Beta-User am 03 Juni 2019, 16:18:28
Bitte ggf. mal den MQTT-Verkehr mithören (z.B. mit rawEvents am MQTT2_SERVER).
Ist m.E. besser als das log.

Und das mit dem update hatte ich schon verstanden, bitte trotzdem die version-Ausgabe (ist nur zur Sicherheit, manchmal geht auch irgendwas mit dem update schief, ist versehentlich noch exclude from update gesetzt usw...)
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 03 Juni 2019, 18:53:18
Hier schonmal die version infos.


10_MQTT2_DEVICE.pm         19481 2019-05-29 07:44:56Z rudolfkoenig
00_MQTT2_SERVER.pm         18794 2019-03-05 10:56:08Z rudolfkoenig


Habe bei espeasy unter den Tools das gefunden. (show JSON output)


{"System":{
"Build":20103,
"Git Build":"mega-20190511",
"System Libraries":"ESP82xx Core 2_4_2, NONOS SDK 2.2.1(cfd48f3), LWIP: 2.0.3 PUYA support",
"Plugins":49,
"Plugin description":" [Normal] [IR]",
"Local Time":"1970-00-00 00:00:00",
"Unit Number":1,
"Unit Name":"multisens",
"Uptime":39,
"Last Boot Cause":"Manual reboot",
"Reset Reason":"Hardware Watchdog",
"Load":21.80,
"Load LC":3148,
"CPU Eco Mode":"false",
"Free RAM":13920
},
"WiFi":{
"Hostname":"multisens-1",
"IP Config":"Static",
"IP Address":"192.168.2.145",
"IP Subnet":"255.255.255.0",
"Gateway":"192.168.2.1",
"STA MAC":"5C:CF:7F:40:EB:A4",
"DNS 1":"8.8.8.8",
"DNS 1":"8.8.8.8",
"SSID":"WLAN-DFB306",
"BSSID":"44:4E:6D:68:29:3E",
"Channel":13,
"Connected msec":2308996,
"Last Disconnect Reason":1,
"Last Disconnect Reason str":"(1) Unspecified",
"Number Reconnects":0,
"Force WiFi B/G":"false",
"Restart WiFi Lost Conn":"false",
"Force WiFi No Sleep":"false",
"Periodical send Gratuitous ARP":"false",
"Connection Failure Threshold":0,
"RSSI":-70
},
"Sensors":[
{
"TaskValues": [
{"ValueNumber":1,
"Name":"Temperature",
"NrDecimals":1,
"Value":24.5
},
{"ValueNumber":2,
"Name":"Humidity",
"NrDecimals":1,
"Value":53.3
},
{"ValueNumber":3,
"Name":"Pressure",
"NrDecimals":1,
"Value":1015.1
}],
"DataAcquisition": [
{"Controller":1,
"IDX":0,
"Enabled":"true"
},
{"Controller":2,
"IDX":0,
"Enabled":"false"
},
{"Controller":3,
"IDX":0,
"Enabled":"false"
}],
"TaskInterval":60,
"Type":"Environment - BMx280",
"TaskName":"BME",
"TaskEnabled":"true",
"TaskNumber":1
},
{
"TaskValues": [
{"ValueNumber":1,
"Name":"Lux",
"NrDecimals":0,
"Value":1111
}],
"DataAcquisition": [
{"Controller":1,
"IDX":0,
"Enabled":"true"
},
{"Controller":2,
"IDX":0,
"Enabled":"true"
},
{"Controller":3,
"IDX":0,
"Enabled":"false"
}],
"TaskInterval":30,
"Type":"Light/Lux - BH1750",
"TaskName":"Licht",
"TaskEnabled":"true",
"TaskNumber":2
},
{
"TaskValues": [
{"ValueNumber":1,
"Name":"RSSI",
"NrDecimals":0,
"Value":-68
},
{"ValueNumber":2,
"Name":"uptime",
"NrDecimals":2,
"Value":-1.00
},
{"ValueNumber":3,
"Name":"uptime",
"NrDecimals":2,
"Value":192.00
},
{"ValueNumber":4,
"Name":"uptime",
"NrDecimals":2,
"Value":0.00
}],
"DataAcquisition": [
{"Controller":1,
"IDX":0,
"Enabled":"true"
},
{"Controller":2,
"IDX":0,
"Enabled":"false"
},
{"Controller":3,
"IDX":0,
"Enabled":"false"
}],
"TaskInterval":60,
"Type":"Generic - System Info",
"TaskName":"RSSI",
"TaskEnabled":"true",
"TaskNumber":3
},
{
"TaskValues": [
{"ValueNumber":1,
"Name":"Temperature",
"NrDecimals":2,
"Value":25.00
}],
"DataAcquisition": [
{"Controller":1,
"IDX":0,
"Enabled":"true"
},
{"Controller":2,
"IDX":0,
"Enabled":"false"
},
{"Controller":3,
"IDX":0,
"Enabled":"false"
}],
"TaskInterval":60,
"Type":"Environment - DS18b20",
"TaskName":"Temp.Gehaeuse",
"TaskEnabled":"true",
"TaskNumber":4
},
{
"TaskValues": [
{"ValueNumber":1,
"Name":"Temperature",
"NrDecimals":2,
"Value":20.19
}],
"DataAcquisition": [
{"Controller":1,
"IDX":0,
"Enabled":"true"
},
{"Controller":2,
"IDX":0,
"Enabled":"false"
},
{"Controller":3,
"IDX":0,
"Enabled":"false"
}],
"TaskInterval":60,
"Type":"Environment - DS18b20",
"TaskName":"Temp.Ext.",
"TaskEnabled":"true",
"TaskNumber":5
}
],
"TTL":30000
}
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: DasQ am 03 Juni 2019, 19:07:41
Zitat von: Beta-User am 03 Juni 2019, 17:44:54

(@DasQ: Das ist ausdrücklich keine Kritik an dem Vorschlag, das Problem auf andere Weise zu beseitigen, ich habe nur den Wunsch, die "MQTT2_Welt" möglichst so mitzugestalten, dass man als User möglichst mit den Default-Einstellungen werkeln kann, wenn dies nicht grade ausdrücklich durch den firmwareersteller empfohlen wird ("tasmota" als Gerätename-default).)
default beim esp-easy ist uncool ... der ist nämlich immer gleich ESPClient_ wenn mich nicht alles täuscht (gefolgt von der MAC adresse). der wird nicht dynamisch aus irgendwelchen ic serials gebaut. das ding ist aber weit komplexer. denn der kann auch die namen dynamisch im lan verwalten, durch fortlaufende nummer. da übernimmt dann ein "master" die vergabe der fortlaufenden nummern. (zweks mesh)
ich meinte mit "gib dem ding nenn richtigen namen", das vermutlich das häckchen  im 2. screenshot(voriges posting) vergessen wurde.

und ähh jetzt bitte nicht schlagen  ;D ;) ich hab dir hier mal noch ein screener von einer anderen espeasy-version, da kannst dann den namen variabel nach jedem reconnect haben.
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 03 Juni 2019, 20:52:15
Zitat von: Beta-User am 03 Juni 2019, 16:18:28
Hmm, irgendwas scheint ja reinzukommen?!?

Bitte ggf. mal den MQTT-Verkehr mithören (z.B. mit rawEvents am MQTT2_SERVER).

@DasQ: Demnach nutzt du das Duo ESPEasy/MQTT2_SERVER erfolgreich und es gibt v.a. keine Probleme wegen der vielen Doppelpunkte in der CID? Oder ist das der 2-er CLIENT+ext. Broker?
Wie bekomme ich das mit dem raw Event hin? Habe da nichts aussagekräftiges gefunden.

Gruß Sascha

Gesendet von meinem E6653 mit Tapatalk

Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: rudolfkoenig am 03 Juni 2019, 21:44:20
ZitatWäre hilfreich, wenn Rudi hier mitliest und das nachstellen will
Wenn ich was fixen soll, dann bitte auch eine Schritt-fuer-Schritt Anleitung. Ich habe gerade getestet:
fhem> define ac autocreate
fhem> define m2s MQTT2_SERVER 1883 global
fhem> info timer
% mosquitto_pub -i ESPClient_5C:CF:7F:40:EB:A4 -t /multisens/Licht/Lux -m 20915.83
fhem>
2019-06-03 21:40:33 MQTT2_SERVER m2s nrclients: 1
2019-06-03 21:40:33 Global global UNDEFINED MQTT2_ESPClient_5C_CF_7F_40_EB_A4 MQTT2_DEVICE ESPClient_5C_CF_7F_40_EB_A4
2019-06-03 21:40:33 Global global DEFINED MQTT2_ESPClient_5C_CF_7F_40_EB_A4
2019-06-03 21:40:33 MQTT2_SERVER m2s nrclients: 0
2019-06-03 21:40:33 Global global ATTR MQTT2_ESPClient_5C_CF_7F_40_EB_A4 readingList ESPClient_5C_CF_7F_40_EB_A4:/multisens/Licht/Lux:.* Lux
2019-06-03 21:40:33 MQTT2_DEVICE MQTT2_ESPClient_5C_CF_7F_40_EB_A4 Lux: 20915.83


=> Ich sehe kein Problem mit / im Topicnamen, oder : im MQTT-ClientId.
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: rudolfkoenig am 03 Juni 2019, 21:52:05
Zitat2019.06.03 11:09:10 1 : MQTT2_DEVICE: Error evaluating state: Bareword "state" not allowed while "strict subs" in use at (eval 2754) line 1.
Diese Meldung kommt vom bridgeRegexp. Laut Doku:
ZitatbridgeRegexp <regexp> newClientId ...
      Used to automatically redirect some types of topics to different
      MQTT2_DEVICE instances. The regexp is checked against the
      clientid:topic:message and topic:message. The newClientId is a perl
      expression!.
Laut Fehlermeldung war newClientId in diesem Fall state, was kein (gueltiger) Perl-Ausdruck ist.
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 04 Juni 2019, 06:50:58
Ich verstehe das jetzt so, dass an den topics was geändert werden muss?!

Gesendet von meinem E6653 mit Tapatalk

Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: Beta-User am 04 Juni 2019, 07:25:18
Nope, du sollst uns weiterhin wissen lassen, ob irgendwo ein bridgeRegexp-Attribut gesetzt ist.

Zu rawEvents steht btw. was in der cref. Bitte ggf. dazu konkrete Fragen stellen, aber was sich hinter dem Stichwort "regexp" verbirgt, sollte eigentlich klar sein. "Notfalls" wäre mal ausprobieren zu empfehlen, da lernt man uU. manches dabei...



@DasQ: bisher war ich davon ausgegangen, dass eine MAC-Adresse in der Regel aus dem betr. Chip ausgelesen wird, was man zwar überschreiben kann, aber eben default-mäßig eindeutig ist...
Und dass man alle möglichen Einstelloptionen hat, ist schon klar; wie gesagt: es geht darum, dass der default sinnvoll verarbeitet werden kann; und der ist hier eben nicht "random".
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: DasQ am 04 Juni 2019, 09:18:56
Über default oder default könnte man jetzt herrlich streiten.
Ich bin der Meinung, das wenn ein Hersteller sich des recht rausnimmt, sein mqtt, bewusst oder ungewollt an der breiten Masse vorbei zu interpretiert/vermurksen, dann muss man sich nur im aller äußersten Fall auf sein Spiel einlassen, denn dann wenn mans nicht ändern kann.

Da jetzt aber espeasy, tasmota und octoprint, frei Opensoucre Projekte sind, dort auch nur Leute entwickeln wie du und ich. Die im besten Fall, gemeinsamen Erfahrungen untereinander ausgetauscht und Sachen dann in eine Richtung weiter entwickelt, wo sie ,,einfacher" werden ... nicht komplizierter als es eigentlich sein müsste. Erst dann ziehen wir gemeinsam an einem Strang und es geht was vorwärts. warum hat sich OpenHab das recht raus genommen, sein eigenes mqtt "standard" süppchen zu kochen?(<--nicht antworten das is ein joke)

Im Fall von meim 3D-Drucken (https://forum.fhem.de/index.php/topic,99512.msg929074.html#msg929074) und der opensouce Steuerungssoftware Octoprint, habe ich die Entwickler gebeten, sie mögen sich der Sache annehmen. Dabei rausgekommen ist das es jetzt auch ein ,,default" Name gibt, den man aber, auch jetzt, ändern kann. ... da war in mein augen die Lösung von hier, absolut ein Unding und hätte das tollste Feature von mqtt2 zu nichte gemacht.

Hier in dem Fal jetztl, erstmal mit einer funktionierenden Konfiguration, sich langsam an das Problem hinarbeiten und es dann lösen. Zunächstmal sollte man als erstes Konfigurationsfehler ausschliessen, danach erst kann man aussagen treffen, ob die Firmware nenn Schuss hat (hier jetzt, sehr wahrscheinlich) und erst danach mach ich mir Gedanken .... ob zwei eigenständige Entwicklungen sich auseinander bewegen.

Wenn willst, stell ich genau diese Situation hier, für uns zu testzwecken explizit nach. Is kein ding, ich als halbtoter Veteran, hab Zeit und den Nerv, sowas auf den Grund zu gehn. Ich flash ganz einfach seine espversion auf ein meiner vielen Spiel-Esp  ;)
Und dann zeig ich dir mindesten 2 default mqtt Einstellungen, mit den FHEM nicht auf anhieb klar kommt (jetzt nicht abwertend, Is einfach inkompatibel)(so sagt man doch). Mit all sein schwer bis unmöglich händelbaren Nebeneffekten.
Und dann können wir uns nochmals drüber unterhalten, ob und warum man sowas unbedingt per default so machen sollt.

Bei allen andern, käuflich erwerbbaren Produkten geb ich dir aber absolut recht. Da kann man nur schwer was ändern, also muss man sich den default-Schuh anziehen.
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 04 Juni 2019, 09:29:52


Internals: CID zigbee_pi
DEF zigbee_pi
DEVICETOPIC MQTT2_zigbee_pi
FUUID 5c43027c-f33f-852e-9426-91a86e4f32b75515 FVERSION 10_MQTT2_DEVICE.pm:0.194810/2019-05-29
IODev mqtt
NAME MQTT2_zigbee_pi
NR 406
STATE ???
TYPE MQTT2_DEVICE

Attributes:

IODev mqtt
bridgeRegexp .* state
room MQTT
setStateList on off


Gesendet von meinem E6653 mit Tapatalk
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: Beta-User am 04 Juni 2019, 09:38:40
@sash.sc:

Danke für die Rückmeldung. Ist mir zwar schleierhaft, wie Rudi da draufgekommen ist, aber vielleicht kannst du uns erklären, wo die bridgeRegexp herkommt?

Um es zu reparieren: Bitte schau mal in die Praxisbeispiele zu MQTT2 im Wiki und wende dann das passende und aktuelle template an.
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 04 Juni 2019, 09:56:44
Werde die bridge erstmal löschen...

Gebe dann wieder Rückmeldung

Gesendet von meinem E6653 mit Tapatalk

Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: rudolfkoenig am 04 Juni 2019, 11:01:56
ZitatIst mir zwar schleierhaft, wie Rudi da draufgekommen ist
Ich habe nach der Fehlermeldung im Quellcode gesucht.
Ich habe jetzt die Meldung ergaenzt, damit das naechste mal das nicht notwendig ist.
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: Beta-User am 04 Juni 2019, 11:13:24
...da hätte man draufkommen können... Die Fehlermeldung war nur so generisch, dass ich den Suchbegriff glatt überlesen hatte, jetzt ist es m.E. klarer, Danke!

@sash.sc:
Klappt es jetzt, wenn die bridgeRegexp weg/geändert ist?
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 04 Juni 2019, 11:21:01
Schaue nach wenn ich zuhause bin. Bin noch unterwegs.



Gesendet von meinem E6653 mit Tapatalk

Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 04 Juni 2019, 14:53:55
So, jetzt wo die zigbee2mqtt Bridge weg ist (state .*, irgendwie sowas), klappte es auch wieder mit dem automatischen anlegen von devices.

Hier jetzt mal der Auszug von dem neuen Device (Espeasy Sensor mit MQTT Unterstützung)


Internals:
   CFGFN     
   CID        multisens_1
   DEF        multisens_1
   DEVICETOPIC MQTT2_multisens_1
   FUUID      5cf66882-f33f-852e-2538-a64dd2ac22c625e6
   IODev      mqtt
   LASTInputDev mqtt
   MSGCNT     6
   NAME       MQTT2_multisens_1
   NR         44287
   STATE      ???
   TYPE       MQTT2_DEVICE
   mqtt_MSGCNT 6
   mqtt_TIME  2019-06-04 14:52:02
   READINGS:
     2019-06-04 14:48:03   LWT             Connected
     2019-06-04 14:52:02   Lux             4277
Attributes:
   IODev      mqtt
   readingList multisens_1:/multisens/status/LWT:.* LWT
multisens_1:/multisens/Licht/Lux:.* Lux
   room       99_neu


Die Def von der zigbee2mqtt Bridge war damals aus der WIKI gewesen ! ;-)

Kann man des das Problem irgendwie abfangen ?!?!

Gruß und Danke
Sascha

Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: Beta-User am 04 Juni 2019, 14:59:27
Zitat von: sash.sc am 04 Juni 2019, 14:53:55
Die Def von der zigbee2mqtt Bridge war damals aus der WIKI gewesen ! ;-)
Das kommt mir zwar sehr spanisch vor, aber wenn du meinst... Ist jedenfalls seit langem ganz anders.

Zitat von: sash.sc am 04 Juni 2019, 14:53:55Kann man des das Problem irgendwie abfangen ?!?!
Zitat von: Beta-User am 04 Juni 2019, 09:38:40
Um es zu reparieren: Bitte schau mal in die Praxisbeispiele zu MQTT2 im Wiki und wende dann das passende und aktuelle template an.
Irgendwie werde ich den Eindruck nicht los, hier alles doppelt schreiben zu müssen...
Titel: Antw:[gelöst] MQTT2 - Neues Device wird nicht angelegt ! "bareword....."
Beitrag von: sash.sc am 04 Juni 2019, 15:11:53
Bin mal eben durch die zigbee2mqtt in der fhem wiki geflogen. Werde es bei zeiten, wenn die Hardware da ist, dann so anwenden.
Den Stick habe ich schonmal. fehlen nur noch die lampen und der rest.

Danke für eure Unterstützung.

Die Werte der anderen Sensoren kommen jetzt auch ohne Probleme rein !  ;D

Gruß
Sascha