Conbee II und deCONZ

Begonnen von Hausierer, 06 Januar 2021, 12:56:38

Vorheriges Thema - Nächstes Thema

Spartacus

#75
Hi,

naja, der Computername ist weder in der deconz-gui noch in der deconz-gui.service. Das kann ich noch mal machen, aber wie gesagt, das GUI startet ja auch, aber er findet den Stick nicht!

Wie vermutet, das bringt nichts deconz-gui startet nicht. Kann man da nicht in ein log gucken? Beim systemctl start deconz-gui kommt keine Meldung.

wahrscheinlich fehlt auf meinem Debian irgendein Stück Software..aber was?
Fhem-System: 1 x raspberry PI Typ B, 1 x enOcean PI Typ B | Enocean: PTM210, FMS61NP, FAM14, 2 x FSR14-4x, FTS14-EM | LaCrosse: 2 x TX29D über Jeelink V3 | 1-Wire: 2 x DS18B20 über DS9490R

Spartacus

ich noch mal.

ich habe mal Folgendes eingegeben, vielleicht kann da jemand etwas gravierendes erkennen:



systemctl status deconz deconz-gui
deconz.service - deCONZ: ZigBee gateway -- REST API
   Loaded: loaded (/etc/systemd/system/deconz.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2022-01-13 22:45:11 CET; 8min ago
Main PID: 375 (deCONZ)
    Tasks: 4 (limit: 1149)
   Memory: 52.2M
   CGroup: /system.slice/deconz.service
           └─375 /usr/bin/deCONZ -platform minimal --http-port=80

Jan 13 22:45:11 conbee systemd[1]: Started deCONZ: ZigBee gateway -- REST API.
Jan 13 22:45:12 conbee deCONZ[375]: QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-christian'
Jan 13 22:45:12 conbee deCONZ[375]: libpng warning: iCCP: known incorrect sRGB profile
Jan 13 22:45:13 conbee deCONZ[375]: This plugin does not support propagateSizeHints()
Jan 13 22:45:13 conbee deCONZ[375]: This plugin does not support propagateSizeHints()
Jan 13 22:45:15 conbee deCONZ[375]: This plugin does not support propagateSizeHints()

● deconz-gui.service - deCONZ: ZigBee gateway -- GUI/REST API
   Loaded: loaded (/etc/systemd/system/deconz-gui.service; disabled; vendor preset: enabled)
   Active: inactive (dead)

Jan 13 22:53:27 conbee systemd[1]: /etc/systemd/system/deconz-gui.service:10: Unknown lvalue 'StartLimitIntervalSec' in section 'Service', ignoring

Fhem-System: 1 x raspberry PI Typ B, 1 x enOcean PI Typ B | Enocean: PTM210, FMS61NP, FAM14, 2 x FSR14-4x, FTS14-EM | LaCrosse: 2 x TX29D über Jeelink V3 | 1-Wire: 2 x DS18B20 über DS9490R

Otto123

ich verweise nochmal auf #47:
deconz Service läuft deCONZ starten, er verbindet sich nicht zum Stick.
deconz beendet, deconz-gui (muss enabled sein!, deiner ist deaktiviert) gestartet, deCONZ läuft wie gewünscht.

Der Eintrag StartLimitIntervalSec ist in der deconz-gui an der falschen Stelle. Ist bei mir auch so aber scheinbar nicht das Problem.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Benni

#78
Zitat von: Otto123 am 13 Januar 2022, 22:09:35
Das Problem bei Benni versteh ich so, dass es mehere User mit einer jeweiligen .local/... Konfiguration geben kann. Der Befehl id auf linux Ebene gibt Auskunft über die User und deren IDs :)

Die Configs, die von deCONZ verwendet werden sind halt immer unter dem der User abgelegt, unter dem der Dienst läuft. Das macht ja auch mehr oder weniger Sinn.
In der Service-Datei (bei mir die deconz.service) kann man statt der uid auch einfach den Usernamen (also bei mir deconz) eintragen, damit er den richtigen nimmt.

gb#

Edit:
Das mit dem deconz-User ist aber eine Spezialität, die v.a. mich betrifft. Bei den meisten Anwendern dürfte das mit der uid 1000 passen. Insbesondere bei einer RasPi-"Standard"-Installation sollte das der user pi sein.

Spartacus

#79
Hallo zusammen,

@ Benni:
ja, danke für das Update

@Otto:
ich bin jetzt verwirrt!

  • Wenn ich deconz enable, dann fährt mein Headless-System hoch und ich kann von jedem Browser auf phoscon zugreifen. fhem kann die angemeldeten Lichter steuern
  • Wenn ich den deconz-gui service enable, dann fährt mein Headless System zwar hoch, aber ich kann phoscon nicht erreichen; fhem kann keine Lichter steuern.  Wenn ich dann auf der Konsole deCONZ zu Fuß starte, verbindet er sich mit dem Stick und alles läuft[, Phoscon ist erreichbar/li]
Ich hatte verstanden, dass das Zigbee-GW auch ganz normal im Headless Betrieb funktioniert, wenn ich anstelle des deconz-Service den deconz-gui Service aktiviere, sodass ich bei Bedarf über meinen PC das GUI starten kann.

Wenn der "enable"  deconz-gui - Service zwingend eine deCONZ GUI benötigt, bringt mir das nichts, da ich ja keine permanente ssh Verbindung von einer Windows Kiste auf den Zigbee Server mache.

Wie gesagt. Wenn ich den deconz Service disable, dann die deconz-gui-Service enable und über ssh den deCONZ starte, läuft das auch bei mir. Sobald ich aber das Fenster vom XLaunch schließe, ist der Zigbee-Server tot und die Lichtsteuerung auch.

Meine Erwartungshaltung ist, dass ich auch mit dem deconz-gui - Service einen normalen Headless-Betrieb realisieren kann und bei Bedarf mich mit einem PC auf das GUI schalte.

Was ist hier nun korrekt?

Christian
Fhem-System: 1 x raspberry PI Typ B, 1 x enOcean PI Typ B | Enocean: PTM210, FMS61NP, FAM14, 2 x FSR14-4x, FTS14-EM | LaCrosse: 2 x TX29D über Jeelink V3 | 1-Wire: 2 x DS18B20 über DS9490R

Beta-User

...bin ja immer noch der Meinung, dass man für den temporären Start der GUI-Version kein service-file-Getausche vornehmen sollte.

Der "Trick" scheint zu sein: deconz merkt sich beim jeweiligen User die Einstellungen. Ergo muss man beim Start der GUI-Version ggf. darauf achten, dass man sich entweder mit dem passenden User anmeldet, oder eben per "sudo -u <xyz> deCONZ-GUI" deconz mit dem richtigen User startet. Viel mehr sollte es nicht sein...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Otto123

#81
Zu deinem Sprachgebrauch: enable - startet den Dienst nicht, es aktiviert ihn! systemctl enable ist Voraussetzung für ein systemctl start.

wenn ich deconz beende und dann deconz-gui starte läuft ganz normal phoscon. Du behauptest das funktioniert bei Dir nicht. Also bei mir kann auch deconz-gui (anstatt deconz) normal laufen und ich verbinde mich bei Bedarf.
Ich habe es auf einem raspbian-lite system getestet, das ist ohne gui aber vielleicht im Gegensatz zu deinem "vorbereitet"?

Ich behaupte nach wie vor: der interaktive Aufruf von deCONZ hat zwei Funktionen / Betriebsmodi:
gar kein service läuft: der Aufruf von deCONZ wirkt als das Program schlechthin.
deconz-gui läuft: der Aufruf von deCONZ wirkt nochmal wie ein Art GUI und verbindet sich zum deconz-gui Service (so sieht es zumindest in meinen Test aus)
deconz läuft: der Aufruf von deCONZ ist nutzlos

So, nochmal anders kann ich es nicht beschreiben  :-X

@Beta-User
Zitat von: Beta-User am 14 Januar 2022, 13:29:09
...bin ja immer noch der Meinung, dass man für den temporären Start der GUI-Version kein service-file-Getausche vornehmen sollte.
das verwirrt mehr als es erklärt  ::)
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Spartacus

Hi Otto,

dann müssen wir uns darauf konzentrieren, warum der deconz-gui bei mir nicht startet.

Um es noch einmal abzusichern:

auf der Headless Konsole:

systemctl disable deconz
systemctl enable deconz-gui


jetzt sollte nach einem Neustart doch ein deconz Service laufen, richtig?

Und eben dieser Service läuft nicht, auch nicht,  wenn ich systemctl start deconz-gui erneut eingebe.
Fhem-System: 1 x raspberry PI Typ B, 1 x enOcean PI Typ B | Enocean: PTM210, FMS61NP, FAM14, 2 x FSR14-4x, FTS14-EM | LaCrosse: 2 x TX29D über Jeelink V3 | 1-Wire: 2 x DS18B20 über DS9490R

Beta-User

Zitat von: Spartacus am 14 Januar 2022, 13:40:46
jetzt sollte nach einem Neustart doch ein deconz Service laufen, richtig?
...wo ist der "Bildschirm" dazu? Es gibt kein laufendes "X", da nicht per ssh verbunden...

Nochmal meine 2ct: Das enable/disable ist nicht zielführend, weil es das Verhalten beim Systemstart beeinflußt!

In der sytem-File stehen doch auch nur ein paar Parameter, die man besser direkt per Kommandozeile mitgibt, nachdem man den headless-Dienst bewußt und ausnahmsweise beendet hat.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Spartacus

Hallo,
also dann jetzt doch! Der deconz-gui - Service setzt zwingend eine GUI voraus! Das würde das Verhalten erklären, warum er nicht im headless Betrieb startet.

Christian
Fhem-System: 1 x raspberry PI Typ B, 1 x enOcean PI Typ B | Enocean: PTM210, FMS61NP, FAM14, 2 x FSR14-4x, FTS14-EM | LaCrosse: 2 x TX29D über Jeelink V3 | 1-Wire: 2 x DS18B20 über DS9490R

Beta-User

#85
Zitat von: Spartacus am 14 Januar 2022, 13:48:23
also dann jetzt doch! Der deconz-gui - Service setzt zwingend eine GUI voraus!
Nein. Er braucht ein erreichbares X (=auch für den User zugelassenes). Das ist nach meinem begrenzten Verständnis der Materie was anderes...

Und es geht um das Programm deCONZ-GUI, das ist nicht zu verwechseln mit dem service, der (auch) dieses Programm aufruft!
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Otto123

#86
Zitat von: Spartacus am 14 Januar 2022, 13:40:46
Und eben dieser Service läuft nicht, auch nicht,  wenn ich systemctl start deconz-gui erneut eingebe.
steht dazu was in journalctl ?

Ja es wird wohl so sein - es braucht eventuell ein Stück X - bei raspbian-lite ist es da und bei deinem system nicht. Da habe ich keine Idee zu - außer es so zu machen wie im deconz docker: eine tinyvnc Server dazu zu starten und der macht das X ;) muss man sich im deconz docker abgucken.

Zitat von: Spartacus am 14 Januar 2022, 13:48:23
also dann jetzt doch! Der deconz-gui - Service setzt zwingend eine GUI voraus! Das würde das Verhalten erklären, warum er nicht im headless Betrieb startet.
Nein, nur ein Stück X - quasi eine Monitor Buchse aber keinen Monitor :)

Zitat von: Beta-User am 14 Januar 2022, 13:43:36
...wo ist der "Bildschirm" dazu? Es gibt kein laufendes "X", da nicht per ssh verbunden...
Bei meinem raspbian-lite funktioniert genau das. Ohne ssh -X startet der Service

Schnelle Lösung für Spartacus!
Ist genau der Einzeiler aus dem Wiki: deconz normal laufen lassen, bei Bedarf beeenden, gui machen (phoscon läuft weiter ok wird einmal neu gestartet), gui beenden deconz wieder starten - fertig.
Das lässt sich übrigens "per doppelklick" in der Konfig von xlaunch erledigen!

Das ging ja bloß nicht wegen Deiner verkorksten extra user Konfig!?
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Spartacus

Moin,

cool! Wir scheinen der Sache näher zu kommen. Also braucht meine Debian VM eine Monitor Buchse. Jetzt muss ich nur noch verstehen, wie ich diese anlöte :-)

Aber theoretisch müsse es doch auch so gehen.


  • Headless Server booten (systemctl enable deconz)
    will man jetzt die GUI über XLaunch, dann

  • deconz-Service beenden (systemctl stop deconz)
  • Bildschirm extortieren: export DISPLAY=Pille:0.0
  • Programm deCONZ starten
  • mit GUI arbeiten
...dann XLaunch beenden

  • deconz-Service starten( systemctl start deconz.)


und das dann irgendwie über den ssh-Befehl automatisieren.
Fhem-System: 1 x raspberry PI Typ B, 1 x enOcean PI Typ B | Enocean: PTM210, FMS61NP, FAM14, 2 x FSR14-4x, FTS14-EM | LaCrosse: 2 x TX29D über Jeelink V3 | 1-Wire: 2 x DS18B20 über DS9490R

MadMax-FHEM

Zitat von: Spartacus am 14 Januar 2022, 14:07:22
und das dann irgendwie über den ssh-Befehl automatisieren.

Das wäre dann (sollte) der Einzeiler aus dem Wiki sein ;)

Zumindest bei mir unter Linux (also "empfangender" Desktop X11) geht das genau so...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Spartacus

Hallo Joachim,

ja, das habe ich auch probiert, aber das funktioniert noch nicht korrekt. Ich nehme mal an, man muss deCONZ dann unter dem richtigen User starten, oder die ssh Verbindung mit dem User aufbauen, in dessen Kontext die headless Version läuft. Da bin ich mir nicht so sicher, ob ich das immer korrekt gemacht hatte. Das werde ich noch mal testen...

Allerdings wäre das nur ein Workaround, da man den deconz-Dienst ja kurzzeitig beendet. Cooler wäre es schon, wenn man sich mit dem GUI auf den laufenden Dienst hängt!

Christian
Fhem-System: 1 x raspberry PI Typ B, 1 x enOcean PI Typ B | Enocean: PTM210, FMS61NP, FAM14, 2 x FSR14-4x, FTS14-EM | LaCrosse: 2 x TX29D über Jeelink V3 | 1-Wire: 2 x DS18B20 über DS9490R