Wie KNX Bus einbinden ?

Begonnen von visionsurfer, 16 Oktober 2016, 09:17:32

Vorheriges Thema - Nächstes Thema

visionsurfer

Guten Morgen,

Ich stelle mir gerade die Frage, wie ich den KNX Bus einbinden kann.

Ich habe ein IP Gateway.

Im Wiki hab ich den Eintrag von KNXd gelesen. Dort steht ja beschrieben wie man das Installiert. Bei mir läuft FHEM auf einem Raspberry. Doch wie geht es weiter? Danach muss das ganze doch noch in FHEM angelegt werden und ich muss doch auch meine Geräte irgendwie anlegen und ansprechen können? Dazu finde ich keine Anleitung oder Tutorial. Nur auf Basis von dem Knx Koppler von Busware. Habe ich aber nicht. Ich nutze ein IP Gateway.

Die Knx Nummern meiner Geräte habe ich. Ich hab vom Elektriker eine lange Liste bekommen.

Doch wie spreche ich die dann an, bzw. definiere ich diese dann, nach dem ich KNXd installiert habe?

Oder bin ich auf dem falschen Weg?

Vielleicht kann ein Knx Profi helfen ?

Grüße
Visionsurfer

visionsurfer

Hallo,

da ich ja ein Fan von ausprobieren bin, hab ich also selbst mal probiert.

Wenn ich es richtig verstanden habe, braucht man KNXd.

Ich habe ja ein Raspberry mit Raspbian Jessie (nicht die lightversion) drauf und FHEM bereits installiert.
Somit hab ich alles wie hier beschrieben ist installiert: http://www.fhemwiki.de/wiki/Knxd

Ich habe nun in den entsprechenden Dateien folgendes stehen:

DAEMON_ARGS="-u /tmp/eib -u /var/run/knx -i -b ipt:192.168.178.223"

und in der anderen Datei:

KNXD_OPTS=="-u /tmp/eib -u /var/run/knx -i -b ipt:192.168.178.223"

Den Rest hab ich dann zu Ende geführt. Also ich zwischendurch mal den Status mit dem Code:

/etc/init.d/knxd status

abgefragt habe, sah es irgendwie noch normal aus.
Zum Schluss hab ich aber ein

sudo reboot

ausgeführt. Als ich mich mit Putty wieder einloggen konnte hab ich den Status Code noch mal eingegeben. Dann kommt eine Fehlermeldung. Bzw. ich denke das es eine Fehlermeldung ist ?
Nun weiß ich leider nicht weiter. In FHEM hab ich noch nichts gemacht, weil ich davon ausgegangen bin, dass es ein Fehlercode ist ?

Siehe Anhang.

Hat noch jemand eine Idee oder kann mir helfen ? Ich hab an anderer Stelle gehört das man gar kein KNXd braucht, wenn man seine Geräte nur steuern will ?

Grüße,
Visionsurfer

Andi291

Abend!

Das ist falsch.
Du benötigst den KNXD - er macht die Brücke zum KNX.

Dann die TUL in der FHEM konfigurieren und die einzelnen Geräte. Lies die Doku zur TUL und zum KNX. Da stehen ausreichend Beispiele drin. Als kompletter Newbie bitte auch mal nach KNX Grundlagen googlen. Gar so trivial isses nicht.

http://fhem.de/commandref_DE.html#doctop

P.S.: Merkt man schon am Wording :-) Der Elektriker hat Dir hoffentlich eine Liste mit Gruppen- und nicht mit Geräteadressen gegeben. Die Geräteadressen sind in erster Näherung nutzlos.

Grüße, Andi

visionsurfer

Hi,

ja sorry ich bin noch kein Profi. Bisher hab ich alles ganz gut hinbekommen.
Ich lese schon das ganze Wochenende, alles was ich zu KNX finden kann. Eigentlich ist ja hier die Wiki auch gut gemacht: http://www.fhemwiki.de/wiki/Knxd
Hab ich alles so ausgeführt.

Doch dann kommt trotzdem die Fehlermeldung. Meiner Meinung steht dort, dass irgendwas nicht läuft.

Wenn ich versuche in FHEM das ganze einzubinden, raucht mein komplettes FHEM ab.

Ich hab dort folgendes eingegeben:

define KNX TUL eibd:localhost 1.1.255

Danach läd sich die Seite einen Wolf und nichts geht mehr. Nur noch Stecker raus hilft.
Also die Datei die vom Elektriker gekommen ist, heißt "Gruppenadresse". Hier mal die Liste im Anhang. Sieht meiner Meinung nach richtig aus. Das will ich ja alles noch gar nicht nutzen. Ich wäre erst mal froh wenn ich es einfach nur hinbekommen könnte, als ersten Schritte eine Lampe an und aus zu schalten.

Kannst du mit der Fehlermeldung aus meinem Screenshot etwas anfangen ? Was bräuchte man noch um der Sache auf den Grund zu gehen ?

Grüße,
Visionsurfer

Andi291

sudo knxd -e 1.1.255 -c -u /tmp/eib -b ipt:192.168.178.228

Und dann in einer anderen putty-instanz mit Groupswrite testen.

Erst wenn das läuft, an den Autostart gehen. Erst wenn auch das mit groupswrite erfolgreich, mit FHEM starten.

Grüße, Andi

visionsurfer

Ich hab dir gerade mal die beiden Configs in dem anderen Thread gepostet.
Da ist doch wahrscheinlich schon grundsätzlich ein Fehler drin, oder ?

Grüße,
Visionsurfer

visionsurfer

Hi Andi,

tut mir leid, wenn ich nerve :) Ich will es doch nur verstehen und muss halt irgendwo anfangen.

Also ich habe den Code von dir eingefügt.

Nach Bestätigung von der Eingabetaste, kam zumindest kein Fehler und es kommt sofort wieder die normale Eingabezeile.

Die ganzen Optionen habe ich mir mittlerweile mit knxd --help anzeigen lassen und angeschaut. Soweit so gut.
Aber was genau hat dein Befehl nun bewirkt ? Weil er springt sofort wieder in die nächste Eingabezeile aber ich sehe nicht, ob irgendwas passiert ist. Was ist nun im Hintergrund passiert ?

Die Optionen von deinem Code hab ich mir durchgelesen. Es wurde eine EIB Adresse zugewiesen und ein Verzeichnis und meine IP Adresse vom Gateway. OK. Und jetzt könnte man das in FHEM einbinden ?

Grüße,
Visionsurfer


Andi291

ps -ef | grep knxd zeigt Dir, dass der knxd nun läuft (vielleicht).

Mit Groupswrite kannst Du Deine Lampen an- und ausschalten.

visionsurfer

Hi,

ok. Da steht bei mir nun folgendes:

pi        1024   996  0 20:58 pts/0    00:00:00 grep --color=auto knxd

Wobei das knxd rot geschrieben ist. Rot sieht für mich nicht gut aus.


Andi291

Rot ist gut. Prozess läuft. Nun mit groupswrite versuchen, eine Lampe zu schalten.
Wenn NIO, dann "kill 1024" und den KNXD mit anderen Parametern starten.

So lange, bis die Lampe geht :-)

visionsurfer

ok. Das ist schon fast Musik in meinen Ohren :)

Hab ich gemacht, wie du gesagt hast. 2. Instanz mit Putty. Dort hab ich dann folgendes eingegeben:

knxtool groupswrite ip:localhost 1/1/13 1

1/1/13 ist meine Esstisch Lampe. 1 müsste ja "ein" bedeuten "0" aus.

Wenn ich den Befehl absende, passiert gar nichts. Lampe schaltet nicht und ich bekomme aber auch keine neue Eingabezeile. Ich muss dann mit STRG+C das ganze abbrechen. Keine Ahnung ob das normal ist ?

Stimmt meine Eingabe soweit ? Wenn ja, liegt es wohl am richten starten von KNXd ?

Grüße,
Visionsurfer

visionsurfer

Zu früh gefreut. Ich kann den Prozess mit kill 1024 nicht beenden.
Wenn ich wieder den Befehl von weiter oben ausführe um zu prüfen ob KNXd läuft, dann steht da eine andere Nummer.
Dann nehme ich wieder die andere Nummer und es geht immer noch nicht, weil er dann sofort wieder eine neue Nummer vergibt.

So geht das Spiel immer weiter.

visionsurfer

Hi,

ich schon wieder :)

Mir ist gerade noch was aufgefallen.

Ich habe den Raspberry komplett neu gestartet. Mit sudo reboot.

Dann hab ich direkt als ersten Befehl:

ps -ef | grep knxd

eingegeben. Normal dürfe doch da nichts angezeigt werden. Weil ich hab doch KNXd noch gar nicht gestartet ? Oder versteh ich da auch was falsch ?

Er zeigt mir auf jeden Fall sofort wieder an:

pi         805   778  0 21:37 pts/0    00:00:00 grep --color=auto knxd

Wobei wieder hinten das knxd in rot angezeigt wird.

Wie kriege ich das gekilled ?

Grüße,
Visionsurfer


visionsurfer

Hi,

ich habe noch mal den KNXd Status abgefragt. Dabei kommt folgendes raus:


pi@raspberrypi:/ $ sudo /etc/init.d/knxd status
● knxd.service - KNX Daemon
   Loaded: loaded (/lib/systemd/system/knxd.service; enabled)
   Active: activating (auto-restart) (Result: exit-code) since So 2016-10-16 21:51:17 CEST; 9s ago
  Process: 1024 ExecStart=/usr/bin/knxd $KNXD_OPTS (code=exited, status=1/FAILURE)
Main PID: 1024 (code=exited, status=1/FAILURE)

Okt 16 21:51:17 raspberrypi systemd[1]: Failed to start KNX Daemon.
Okt 16 21:51:17 raspberrypi systemd[1]: Unit knxd.service entered failed state.


Ich verstehe leider nicht, ob im Hintergrund nun noch knxd läuft oder nicht. Weil wenn ich es nicht sauber beendet bekomme, kann ich es ja auch nicht entsprechend starten um mit meinen Werten zu spielen, oder ?

Grüße,
Visionsurfer

visionsurfer

Wenn ich versuche mit knxd stop das ganze zu stoppen, kommt folgende Fehlermeldung:


pi@raspberrypi:/ $ /etc/init.d/knxd stop
[....] Stopping knxd (via systemctl): knxd.serviceFailed to stop knxd.service: Access denied
Warning: Stopping knxd.service, but it can still be activated by:
  knxd.socket
failed!