Ankündigung

Einklappen
Keine Ankündigung bisher.

Weinzierl KNX BAOS Module 838 kBerry

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

    #91
    Soooo. Habe Doku studiert:

    Even with the re-routing of all telegrams from the link layer to the application the address table still
    filters all telegrams which are not for the BAOS Module. Only telegrams configured by the ETS for
    the BAOS Module pass through. To disable this the address table must be switched off by writing
    a length of 0. But first save the old length value to write it back later.

    3. Disable the address table by writing length = 0:
    uint8_t aBuffer[] =
    {
    0x05, // Length of this array
    0xA6, // EMI2 service code: PC_Set_Value.req
    0x01, // EMI2 data length
    0x40, 0x00, // EMI2 address 4000
    0x00 // EMI2 data value 0
    };
    KnxFt12_Write(aBuffer); // Send PC_Set_Value.req

    This writes 0 to address 0x4000, which disables the address table.d PC_Get_Value.req
    wie bekommt man das denn noch eingebaut Smurf
    denke nach dem Link Layer setzen wäre es am besten oder?

    http://www.weinzierl.de/images/downl...uide-en-US.pdf

    Auf seite 42 steht das man den Wert vorher wegsichern sollte?
    Zuletzt geändert von jeff25; 22.03.2017, 13:31.

    Kommentar


      #92
      Das einzubauen ist einfach:

      Code:
      diff --git a/src/libserver/ft12cemi.cpp b/src/libserver/ft12cemi.cpp
      index 3466530..acb001f 100644
      --- a/src/libserver/ft12cemi.cpp
      +++ b/src/libserver/ft12cemi.cpp
      @@ -23,6 +23,8 @@
       #include "ft12cemi.h"
       #include "emi.h"
      
      +// This code supports the Weinzierl BAOS 838 and similar modules.
      +
       FT12CEMIDriver::~FT12CEMIDriver()
       {
       }
      @@ -30,8 +32,10 @@ FT12CEMIDriver::~FT12CEMIDriver()
       void
       FT12CEMIDriver::cmdOpen()
       {
      -  const uchar t1[] = { 0xF6, 0x00, 0x08, 0x01, 0x34, 0x10, 0x01, 0x00 };
      -  iface->send_Local (CArray (t1, sizeof (t1)));
      +  const uchar t0[] = { 0xA6, 0x01, 0x40, 0x00, 0x00 };                   // clear addr table
      +  const uchar t1[] = { 0xF6, 0x00, 0x08, 0x01, 0x34, 0x10, 0x01, 0x00 }; // link mode
      +  iface->send_Local (CArray (t0, sizeof (t1)));
      +  iface->send_Local (CArray (t1, sizeof (t2)));
       }
      Wüsste nicht, wozu ich da was wegsichern sollte.
      DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

      Kommentar


        #93
        … ich frage mich nur, wieso sie das "EMI2" nennen, wenn das Modul cEMI verwendet?
        DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

        Kommentar


          #94
          geht noch nicht. Hmm habe ich was überlesen? Es kommt immer Programmierknopf drücken....

          Kommentar


            #95
            Zitat von Smurf Beitrag anzeigen
            … ich frage mich nur, wieso sie das "EMI2" nennen, wenn das Modul cEMI verwendet?
            Weil das die alte Dokumentation von den 82x-Modulen ist, wir müssen den Passus in der 83x-Doku finden ...

            Kommentar


              #96
              evtl das hier? http://www.weinzierl.de/images/downl...uide-en-US.pdf

              steht zwar auch 820 aber noch ein zweiter befehl...

              Kommentar


                #97
                @jeff25:
                Wäre es nicht ein Versuch wert mal bei Weinzierl anzurufen und zu fragen? Die wollen ja Ihre Dinge verkaufen, vielleicht sind die ja hilfreich ...

                Kommentar


                  #98
                  wohl http://www.weinzierl.de/images/downl...rotocol_v2.pdf
                  mal durchsehen …

                  … nö, da steht nur das ObjectServer-Protokoll drin, aber nicht wie man es umgeht. :-/
                  Zuletzt geändert von Smurf; 22.03.2017, 16:12.
                  DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

                  Kommentar


                    #99
                    OK, gefunden. Hilft aber nix:

                    http://www.weinzierl.de/images/downl...tocol_V2_0.pdf Seite 104. Das macht der knxd aber schon.
                    DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

                    Kommentar


                      Seite 102:
                      Broadcast messages can also be received as well as all directly addressed telegrams
                      for this device.
                      Aha. Mit anderen Worten, "-B single" ist Pflicht – und die Adresse des knxd sollte die des Moduls sein, zumindest solange bis ich für den "single"-Filter einen address=-Parameter eingebaut habe.
                      Na gut …
                      DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

                      Kommentar


                        Smurf aber dann schon den Adressfilter ausschalten oder zusätzlich? ralf9000 habe Weinzierl schon geschrieben, habe da einen Kontakt.

                        Kommentar


                          Zusätzlich – der Adressfilter betrifft Gruppenadressen; als phys.Adresse wird nur die vom Modul selbst durchgelassen.

                          Idealerweise sollte ich die phys.Adresse auslesen und den single-Filter darauf einstellen, aber das ist ein bisschen mehr Aufwand.

                          Ich habe noch nicht herausgefunden, wie man die Länge der (Gruppen)Adresstabelle auf Null setzt. Mit der ETS kann man das machen – einfach mal zugucken?
                          DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

                          Kommentar


                            So konnte gerade eben die neue Version kompilieren:
                            1. Das Problem mit den den groupreads scheint behoben, mit dem Siemens.Router kam er beim initialisieren von smarthome.py mit den vielen knx_inits ohne weiteres durch. Die smartVISU "fühlt" sich erstmal normal an. So mein erster Eindruck.
                            2. Mit der Weinzierl-Karte klappen die ersten knx_inits nicht, dann kann ich aber Lampen dimmen und bekomme auch die Statusmeldung über eine andere GA zurück. Irgendwas ist auch da besser geworden. Allerdings funktioniert das nur bei jeder 2ten bis 3ten Aktion .... muss nochmal genau sehen.

                            Zu einem Testen mit der ETS über knxd bin ich noch nicht dazu gekommen.

                            Ralf

                            Kommentar


                              Da es mit der Weinzierl Software geht was denkt ihr könnte man da nicht irgendwie das mitloggen. Wenn dieser Filter von der ets gesetzt wird würde das erklären warum es mit der anderen Software geht...

                              Kommentar


                                Das Problem mit den den groupreads scheint behoben
                                Hast du dem Multicast einen Pace-Filter verpasst (Befehlszeile: "-B pace" vor das -R)?
                                Wenn nein, dann war das wohl Zufall …

                                Mit der Weinzierl-Karte klappen die ersten knx_inits nicht
                                Kannst du das eingrenzen auf
                                (a) alle initalen group reads
                                (b) nur die ersten paar
                                (c) die ersten kommen durch, dann Verluste

                                Evtl hilft da auch ein pace-Filter.
                                DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

                                Kommentar

                                Lädt...
                                X