Ankündigung

Einklappen
Keine Ankündigung bisher.

EIBD unter Ubuntu mit RS232 Busankoppler

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • xnalpf
    antwortet
    Yeah.
    Code:
    netstat -anp|grep eib
    tcp        0      0 0.0.0.0:6720            0.0.0.0:*               LISTEN      23526/eibd          
    udp        0      0 0.0.0.0:3671            0.0.0.0:*                           23526/eibd
    Gutes Forum! Guter Dirk!

    Edit: ETS3 kommuniziert bereits mit dem eibd und liefert remote auf meinem corei7 laptop in der Windows-VM schon weniger fehler zurück als direkt mit Native Windows auf dem Laptop, der an der seriellen Schnittstelle hängt. Dann werde ich mir mal mein Tablet holen...

    Ich muss mich korrigieren. Sehr gutes Forum! Sehr guter Dirk!

    Noch 'ne Edith: Tablet mit KNX Controller läuft auch. Phantastisches Forum!

    Einen Kommentar schreiben:


  • xnalpf
    antwortet
    Zitat von do13 Beitrag anzeigen
    Darf ich dich nochmal auf ein Dokument verweisen?
    Ich bitte darum! Werde ich mir mal zu gemüte führen. Aber da keiner der drei Paramter:
    Code:
    -S -T -D
    noch beim eibd hinzufügen.
    funktionieren (invalid option) denke ich mal ich habe beim Compilieren was falsch gemacht. Denn :
    Benutzt du ein fertiges eibd Paket? Wenn ja, gibt dann auch komplette Initskripte dazu.
    trifft bei mir nicht zu weil. Ich hab den eibd part aus dem aktuellen bcusdk gebaut. Und da ich den m68xx Crosscompiler nicht auf der Büchse hab musste ich mit "nur eibd bauen" und einigen anderen direktiven für die bcu mein eibd selbst backen. Da ist wohl die Unterstützung für die anderen Features flöten gegangen. Also schau ich mir auch das configure script nochmal was genauer an.
    Danke für die Hinweise bis da hin. Man fühlt sich immer wie ein Idiot wenn man in Foren so offensichtlich "einfache" Fragen stellt. Aber es ist dann schon immer sehr hilfreich, wenn man den freundlichen Tipp kriegt doch mal in diese Dokument zu schauen oder jenen Thread zu lesen. Da weiss man dann zumindest schon mal, dass man nicht ganz aufm Holzweg ist!

    Einen Kommentar schreiben:


  • do13
    antwortet
    Zitat von xnalpf Beitrag anzeigen
    A
    zeigt mir aber, dass der eibd auf tcp/6720 lauert. Da fehlt mir also noch was. Evtl. hat da ja noch jemand den richtigen Schubser für mich!
    Darf ich dich nochmal auf ein Dokument verweisen?

    http://www.auto.tuwien.ac.at/~mkoegl...kdoc-0.0.5.pdf
    Nicht erschrecken. Brauchst erst ab Seite 159 zu lesen.
    Unter
    10.2.1. Command line interface
    sind die optionen vom eibd beschrieben.

    Du brauchst dann speziell noch den 10.2.5. EIBnet/IP server Teil.

    Für den Anfang solltest du mit Tunneling beginnen. Also

    Code:
    -S -T -D
    noch beim eibd hinzufügen.
    Benutzt du ein fertiges eibd Paket? Wenn ja, gibt dann auch komplette Initskripte dazu.


    Dirk

    Einen Kommentar schreiben:


  • xnalpf
    antwortet
    Ach ja, manchmal ist man halt doch einfach nur selbst schuld. Ich danke do13 vielmals für den kleinen Schubser. Als langjähriger Linux-User habe ich es nicht für nötig befunden mal ins readme zu schauen aber nachdem ich das gemacht hab funktionier jetzt alles wie es soll. Wichtig war natürlich auch das setserial /dev/ttyS0 uart none. Dann habe ich noch die udev regeln ins richtige Verzeichnis kopiert und schon darf auch automatisch jeder user auf die /dev/eibX Devices zugreifen. Und nun ist auch der busmonitor1 wesentlich gesprächiger. Jetzt muss ich nur noch rauskriegen, wie ich den Clients beibringe anständig mit dem eibd zu kommunizieren. Also z.B. ETS3 was wohl gehen soll. Und die Android App. Die reden aber so ich das richtig verstanden habe das knxnetip protokoll und das läuft wohl über udp/3671. Ein
    Code:
    netstat -anp |grep eib
    tcp        0      0 0.0.0.0:6720            0.0.0.0:*               LISTEN      13381/eibd
    zeigt mir aber, dass der eibd auf tcp/6720 lauert. Da fehlt mir also noch was. Evtl. hat da ja noch jemand den richtigen Schubser für mich!

    Einen Kommentar schreiben:


  • xnalpf
    antwortet
    Erst mal danke für die Antwort. Also ich habe eine Busch-Jaeger EIB KNX Schnittstelle, RS232, 2fach, 6186/2. Und die kernelmodule sind aus dem Sourcepaket compiliert und auch geladen.
    Code:
    lsmod|grep eib
    eib_8250               23296  0 
    eib_pei16              27140  0 
    eib_common             31756  2 eib_8250,eib_pei16
    Aber der aufruf wie aus dem Readme (ja, sollte ich mal lesen, mach ich heute abend) bringt das hier:
    Code:
    eibd -u bcu1:/dev/eib0
    W00000001: EIBD should not run as root
    initialisation of the backend failed
    Im syslog steht nur das hier:

    Nov 25 13:40:19 vdr kernel: eib: open serial 0

    Ich mach mich mal ans readme...

    Einen Kommentar schreiben:


  • do13
    antwortet
    Zitat von xnalpf Beitrag anzeigen
    Kann mir einer einen Tipp geben, was ich beim eibd noch falsch mache? Oder einen Hinweis wo ich mich weiter einlesen kann.
    Du benutzt wirklick eine bcu1?
    Den bcu1driver hast du übersetzt und geladen? Wenn du das entsprechende Sourcepaket benutzt hast, solltest du auch das README darin gelesen haben. Dort steht dann:
    To start eibd on it, use:
    eibd -u bcu1:/dev/eib0

    Ich würde mir definitiv die Zeit sparen und in eine andere Schnittstelle investieren.
    Dirk

    Einen Kommentar schreiben:


  • xnalpf
    antwortet
    So, ich hatte am Wochenende nochmal etwas Zeit mich mit dem eibd zu beschäftigen. Leider kann ich weder vom BUS lesen noch schreiben. Es kommt scheinbar nix am seriellen Port an. Wenn ich auf dem Rechner in einer VM ein Windows starte und darin ETS aufrufe kann ich alle Nachrichten auf dem BUS mitlesen und auch Nachrichten senden.
    Kann mir einer einen Tipp geben, was ich beim eibd noch falsch mache? Oder einen Hinweis wo ich mich weiter einlesen kann. Ich bin hier momentan leider noch etwas orientierungslos weil ich grad erst in das Thema einsteige.

    Einen Kommentar schreiben:


  • xnalpf
    antwortet
    Hi,
    ich hab jetzt auf meinem Linux-Rechner an dem eine BCU1 hängt die Kernelmodule geladen und den eibd gestartet. Da kommt dann das hier:

    eibd -e 3.2.255 bcu1:/dev/ttyS0 -i -t 1023
    Layer 1(08090668,528F3F82) Open
    Layer 1(08090668,528F3F82) Driver select extension missing
    Layer 1(08090668,528F3F82) Opened
    Layer 2(080A0A18,528F3F82) Open
    Layer 2(080A0A18,528F3F82) Opened
    Layer 3(080B0DB0,528F3F82) Open
    Layer 2(080A0A18,528F3F82) OpenL2
    Layer 1(08090668,528F3F82) Send(005): 46 01 00 60 12
    Layer 0(08090668,528F3F82) Send(005): 46 01 00 60 12
    Layer 8(080C16B8,528F3F82) OpenInetSocket 6720
    Layer 8(080C16B8,528F3F82) InetSocket opened
    Layer 4(080D1A08,528F3F82) GroupCacheInit

    Und wenn ich in einer zweiten Konsole busmonitor1 aufrufe kommt das hier:

    Layer 8(080C16B8,528F3FC0) New Connection
    Layer 8(080D2488,528F3FC0) ClientConnection Init
    Layer 8(080D2488,528F3FC0) RecvMessage(002): 00 11
    Layer 7(080E25EC,528F3FC0) Open A_Busmonitor
    Layer 3(080B0DB0,528F3FC0) registerBusmontior 080E25EC
    Layer 2(080A0A18,528F3FC0) CloseL2
    Layer 1(08090668,528F3FC0) Send(005): 46 01 00 60 C0
    Layer 0(08090668,528F3FC0) Send(005): 46 01 00 60 C0
    Layer 2(080A0A18,528F3FC0) OpenBusmon
    Layer 1(08090668,528F3FC1) Send(005): 46 01 00 60 90
    Layer 0(08090668,528F3FC1) Send(005): 46 01 00 60 90
    Layer 3(080B0DB0,528F3FC1) registerBusmontior 080E25EC = 1
    Layer 8(080D2488,528F3FC1) SendMessage(002): 00 11

    Das sieht für mich jetzt erst mal alles gut aus. Aber nun kommen Verständnisfragen auf . Was macht busmonitor1? Vom Namen her hätte ich jetzt erwartet ich sehe alle Nachrichten auf dem Bus? Da tut sich aber rein gar nix. Oder sehe ich nur die Nachrichten, die von/zu meinem RS232 BCU gehen?
    Und nächste Frage - in der ETS hat mein RS232 BCU die Addresse 3.2.255. Muss ich die dem eibd mit -e 3.2.255 mitgeben?

    Einen Kommentar schreiben:


  • dh6
    antwortet
    Zitat von do13 Beitrag anzeigen
    Ja, das kannst du nehmen.
    Danke!

    Einen Kommentar schreiben:


  • do13
    antwortet
    Zitat von dh6 Beitrag anzeigen
    OK, ich denke, ich werde deinem Tip folgen.
    Hast du vielleicht eine Empfehlung?
    Geht sowas:
    Weinzierl KNX IP Interface 730
    Ja, das kannst du nehmen.

    Einen Kommentar schreiben:


  • dh6
    antwortet
    Zitat von do13 Beitrag anzeigen
    Wenn ja, kaufe lieber eine aktuelle USB Schnittstelle oder ein IP Interface / Router anstatt hier noch mehr Zeit reinzustecken.
    OK, ich denke, ich werde deinem Tip folgen.
    Hast du vielleicht eine Empfehlung?
    Geht sowas:
    Weinzierl KNX IP Interface 730

    Einen Kommentar schreiben:


  • do13
    antwortet
    Zitat von dh6 Beitrag anzeigen
    Hm, da er schon ca. 11 Jahre alt ist, wahrscheinlich der BCU1?....

    Bei dem muss der Aufruf anders sein, oder?
    ...
    Code:
    root@xxx03:~# eibd -i -t1023 bcu1:/dev/ttyS0
    Ja, aber so wird das nichts. bcu1 braucht einen Kerneltreiber. Denke mal der ist nicht installiert.
    Ohne geht es nur im Usermode mittels bcu1s. Allerdings schreibt der Entwickler selbst darüber: https://knx-user-forum.de/103053-post7.html

    Was hast du denn genau für ein Interface? Ist es wirklich eine BCU1?

    Wenn ja, kaufe lieber eine aktuelle USB Schnittstelle oder ein IP Interface / Router anstatt hier noch mehr Zeit reinzustecken.

    Dirk

    Einen Kommentar schreiben:


  • dh6
    antwortet
    OK, meinst du so etwas:
    busware.de

    Einen Kommentar schreiben:


  • NilsS
    antwortet
    Ich würde mir das nicht antun mit einer BCU1.

    Kauf dir lieber eine USB tpuart oder andere USB Schnittstelle.

    Einen Kommentar schreiben:


  • dh6
    antwortet
    Zitat von NilsS Beitrag anzeigen
    Ist es denn ein FT1.2 BA? oder so ne alte BCU1?
    Hm, da er schon ca. 11 Jahre alt ist, wahrscheinlich der BCU1?....

    Bei dem muss der Aufruf anders sein, oder?

    ...
    OK, es geht langsam voran:
    1. Fenster:
    Code:
    root@xxx03:~# eibd -i -t1023 bcu1:/dev/ttyS0
    Layer 7(00000000,5244001D) EIBD should not run as root
    W00000001: EIBD should not run as root
    Layer 1(00AF8C00,5244001D) Open
    Layer 1(00AF8C00,5244001D) Driver select extension missing
    Layer 1(00AF8C00,5244001D) Opened
    Layer 2(00B092F0,5244001D) Open
    Layer 2(00B092F0,5244001D) Opened
    Layer 3(00B199C0,5244001D) Open
    Layer 2(00B092F0,5244001D) OpenL2
    Layer 1(00AF8C00,5244001D) Send(005): 46 01 00 60 12
    Layer 0(00AF8C00,5244001D) Send(005): 46 01 00 60 12
    Layer 8(00B2AB00,5244001D) OpenInetSocket 6720
    Layer 8(00B2AB00,5244001D) InetSocket opened
    Layer 4(00B3B150,5244001D) GroupCacheInit
    Dann im 2. Fenster:
    Code:
    root@xxx03:/# groupswrite ip:127.0.0.1 8/19 1
    Send request
    Dann sehe ich im ersten Fenster:
    Code:
    Layer 8(00B2AB00,52440023) New Connection
    Layer 8(00B3C490,52440023) ClientConnection Init
    Layer 8(00B3C490,52440023) RecvMessage(005): 00 22 40 13 FF
    Layer 7(00B4C9E0,52440023) OpenGroup
    Layer 4(00B4CB90,52440023) OpenGroup 8/0/19 WO
    Layer 8(00B3C490,52440023) SendMessage(002): 00 22
    Layer 8(00B3C490,52440023) RecvMessage(004): 00 25 00 81
    Layer 7(00B4C9E0,52440023) Send(002): 00 81
    Layer 4(00B4CB90,52440023) Send Group T_DATA_XXX_REQ A_GroupValue_Write (small) 01
    Layer 3(00B199C0,52440023) Send L_Data low from 0.0.0 to 8/0/19 hops: 07 T_DATA_XXX_REQ A_GroupValue_Write (small) 01
    Layer 2(00B092F0,52440023) Send L_Data low from 0.0.0 to 8/0/19 hops: 07 T_DATA_XXX_REQ A_GroupValue_Write (small) 01
    Layer 1(00AF8C00,52440023) Send(009): 11 0C 00 00 40 13 F1 00 81
    Layer 0(00AF8C00,52440023) Send(009): 11 0C 00 00 40 13 F1 00 81
    Layer 7(00B4C9E0,52440023) CloseGroup
    Layer 2(00B092F0,52440023) Recv L_Data low from 0.0.0 to 8/0/19 hops: 07 T_DATA_XXX_REQ A_GroupValue_Write (small) 01
    Layer 3(00B199C0,52440023) Recv L_Data low from 0.0.0 to 8/0/19 hops: 07 T_DATA_XXX_REQ A_GroupValue_Write (small) 01
    Layer 4(00B4CB90,52440023) CloseGroup
    Layer 3(00B199C0,52440023) deregisterGroupCallBack 00B4CB90 = 0
    Layer 8(00B3C490,52440023) ClientConnection closed
    Aber leider kommt das Telegramm nicht beim Aktor an, d.h. es gibt keine Reaktion.

    Einen Kommentar schreiben:

Lädt...
X