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

    set short hw_load

    Ich versuche grade mit den alten CSV-Dateien das Kommando set short hw_load abzusetzen, um die Warmwasser-Speicherladung zu starten (meine Wäremepumpe ist VWS 61/2). Und das passiert dabei immer:

    Code:
    2014-01-04 11:45:26.896 [NET] >>> client [5] set short hw_load
    2014-01-04 11:45:26.896 [NOT] search: set short.hw_load
    2014-01-04 11:45:26.896 [NOT]  found: 50B505026 type: 3 ==> id: 290
    2014-01-04 11:45:26.896 [NOT]   data: -
    2014-01-04 11:45:26.897 [DBG] add: id: 290 clientfd: 5 ==> entries: 1
    2014-01-04 11:45:26.930 [EBH]   aa
    2014-01-04 11:45:26.931 [DBG] del: id: 290 clientfd: 5 ==> entries: 0
    2014-01-04 11:45:26.931 [DBG] id: 290 elem: 0 p1: 1 p2: 0 p3: 0 data: -
    2014-01-04 11:45:26.978 [EBH]   aa
    2014-01-04 11:45:26.994 [EBH]   ff
    2014-01-04 11:45:27.010 [EBH]   50 b5 05
    2014-01-04 11:45:27.026 [EBH]   02 60 00 1d
    2014-01-04 11:45:27.042 [EBH]   00
    2014-01-04 11:45:27.090 [EBH]   aa
    2014-01-04 11:45:27.091 [EBH]   ff 50 b5 05 02 60 00 1d 00
    2014-01-04 11:45:27.091 [NOT] send retry: 1
    2014-01-04 11:45:27.122 [EBH]   aa
    2014-01-04 11:45:27.138 [EBH]   ff
    2014-01-04 11:45:27.154 [EBH]   50 b5 05
    2014-01-04 11:45:27.170 [EBH]   02 60 00 1d
    2014-01-04 11:45:27.186 [EBH]   00
    2014-01-04 11:45:27.234 [EBH]   aa
    2014-01-04 11:45:27.235 [EBH]   ff 50 b5 05 02 60 00 1d 00
    2014-01-04 11:45:27.235 [NET] <<< client [5] error send ebus msg

    Kommentar


      Hi,

      die set Befehle hat damals JuMi ermittelt.

      In meiner Config steht das so drinnen.

      set short hw_load Quick - WW Speicherladung MS 50 B505 2 06 1 - sd 1 bcd 1.000 - - -

      Die 2 steht für NN und somit für 2 Daten Elemente.

      Bei dir wird "
      ff 50 b5 05 02 60 00 1d" geschickt.

      Ich denke dir fehlt die führende 0 im csv file. Also 6 statt 06.

      Der Befehl müsste irgendwie so aussehen: "set short hw_load 1" -->
      "ff 50 b5 05 02 06 01 xx 00" (xx wäre das neue CRC)

      EDIT:

      Jeder set Befehl erwartet nach class (short) und cmd (hw_load) einen Wert: sprich die 1 hinter dem Befehl ist notwendig. Erst mit der 1 wird der Befehl komplett.

      Man könnte das für einfach Befehle auch umbauen, das in der Config bereits der komplette Befehl steht.
      Eine andere Variante wäre auch Werte wie ON / OFF / YES / NO / ... zu verarbeiten.

      Kommentar


        Immer wieder der gleiche Fehler ... mea culpa ... war noch nicht gefixt .... bin mir ziemlich sicher dass es als Broadcast funktioniert.

        ff fe b5 05 02 06 01
        Umgezogen? Ja! ... Fertig? Nein!
        Baustelle 2.0 !

        Kommentar


          Danke, mit der korrigierten CSV-Zeile funktioniert jetzt das Kommando set short hw_load 1 bei mir.

          Code:
          set;short;hw_load;Quick - WW Speicherladung;3;50;B505;2;[B]06[/B];1;-;sd;1;bcd;1.000;-;-;-;;;;;;;;;;;;;;;;;;;;;;;;
          ebusd sagt zwar ACK, jedoch startet keine WW-Aufheizung.

          Kommentar


            Geh mal auf FE statt 50.
            Umgezogen? Ja! ... Fertig? Nein!
            Baustelle 2.0 !

            Kommentar


              Mit FE statt 50 macht die Wärmepumpe zwar Warmwasser, jedoch meldet ebusd einen Fehler:

              Code:
              2014-01-04 19:40:12.451 [NET] >>> client [5] set short hw_load 1
              2014-01-04 19:40:12.451 [NOT] search: set short.hw_load
              2014-01-04 19:40:12.451 [NOT]  found: FEB5050206 type: 3 ==> id: 290
              2014-01-04 19:40:12.451 [NOT]   data: 1
              2014-01-04 19:40:12.451 [DBG] add: id: 290 clientfd: 5 ==> entries: 1
              2014-01-04 19:40:12.474 [EBH]   aa
              2014-01-04 19:40:12.474 [DBG] del: id: 290 clientfd: 5 ==> entries: 0
              2014-01-04 19:40:12.474 [DBG] id: 290 elem: 0 p1: 1 p2: 0 p3: 0 data: 1
              2014-01-04 19:40:12.522 [EBH]   aa
              2014-01-04 19:40:12.538 [EBH]   ff
              2014-01-04 19:40:12.554 [EBH]   fe b5 05
              2014-01-04 19:40:12.570 [EBH]   02 06 01 09
              2014-01-04 19:40:12.618 [EBH]   aa
              2014-01-04 19:40:12.634 [EBH]   aa
              2014-01-04 19:40:12.634 [EBH]   ff fe b5 05 02 06 01 09
              2014-01-04 19:40:12.634 [NOT] send retry: 1
              2014-01-04 19:40:12.682 [EBH]   aa
              2014-01-04 19:40:12.698 [EBH]   ff
              2014-01-04 19:40:12.714 [EBH]   fe b5 05
              2014-01-04 19:40:12.730 [EBH]   02 06 01 09
              2014-01-04 19:40:12.778 [EBH]   aa
              2014-01-04 19:40:12.794 [EBH]   aa
              2014-01-04 19:40:12.794 [EBH]   ff fe b5 05 02 06 01 09
              2014-01-04 19:40:12.794 [NET] <<< client [5] error send ebus msg

              Kommentar


                Zitat von aloz77 Beitrag anzeigen
                Code:
                set;short;hw_load;Quick - WW Speicherladung;[COLOR=Red]3[/COLOR];[B][COLOR=DeepSkyBlue]FE[/COLOR][/B];B505;2;[B]06[/B];1;-;sd;1;bcd;1.000;-;-;-;;;;;;;;;;;;;;;;;;;;;;;;
                ebusd sagt zwar ACK, jedoch startet keine WW-Aufheizung.
                Mach mal aus dem 3 eine 1.

                In der alten ebusd Version war 1= Broadcast, 2= Master Master und eine 3= Master Slave Telegramm.

                Bei einem FE sendet kein ebus Teilnehmer ein ACK oder eine Antwort. FE ist immer ein Broadcast.

                Kommentar


                  Zusammenfassung: ebusd mit Ethernet-Adapter von www.eservice-online.de

                  Mit Rolands Hilfe konnte ich den Ethernet-Adapter von Aufgrund von 1-Wire Sensoren und Module - WAGO 750 Serie - Günstige Systeme zur Hausautomation bei mir zum Spielen mit dem ebusd bewegen. Inzwischen klappt das zusammenspiel so gut, das ich das Gespann zusammen mit dem knxd von JuMi2006 quasi "produktiv" einsetze. Momentan realisiere ich bei mir unter Verwendung von linknx eine Zeitsteuerung, die das Bad morgens und abends mit etwas höheren Temperaturen versorgt als den Rest des Hauses. Aufgrund von Nachfragen dokumentiere ich die Schritte zur Inbetriebnahme von ebusd zusammen mit dem Ethernet-ebus-Adapter.

                  Ich verwende bei mir ein Debian wheezy, welches mit den Standardpaketen als virtuelle Maschine aufgesetzt ist. Für das Kompilieren und das Einrichten des ebsud werden die ggf. zusätzlichen Pakete "git" zum Auschecken der aktuellen Sources des ebsud und "socat" für die Anbindung des entfernten ebus-Adapters benötigt. Diese lassen sich mit
                  Code:
                  # apt-get install socat git
                  installieren.

                  Code:
                  # git clone http://github.com/yuhu-/ebusd
                  holt den aktuellen Stand des Quellcodes in das Unterverzeichnis ebusd im aktuellen Verzeichnis. Dieser kann anschließend gemäß der Anleitung unter Ebusd - Open Automation kompiliert werden. Mit
                  Code:
                  # make install
                  wird der ebusd installiert. Der Rest ist Konfiguration.

                  In das Verzeichnis /etc/ebusd sind zunächst die erforderlichen CSV-Dateien mit den bekannten ebus-Befehlen zu kopieren. Im Anhang die von mir verwendeten CSV-Dateien für meine Vaillant-Wärmepumpe. Außerdem kann die ebusd.conf noch an die Bedürfnisse angepasst werden, dass ist jedoch zumindest für den ersten Test noch nicht unbedingt erforderlich, da die relevanten Parameter auch direkt an den ebusd übergeben werden können.

                  Mittels socat wird der über das Netzwerk erreichbare ebus-Adapter auf ein lokales Pseudo-Terminal (pty) gebunden. Das sieht bei mir wie folgt aus:
                  Code:
                  # socat -t2 -ly PTY,link=/var/run/ebusd/ebus-pty,perm-early=0600,unlink,raw TCP:172.29.10.101:5000
                  Anschließend findet sich unter /var/run/ebusd/ ein Link mit dem Namen ebus-pty, welcher auf das Pseudo-Terminal verweist unter dem der ebus-Adapter erreichbar ist. Dieser hat bei mir die Adresse 172.29.10.101 und läuft auf Port 5000 (Standard bei dem von mir verwendeten Adapter). Für die Konfiguration der IP-Adresse des ebus-Adapters wird ein spezielles Programm benötigt, welches nebst Anleitung auf der Herstellerseite heruntergeladen werden kann.

                  Nun kann der ebusd gestartet werden, der über /var/run/ebusd/ebus-pty mit dem ebus-Adapter kommuniziert. ebusd läuft bei mir mit folgendem Aufruf:
                  Code:
                  # ebusd --showraw --foreground --nodevicecheck --loglevel ALL --device /var/run/ebusd/ebus-pty
                  Die Option --nodevicecheck ist erforderlich, damit das Zusammenspiel mit dem Pseudo-Terminal funktioniert, da sich dieses anders verhält als ein "richtiges" serielles Device wie es z.B. der USB-Adapter bereitstellt.
                  Falls alles richtig gemacht wurde dann sollten jetzt jede Menge Meldungen vom ebus über den Bildschirm rauschen, die meisten lauten "aa".
                  Sollten die Meldungen nur stockend kommen oder "Datenmüll" erscheinen, ist am Potentiometer des ebus-Adapters die Erkennungsschwelle nachzujustieren. Der Adapter ist korrekt abgestimmt, wenn die gelbe "Active"-LED leicht flimmert. Wenn Sie nur in Abständen blinkt ist die Schwelle zu hoch eingestellt, wenn Sie dauerhaft leuchtet zu tief.

                  Jetzt ist es an der Zeit das Auslesen der ersten Werte zu testen. Dazu mit
                  Code:
                  # telnet localhost 8888
                  eine Verbindung zum ebusd herstellen. Mit
                  Code:
                  get mv at_temp
                  sollte die aktuelle Außentemperatur erscheinen.

                  Wenn das und der Test für weitere Set- und Get-Werte aus den CSV-Tabellen klappt, kann das Starten und Beenden von socat und ebusd automatisiert werden. Im Anhang mein ebusd-init Skript, welches in /etc/init.d gehört. Dieses erledigt die Aufgaben und lässt den ebusd unter dem Nutzer "ebusd" laufen. Dieser Nutzer muss zuvor mit seinem Home-Verzeichnis /var/run/ebusd ggf. mit
                  Code:
                  # adduser --system --home /var/run/ebusd --disabled-password ebusd
                  angelegt werden.
                  Angehängte Dateien

                  Kommentar


                    ebus

                    Hallo Sten,
                    vielen Dank für deine Super Anleitung. Wenn ich ebusd starte erhalte ich die Meldung:
                    unrecognized option '--nodevicecheck'

                    Gruß Helmut

                    Kommentar


                      Hallo Helmut,

                      in der Tat die aktuelle Version reagiert zwar auf --nodevicecheck aber nicht auf -n.

                      Ich seh mir das gleich an.

                      EDIT: Fix ist im Repo.

                      Kommentar


                        @yuhu: nun wollte ich mich endlich (ja, ich weiß ...) mal ans Testen machen - und siehe da: den Branch gibts nicht mehr :-(
                        Ist der jetzt schon in den Trunk/Head integriert?

                        VG
                        Micha

                        Kommentar


                          Ja, ist schon im Master übernommen.

                          Kommentar


                            Zitat von yuhu Beitrag anzeigen
                            Ja, ist schon im Master übernommen.
                            OK, braucht ihr dann jetzt trotzdem noch Beta-Tester?

                            Danke,
                            Micha

                            Kommentar


                              Nicht wirklich. Der Masterstand läuft bei mir schon ein paar Wochen ohne Probleme.

                              Dieser Stand wird sich auch nicht mehr großartig ändern, da ich dass ganze Projekt von Grund auf in C++ neu implementiere.

                              Trotzdem Danke.
                              Roland

                              Kommentar


                                Hallo Roland,

                                was ist der Grund dafür?
                                Umgezogen? Ja! ... Fertig? Nein!
                                Baustelle 2.0 !

                                Kommentar

                                Lädt...
                                X