Ankündigung

Einklappen
Keine Ankündigung bisher.

eBus->USB->Plugin->KNX

Einklappen
Dieses Thema ist geschlossen.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #76
    kopieren der Datei EBus.pm

    @Mirko: du schreibst (Hier mal ein Perl-Script für die Konsole und CRC-Berechnung. Dazu muss aber noch die EBus.pm von hier: / - ebus - eBus Adapter and Software to access eBus-Heating-Systems - Google Project Hosting nach /usr/lib/perl/5.10.0 kopiert werden)

    wie kann man das aufs wiregate draufkopieren?

    Kommentar


      #77
      Schau Dir mal den Thread hier an:

      https://knx-user-forum.de/forum/supp...wiregate/17149

      Gruß
      Umgezogen? Ja! ... Fertig? Nein!
      Baustelle 2.0 !

      Kommentar


        #78
        probleme

        ok, wie sieht die url genau aus? ich krampf dabei eine ab.
        danke

        Kommentar


          #79
          funzt

          hab es hinbekommen,

          danke

          Kommentar


            #80
            Ich häng die EBus.pm mal an. Einfach das.txt entfernen und nach /usr/lib/perl/5.10.0 aufs wiregate legen.
            Angehängte Dateien
            Umgezogen? Ja! ... Fertig? Nein!
            Baustelle 2.0 !

            Kommentar


              #81
              So ... nachdem nun 90% von de- und encoding geschafft sind wollte ich mich mal an den socat machen.

              Von makki hab ich den Code hier gefunden und mal den angehängten socat aktiviert ... kann es sein dass die Menge der Daten das WireGate killt ?


              Mit socat -t1 - /dev/ttyUSB0,echo=0,b2400 | od -tx1 bekomme ich die Daten alle zu sehen, wie geht das mit dem Zeilenumbruch bei "AA" als Hex ?

              Danke und Gruß Mirko


              Code:
              # Plugin zum Hexdump empfangener UDP-Daten
              
              ##################
              ### DEFINITION ###
              ##################
              
              my $socknum = 2; # Eindeutige Nummer des Sockets
              
              # Eigenen Aufruf-Zyklus setzen (Initialisierung/zyklisches prüfen)
              $plugin_info{$plugname.'_cycle'} = 3600;
              
              my $recv_ip = "192.168.2.22"; # Empfangsport (UDP, wie in Socket-Einstellungen)
              my $recv_port = "50011"; # Empfangsport (UDP, wie in Socket-Einstellungen)
              
              #######################
              ### ENDE DEFINITION ###
              #######################
              
              # Hauptverarbeitung
              # or ($fh and eof($socket[$socknum]))
              if (!$socket[$socknum]) { # socket erstellen
                $socket[$socknum] = IO::Socket::INET->new(LocalPort => $recv_port, Proto => "udp", LocalAddr => $recv_ip )
                  or return ("open of $recv_ip : $recv_port failed: $!");
                $socksel->add($socket[$socknum]); # add socket to select
                $plugin_socket_subscribe{$socket[$socknum]} = $plugname; # subscribe plugin
                return "opened UDP-Socket $socknum";
              }
              elsif ($fh) { # Read from UDP-Socket
                my $buf;
                recv($fh,$buf,255,0);
                my $bufhex = $buf;
                $bufhex =~ s/(.)/sprintf("%x",ord($1))/eg;
                return "Received $buf HEXdump: $bufhex";
              }
              
              return; # cyclic call
              Angehängte Dateien
              Umgezogen? Ja! ... Fertig? Nein!
              Baustelle 2.0 !

              Kommentar


                #82
                Das PM muss ich dann wohl mal packagen, um schlimmeres zu verhindern
                Zitat von JuMi2006 Beitrag anzeigen
                kann es sein dass die Menge der Daten das WireGate killt ?
                Nö, ist alles nicht die ausgeburt der Effizienz aber mit so einer Handvoll Daten von einem uC bekommt man das nicht kaputt..

                Makki
                EIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
                -> Bitte KEINE PNs!

                Kommentar


                  #83
                  Warte mit dem packagen bis ich die anderen Subs fertig habe

                  Achso: Zeilenumbruch ?
                  Umgezogen? Ja! ... Fertig? Nein!
                  Baustelle 2.0 !

                  Kommentar


                    #84
                    Zitat von JuMi2006 Beitrag anzeigen

                    Achso: Zeilenumbruch ?
                    Jungs ich kann nicht jedem Plugin unbekannter Teile etc. wochenlang im Detail folgen, bei konkreten Fragen versuche ich es:

                    Makki
                    EIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
                    -> Bitte KEINE PNs!

                    Kommentar


                      #85
                      Ich hätte gern bei der socat-Ausgabe in der Konsole auch Zeilenumbrüche. Da jedoch kein CRLF im Datenstrom ist muss das AA dafür herhalten. Kann ich das dem socat mitgeben dass er mir das anzeigt?

                      Gruß Mirko
                      Angehängte Dateien
                      Umgezogen? Ja! ... Fertig? Nein!
                      Baustelle 2.0 !

                      Kommentar


                        #86
                        Ich hänge jetzt nochmal eine Frage ran

                        Die grobe Plugin-Struktur für das Schreiben auf den eBus steht. Über hterm kommen meine Befehle auch an und werden akzeptiert. In hterm kann ich grafisch ja alles schön in HEX einstellen und HEX senden.

                        Mein zu sendender Befehl lautet 00 50 B5 05 02 02 02 8E so (aber ohne Leerzeichen) kann ich es jedenfalls bei hterm eingeben und los schicken.

                        Wie bekomme ich den Befehl von der Konsole gesendet ?
                        ttyUSB0 / 2400baud / 1 Stopbit / 8 Datenbits / parity-none

                        Danke und Gruß!
                        Umgezogen? Ja! ... Fertig? Nein!
                        Baustelle 2.0 !

                        Kommentar


                          #87
                          Zur Frage mit dem aa als Zeilenumbruch. Socat kennt den Parameter EOL den könnte man dafür heranziehen. Also in etwa EOL=170
                          Gruss Patrik alias swiss

                          Kommentar


                            #88
                            EOL= ändert aber nichts an der Anzeige.. Also macht aus 0xAA kein CR/LF

                            @Jumi: das geht schon bestimmt irgendwie auch in der Bash (stty, hex, printf, ...) aber der Weg ist da echt eher (den ich auch bei sowas nehme), sich einen Prototypen in der Lieblings-Scriptsprache zu erstellen, damit zu testen und zu lernen - und es dann ggfs. in ein Perl-Plugin zu überführen wenns geht.
                            Edit: Da ersetzt man in diesem Fall dann 0xAA mit \n um es besser lesen zu können ..

                            Makki
                            EIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
                            -> Bitte KEINE PNs!

                            Kommentar


                              #89
                              Ich teste gerade das was vielversprechendes hab aber dennoch ne Perl/Socat Frage

                              Folgender Befehl in der Konsole läuft:
                              Code:
                              echo [B]0015070400a4[/B] | perl -ne 's/([0-9a-f]{2})/print chr hex $1/gie' | socat -t1 - /dev/ttyUSB-1-4,b2400 | od -tx1
                              Das hab ich folgendermaßen in das Script eingearbeitet:
                              my $command = '0015070400a4' ;
                              &send ($command);

                              sub send
                              {
                              my $raw = shift;
                              $raw =~ s/([0-9a-f]{2})/chr hex $1/gie;
                              print ("Raw = $raw","\n");
                              system ("echo ".$raw." | socat -t1 - ".$usb.",b2400");
                              }
                              O.K. ... bin fündig geworden ... hat sich erledigt.
                              Umgezogen? Ja! ... Fertig? Nein!
                              Baustelle 2.0 !

                              Kommentar


                                #90
                                fehler im plugin

                                mein aktueller stand ist jetzt dieser.

                                meinen adapter hab ich fertiggelötet, hängt am wiregate dran, ich kann auch per socat abfragen und mir werden daten geschickt.

                                nun hakt es beim plugin, ebus.pm hab ich kopiert trotzdem kann die nicht ausgeführt werden.

                                woran kann das liegen?

                                achso, ich hab eine wolftherme mit solar.

                                gruß
                                andreas
                                Angehängte Dateien

                                Kommentar

                                Lädt...
                                X