[Neues Modul] Xiaomi Smart Home ohne Gateway direkt an FHEM

Begonnen von neumann, 22 Februar 2018, 18:00:22

Vorheriges Thema - Nächstes Thema

sprudelverduenner

Fohes neues Jahr zusammen.

@ OdfFhem,

danke für Deine Meldung.

Ich habe in der configuration.yaml folgendes eingestellt:
advanced:
  log_level: debug


Hier nun die letzten LOG-Zeilen bevor die Bridge wieder offline ging:
Jan 01 13:38:44 raspberrypi npm[21880]: zigbee2mqtt:info  2020-01-01 13:38:44: MQTT publish: topic 'zigbee2mqtt/0x00158d00027ce0d2', payload '{"battery":91,"voltage":2985,"linkquality":44,"angle":27.87,"side":0}'
Jan 01 13:39:37 raspberrypi npm[21880]: zigbee2mqtt:debug 2020-01-01 13:39:37: Saving state to file /opt/zigbee2mqtt/data/state.json
Jan 01 13:40:38 raspberrypi npm[21880]: zigbee2mqtt:debug 2020-01-01 13:40:38: Received Zigbee message from '0x00158d00044e7aec', type 'attributeReport', cluster 'msIlluminanceMeasurement', data '{"measuredValue":27}' from endpoint 1 with groupID 0
Jan 01 13:40:38 raspberrypi npm[21880]: zigbee2mqtt:info  2020-01-01 13:40:38: MQTT publish: topic 'zigbee2mqtt/0x00158d00044e7aec', payload '{"illuminance":27,"linkquality":42,"occupancy":false,"battery":100,"voltage":3035}'
Jan 01 13:40:38 raspberrypi npm[21880]: zigbee2mqtt:debug 2020-01-01 13:40:38: Received Zigbee message from '0x00158d00044e7aec', type 'attributeReport', cluster 'msOccupancySensing', data '{"occupancy":1}' from endpoint 1 with groupID 0
Jan 01 13:40:38 raspberrypi npm[21880]: zigbee2mqtt:info  2020-01-01 13:40:38: MQTT publish: topic 'zigbee2mqtt/0x00158d00044e7aec', payload '{"illuminance":27,"linkquality":42,"occupancy":true,"battery":100,"voltage":3035}'
Jan 01 13:42:08 raspberrypi npm[21880]: zigbee2mqtt:info  2020-01-01 13:42:08: MQTT publish: topic 'zigbee2mqtt/0x00158d00044e7aec', payload '{"illuminance":27,"linkquality":42,"occupancy":false,"battery":100,"voltage":3035}'
Jan 01 13:43:08 raspberrypi npm[21880]: zigbee2mqtt:debug 2020-01-01 13:43:08: Received Zigbee message from '0x00158d00044e7aec', type 'attributeReport', cluster 'msIlluminanceMeasurement', data '{"measuredValue":31}' from endpoint 1 with groupID 0
Jan 01 13:43:08 raspberrypi npm[21880]: zigbee2mqtt:info  2020-01-01 13:43:08: MQTT publish: topic 'zigbee2mqtt/0x00158d00044e7aec', payload '{"illuminance":31,"linkquality":47,"occupancy":false,"battery":100,"voltage":3035}'
Jan 01 13:43:08 raspberrypi npm[21880]: zigbee2mqtt:debug 2020-01-01 13:43:08: Received Zigbee message from '0x00158d00044e7aec', type 'attributeReport', cluster 'msOccupancySensing', data '{"occupancy":1}' from endpoint 1 with groupID 0
Jan 01 13:43:08 raspberrypi npm[21880]: zigbee2mqtt:info  2020-01-01 13:43:08: MQTT publish: topic 'zigbee2mqtt/0x00158d00044e7aec', payload '{"illuminance":31,"linkquality":49,"occupancy":true,"battery":100,"voltage":3035}'
Jan 01 13:44:11 raspberrypi npm[21880]: zigbee2mqtt:debug 2020-01-01 13:44:11: Received Zigbee message from '0x00158d00044e7aec', type 'attributeReport', cluster 'genBasic', data '{"65281":{"1":3035,"3":18,"4":17320,"5":30,"6":[1,16777222],"10":0,"11":35,"100":0}}' from endpoint 1 with groupID 0
Jan 01 13:44:11 raspberrypi npm[21880]: zigbee2mqtt:info  2020-01-01 13:44:11: MQTT publish: topic 'zigbee2mqtt/0x00158d00044e7aec', payload '{"illuminance":35,"linkquality":52,"occupancy":true,"battery":100,"voltage":3035}'
Jan 01 13:44:38 raspberrypi npm[21880]: zigbee2mqtt:info  2020-01-01 13:44:38: MQTT publish: topic 'zigbee2mqtt/0x00158d00044e7aec', payload '{"illuminance":35,"linkquality":49,"occupancy":false,"battery":100,"voltage":3035}'


Kannst Du damit etwas anfangen oder habe ich den falschen LOG-Level gewählt ??

FHEM @ RaspberryPi 3, HMLAN, HMUART + HMRS485, Homematic, ESPEasy @ Sonoff / Shelly / ESP8266, ZigBee @ CC2531
Echo Dot, Dreambox, Yamaha MusicCast, Logitech Hub, LW-12, LD382
FRITZ!Box 7590 AX, Mesh @ FRITZ!Repeater 2400, FRITZ!Fon, iPhone 13, iPad Air 5, AppleWatch 8

OdfFhem

@sprudelverduenner

Es ist das richtige log_level - kann übrigens auch via FHEM-set-Befehl gesetzt werden.

Zielführend ist es aber wohl nicht, wenn das Logfile keine weiteren Details loggt bzw. nicht mehr fortgeschrieben wird. Es könnte allerdings sein, dass der notwendige Prozess (npm[21880]) "gestorben" ist ...

Vielleicht hilft Dir ja folgender Link weiter:
https://www.zigbee2mqtt.io/information/debug.html

Tomk

Hallo, ich habe mir auch die Osram Smart+ RGBW Strips zugelegt. Wie kann ich denn Dimmer und die Farbe verstellen? Leider hat der autocreate kein Template hinterlegt. On/off konnte ich manuell hinzufügen, aber wie gehe ich bei rgb und Helligkeit vor?

Besten Dank Vorab!



Zitat von: gramallama am 26 September 2018, 13:30:47
Moin zusammen,

vielen Dank für das Modul. Funktioniert größtenteils ohne Probleme (und das schon seit einigen Monaten). Ich habe bislang einige Xiaomi Sensoren eingebunden und neuerdings auch ein paar Osram Smart+ Steckdosen. Da diese nur ON/OFF können war das schnell eingerichtet.

Jetzt scheitere ich aber ein bisschen an dem Osram Smart+ RGBW Strip. Das Gerät wurde anstandslos gepaired. Folgender Commands habe ich schon hinzugefügt:
toggle:brightness:color_temp:color
Mit folgenden Widgets dafür:
toggle brightness:colorpicker,BRI,0,10,250 color_temp:colorpicker,CT,130,10,660 color:colorpicker,RGB

Bis auf seltsame Werte für die Farbtemperatur funktioniert auch alles, bis auf die RGB Steuerung...egal ob ich die als RGB oder HEX angebe, irgendwie kann der Strip damit nichts anfangen. Im zigbee2mqtt sind folgende Aktionen definiert:
toZigbee: generic.light_onoff_brightness_colortemp_colorxy().toZigbee

Als Rückmeldung aus dem Log kommt nur (egal was ich dort eingebe):
zigbee2mqtt:info 2018-9-26 11:09:20 Zigbee publish to '0x7cb03eaa00ab4276', lightingColorCtrl - moveToColor - {"colorx":null,"colory":null,"transtime":0} - null

Hat jemand eine Idee, wie ich das zum Laufen kriege?  :)


Steffen

Hallo,

ich habe mir Gestern mal zum Test den Ikea Signalverstärker gekauft, weil mein Aqara Bewegungsmelder im Bad öfters eine sehr schlechte Verbindung hat.

Nutzen tue ich das mit dem CC2531 Stick an Fhem und dem XiaomiMQTTDevice Modul.

Habe den Ikea Signalverstärker auch angelernt bekommen aber keine der Reichweiten scheinen sich dadurch verbessert zu haben und in Fhem taucht der Signalverstärker auch auf aber die Readings vom Signalverstärker erneuern sich dann nicht mehr.


{"type":"pairing","message":"interview_successful","meta":{"friendly_name":"0xec1bbdfffe30b62f","model":"E1746","vendor":"IKEA","description":"TRADFRI signal repeater","supported":true}}



Internals:
   CFGFN     
   DEF        unknown 0xec1bbdfffe30b62f
   FRIENDLYNAME 0xec1bbdfffe30b62f
   FUUID      5e3828d8-f33f-b82c-af14-bf8371f7a45683f1
   IODev      mqtt
   MODEL      unknown
   NAME       0xec1bbdfffe30b62f
   NOTIFYDEV  unknown 0xec1bbdfffe30b62f
   NR         43883
   SID        0xec1bbdfffe30b62f
   STATE      state
   TYPE       XiaomiMQTTDevice
   READINGS:
     2020-02-03 15:06:27   linkquality     99
     2020-02-03 15:06:27   transmission-state incoming publish received
   message_ids:
   subscribe:
     zigbee2mqtt/0xec1bbdfffe30b62f
     xiaomi/0xec1bbdfffe30b62f/#
   subscribeExpr:
     ^zigbee2mqtt\/0xec1bbdfffe30b62f$
     ^xiaomi\/0xec1bbdfffe30b62f.*$
   subscribeQos:
     xiaomi/0xec1bbdfffe30b62f/# 0
     zigbee2mqtt/0xec1bbdfffe30b62f 0
Attributes:
   IODev      mqtt
   room       Flur,XiaomiMQTTDevice
   stateFormat state

hat jemand damit Erfahrung und könnte vielleicht dazu ein paar Tips geben?


Mfg Steffen


OdfFhem

@Steffen

Eine wichtige Frage wäre bei Dir wahrscheinlich interessant, ob Du wirklich XiaomiMQTTDevice benötigst ...

Steffen

Zitat von: OdfFhem am 04 Februar 2020, 08:00:23
@Steffen

Eine wichtige Frage wäre bei Dir wahrscheinlich interessant, ob Du wirklich XiaomiMQTTDevice benötigst ...

das klingt ja so als wenn ich es nicht benötigen sollte, könntest du mir dann bitte sagen warum nicht und was die bessere Alternative wäre?

Mfg Steffen

OdfFhem

@Steffen

Angenommen, Du hast bisher nichts für XiaomiMQTTDevice gemacht, könntest Du eigentlich das MQTT2_DEVICE benutzen und für viele Möglichkeiten nutzen ...

Steffen

Zitat von: OdfFhem am 04 Februar 2020, 08:20:35
@Steffen

Angenommen, Du hast bisher nichts für XiaomiMQTTDevice gemacht, könntest Du eigentlich das MQTT2_DEVICE benutzen und für viele Möglichkeiten nutzen ...

Ok, dann sehe ich mir das gerne mal an, aber kommt das dem Problem mit dem Ikea Repeater dann dadurch näher?

Mfg Steffen

OdfFhem

@Steffen

Wenn Du Dir die MQTT2_DEVICE näher anschaust, hast Du einige Möglichkeiten. Für Dich ist dann auf jeden Fall zu schauen, was Du in diesem Bereich machen möchtest ... dein Bewegungssensor, dein Signalverstärker, ... dein MQTT2_Server bzw. Client ... Wichtig ist, dass Du mal schaust, welche Varianten Du jetzt neu machen könntest ...

Benwish

Hallo zusammen,

ich habe versucht, auf meinem Pi zigbee2mqtt zum fliegen zu bringen. Läuft auch soweit, ich habe nur ein Problem mit dem Autostart.
Die Installation liegt in /opt/zigbee2mqtt.
Wenn ich in den Ordner gehe und "npm start" ausführe, dann funktioniert auch alles:

zigbee2mqtt:info  2020-02-17 22:09:49: Logging to console and directory: '/opt/zigbee2mqtt/data/log/2020-02-17.22-09-49' fi
lename: log.txt
zigbee2mqtt:info  2020-02-17 22:09:50: Starting zigbee2mqtt version 1.10.0 (commit #8df6be8)
zigbee2mqtt:info  2020-02-17 22:09:50: Starting zigbee-herdsman...
zigbee2mqtt:info  2020-02-17 22:09:52: zigbee-herdsman started
zigbee2mqtt:info  2020-02-17 22:09:52: Coordinator firmware version: '{"type":"zStack12","meta":{"transportrev":2,"product"
:0,"majorrel":2,"minorrel":6,"maintrel":3,"revision":20190608}}'
zigbee2mqtt:info  2020-02-17 22:09:52: Currently 0 devices are joined:
zigbee2mqtt:warn  2020-02-17 22:09:52: `permit_join` set to  `true` in configuration.yaml.
zigbee2mqtt:warn  2020-02-17 22:09:52: Allowing new devices to join.
zigbee2mqtt:warn  2020-02-17 22:09:52: Set `permit_join` to `false` once you joined all devices.
zigbee2mqtt:info  2020-02-17 22:09:52: Zigbee: allowing new devices to join.
zigbee2mqtt:info  2020-02-17 22:09:52: Connecting to MQTT server at mqtt://localhost:1883
zigbee2mqtt:info  2020-02-17 22:09:53: Connected to MQTT server
zigbee2mqtt:info  2020-02-17 22:09:53: MQTT publish: topic 'zigbee2mqtt/bridge/state', payload 'online'


Jetzt möchte ich, dass die Installation automatisch beim Systemstart mitstartet. Also die Datei  /etc/systemd/system/zigbee2mqtt.service mit folgendem Inhalt erstellt:

[Unit]
Description=zigbee2mqtt
After=network.target

[Service]
ExecStart=/usr/bin/npm start
WorkingDirectory=/opt/zigbee2mqtt
StandardOutput=inherit
StandardError=inherit
Restart=always
User=pi

[Install]
WantedBy=multi-user.target


Wenn ich jetzt über systemctl starte (oder es beim Systemstart starten soll) finde ich im Logfile die folgende Fehlermeldung:

Feb 17 22:08:09 raspberrypi3 npm[1728]: internal/modules/cjs/loader.js:638
Feb 17 22:08:09 raspberrypi3 npm[1728]:     throw err;
Feb 17 22:08:09 raspberrypi3 npm[1728]:     ^
Feb 17 22:08:09 raspberrypi3 npm[1728]: Error: Cannot find module 'semver'
Feb 17 22:08:09 raspberrypi3 npm[1728]:     at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
Feb 17 22:08:09 raspberrypi3 npm[1728]:     at Function.Module._load (internal/modules/cjs/loader.js:562:25)
Feb 17 22:08:09 raspberrypi3 npm[1728]:     at Module.require (internal/modules/cjs/loader.js:692:17)
Feb 17 22:08:09 raspberrypi3 npm[1728]:     at require (internal/modules/cjs/helpers.js:25:18)
Feb 17 22:08:09 raspberrypi3 npm[1728]:     at Object.<anonymous> (/usr/share/npm/lib/utils/unsupported.js:2:14)
Feb 17 22:08:09 raspberrypi3 npm[1728]:     at Module._compile (internal/modules/cjs/loader.js:778:30)
Feb 17 22:08:09 raspberrypi3 npm[1728]:     at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
Feb 17 22:08:09 raspberrypi3 npm[1728]:     at Module.load (internal/modules/cjs/loader.js:653:32)
Feb 17 22:08:09 raspberrypi3 npm[1728]:     at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
Feb 17 22:08:09 raspberrypi3 npm[1728]:     at Function.Module._load (internal/modules/cjs/loader.js:585:3)
Feb 17 22:08:09 raspberrypi3 systemd[1]: zigbee2mqtt.service: Main process exited, code=exited, status=1/FAILURE
Feb 17 22:08:09 raspberrypi3 systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.


Hat eventuell jemand eine Idee, woran das liegen könnte?

rippi46

Hallo,

wahrscheinlich eine blöde Frage, aber hast du den Dienst enabled?

sudo systemctl enable zigbee2mqtt.service

Gruß rippi
FHEM, LMS, VDR ,Dell 9010 Ubuntu 20.04,Raspimatic, HM/HMIP, Max, Elro, Brennenstuhl u. Intertechno mit Connair.
Picoreplayer, Raspi IR-Lanadapter, Firmata(wifi), LaCrosse,
nanocul433, nanocul868, Signalduino, Connexoon,
MySensor-GW+Sensoren, RGBWW, Zigbee2mqtt,Xiaomi,Nextion,LEDMatrix,Alexa

Benwish

Ja, das hatte ich gemacht. Er versucht auch brav, nach dem Systemstart, den Dienst zu starten (und zu restarten), stirbt dann aber mit der angegebenen Fehlermeldung. Im Internet habe ich häufiger gefunden, dass diese Fehlermeldung kommt, wenn man "npm start" im falschen Ordner aufruft, aber eigentlich ist das WorkingDirectory im Start-Skript ja mit angegeben.

mahowi

Ist "pi" auch der User, unter dem zigbee2mqtt installiert ist und laufen soll?

Mein Startskript sieht eigentlich bis auf den User gleich aus:
[Unit]
Description=zigbee2mqtt
After=network.target

[Service]
ExecStart=/usr/local/bin/npm start
WorkingDirectory=/opt/zigbee2mqtt
StandardOutput=inherit
StandardError=inherit
Restart=always
User=zigbee

[Install]
WantedBy=multi-user.target


Bei mir läuft zigbee2mqtt also unter dem User "zigbee", der auch alle Rechte auf /opt/zigbee2mqtt hat.
CUBe (MAX): HT, FK | CUBe (SlowRF): ESA2000WZ
JeeLink: LaCrosse | nanoCUL433: Smartwares SHS-51001-EU, EM1000GZ
ZME_UZB1: GreenWave PowerNode, Popp Thermostat | SIGNALDuino: HE877, X10 MS14A, Revolt NC-5462,  IT Steckdosen + PIR
tado° | Milight | HUE, Lightify | SmarterCoffee

Benwish

Ja, ich habe pi alle Rechte auf dem Ordner gegeben. Läuft auch wenn ich das Ganze per "npm start" von der Konsole als User pi laufen lasse.
Ich habe das Startscript jetzt mal abgeändert und anstatt

ExecStart=/usr/local/bin/npm start
WorkingDirectory=/opt/zigbee2mqtt


den Aufruf über Node gemacht, wie im ersten Beitrag in diesem Thread beschrieben:
ExecStart=/usr/bin/node /opt/zigbee2mqtt/index.js

Damit funktioniert es jetzt  :)

petjek

Tag zusammen,

ich nutze den verregneten Sonntag gerade dazu, meine neuen Tradfri LED-Treiber anzulernen.
Das Anlernen klappt grundsätzlich auch, nur wird mir in FHEM kein neues Device mehr angelegt. Nicht mehr bedeutet in diesem Fall, dass es beim ersten Mal schon geklappt hat und ich im neuen Device auch die aktuellen Readings sehen konnte. Nur gibt es keine Möglichkeit diese zu schalten. In der Vermutung, dass da irgendetwas schief gelaufen ist habe ich das Device dann wieder gelöscht.
Ist mein erstes Leuchtlittel, dass ich versuche ans Laufen zu bekommen. Bis jetzt hatte ich nur Xiaomi-Aquara-Taster, einen Cube und den Ikea-Bewegungssensor gepairt. Also alles Devices wo ich eh nur die Readings brauche, um darauf zu reagieren.
Mache ich irgendwas falsch oder fehlt mir noch was? Bin gerade etwas ratlos.

Schönen Sonntag noch!
petjek
Die Möglichkeiten der deutschen Grammatik können einen, wenn man sich darauf, was man ruhig, wenn man möchte, sollte, einlässt, überraschen.