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

    Habs geprüft. Nun bekomme ich eine 1 wo normalerweise 1.2 kommen sollte. Das gleiche beim Wasserdruck. Es wird alles nach dem Komma abgetrennt.

    Code:
    2014-03-15 19:38:48.904 [NET] >>> client [5] get ci HEatCurve
    2014-03-15 19:38:48.905 [NOT] search: get ci.HEatCurve
    2014-03-15 19:38:48.906 [NOT]  found: 15B509030D3100 type: MS ==> id: 23
    2014-03-15 19:38:48.908 [NOT]   data: -
    2014-03-15 19:38:48.909 [DBG] add: id: 23 clientfd: 5 ==> entries: 1
    2014-03-15 19:38:48.943 [DBG] del: id: 23 clientfd: 5 ==> entries: 0
    2014-03-15 19:38:49.060 [EBH]   ff 15 b5 09 03 0d 31 00 44 00 02 78 00 ab 00
    2014-03-15 19:38:49.061 [DBG] id: 23 elem: 0 p1: 1 p2: 2 p3: 0 p4: 0
    2014-03-15 19:38:49.062 [DBG] buf: 1
    2014-03-15 19:38:49.063 [NET] <<< client [5] 1

    Kommentar


      So, ein Klassiker unter den Fehlern beim Programmieren. Neuer Versuch.

      Kommentar


        Perfekt, funktioniert. thx :-)

        Kommentar


          Vaillant Zeitpläne - neuer Datentyp

          Ich weiss nicht ob es der Philosophie des ebusd entspricht einige Felder schöner dazustellen daher:

          Es gibt bei Vaillant diverse Felder in den Zeitplänen wo die Uhrzeit als uch * 10 Minuten ausgedrückt wird. Ich habe dafür mal ein kleinen Patch geschrieben:

          Code:
          # Time Table Heating
          get;ci;TTTimeMondayHK1;Time Table Times Monday;MS;15;B515;2;0000;6;start1;sd;2;tiuch;1.0;x 10 Min;-;Start 1;end1;sd;3;tiuch;1.0;x 10 Min;-;Ende 1;start2;sd;4;tiuch;1.0;x 10 Min;-;Start 2;end2;sd;5;tiuch;1.0;x 10 Min;-;Ende 2;start3;sd;6;tiuch;1.0;x 10 Min;-;Start 3;end3;sd;7;tiuch;1.0;x 10 Min;-;Ende 3
          Vorher kam da mit uch folgendes raus:
          Code:
          get ci TTTimeMondayHK1
          33 54 54 78 78 138
          Mit dem neuen Datentyp tiuch ist es lesbarer:

          Code:
          get ci TTTimeMondayHK1
          05:30 09:00 09:00 13:00 13:00 23:00
          Code:
          --- lib/ebus-cmd.c_BACKUP       2014-03-16 11:10:53.534517000 +0000
          +++ lib/ebus-cmd.c      2014-03-16 11:44:31.107510751 +0000
          @@ -377,6 +377,29 @@
                                  goto on_error;
                          }
          
          +        } else if (strncasecmp(com[id].elem[elem].d_type, "tiuch", 3) == 0) {
          +                if (p1 > 0) {
          +                        unsigned char uch;
          +                       int hr,min,mins;
          +                        uch = msg[p1];
          +                       mins = (int) uch * 10;
          +                        hr = mins / 60;
          +                        min = mins - (hr * 60);
          +                       if (hr < 10) {
          +                               sprintf(buf, "0%i", hr);
          +                       } else {
          +                               sprintf(buf, "%i", hr);
          +                       }
          +                       sprintf(buf + strlen(buf), ":");
          +                        if (min < 10) {
          +                                sprintf(buf + strlen(buf), "0%i", min);
          +                        } else {
          +                                sprintf(buf + strlen(buf), "%i", min);
          +                        }
          +                } else {
          +                        goto on_error;
          +                }
          +
                  } else if (strncasecmp(com[id].elem[elem].d_type, "sch", 3) == 0) {
                          if (p1 > 0) {
                                  char sch;

          Kommentar


            Dieser "TimeTable" besteht wirklich nur aus Uhrzeiten?

            Kommentar


              Jup, für die gewünschten Temperaturen zu diesen Uhrzeiten gibt es gesonderte Tabellen. Die Anfrage hat davor und dahinter (Byte 1 und 8) noch einen Wert der sich mir nicht erschließt. Aber ansonsten sind dort nur 6 Uhrzeiten erhalten: Start und Stop Zeit von Maximal 3 Zeitphasen pro Wochentag.

              Kommentar


                Code:
                (strncasecmp(com[id].elem[elem].d_type, "tiuch", 3)
                d_type ist mit einer Länge von 3 definiert.

                TIUCH ist also zu lange. Als Name würde sich etwas wie TTM (TimeTableMinutes) eignen.

                Kommentar


                  Oh, stimmt, ja der Name passt gut.

                  Kommentar


                    Ist auf github.

                    Code:
                        } else if (strncasecmp(com[id].elem[elem].d_type, "ttm", 3) == 0) {
                            if (p1 > 0) {
                                int hh, mm;
                                hh = msg[p1] / 6;
                                mm = msg[p1] % 6 * 10;
                                sprintf(buf, "%02d:%02d", hh, mm);
                            } else {
                                goto on_error;
                            }

                    Kommentar


                      THX, funktioniert und ist ein wenig sauberer programmiert

                      Kommentar


                        hello , I'm an Italian user , so I have to write in English.
                        I'm using ebusd vwmon to integrate with my system consists vr620 + VR60 + 3 vr90 .
                        I followed the doubt:
                        - How do I query the temperature of the rooms on my three vr90 ?
                        get vr903 RoomTempAct sensor
                        03/20/2014 16:35:55.707 [ NET ] >>> client [ 6] vr903 get RoomTempAct
                        03/20/2014 16:35:55.707 [NOT] search : get vr903.RoomTempAct
                        03/20/2014 16:35:55.707 [NOT] found: 1CB509030D0000 type: 0 == > id: 439
                        03/20/2014 16:35:55.707 [NOT] date : -
                        03/20/2014 16:35:55.871 [ NET ] <<< client [ 6]

                        - Requiring the outside temperature with " cyc broad date_time_temp temp" I get the result sometimes , other times only 0.000 , why?

                        - Querying the solar system using vaillant_560.csv I always get double results :
                        this is not a problem because I modified the code vwmon -client to clear the buffer after the space , I just wanted to understand why it happens .

                        03/20/2014 16:40:13.178 [NOT] search : get sens.sp1
                        03/20/2014 16:40:13.178 [NOT] found: ECB509030D0000 type: 3 ==> id: 58
                        03/20/2014 16:40:13.178 [NOT] date : -
                        03/20/2014 16:40:13.310 [ NET ] <<< client [ 6] 58.000000 00

                        thank you very much and congratulations for the work

                        Kommentar


                          Zitat von modenet Beitrag anzeigen
                          hello , I'm an Italian user , so I have to write in English.
                          Hi, english is ok.
                          Zitat von modenet Beitrag anzeigen
                          I'm using ebusd vwmon to integrate with my system consists vr620 + VR60 + 3 vr90 .
                          vr620 - Combined solar and heating controller
                          vr60 - 2 Circuit mixer module
                          vr90 - Room controller
                          Zitat von modenet Beitrag anzeigen
                          I followed the doubt:
                          - How do I query the temperature of the rooms on my three vr90 ?
                          get vr903 RoomTempAct sensor
                          03/20/2014 16:35:55.707 [ NET ] >>> client [ 6] vr903 get RoomTempAct
                          03/20/2014 16:35:55.707 [NOT] search : get vr903.RoomTempAct
                          03/20/2014 16:35:55.707 [NOT] found: 1CB509030D0000 type: 0 == > id: 439
                          03/20/2014 16:35:55.707 [NOT] date : -
                          03/20/2014 16:35:55.871 [ NET ] <<< client [ 6]
                          Each module has its own VR90 ebus address. So you have to define the commands three times with other groups name. For example with this addresses: 0x20, 0x25 and 0x30
                          get vr903_1 RoomTempAct ....20.....(0x20 is the ebus address for this module)
                          get vr903_2 RoomTempAct ....25.....
                          get vr903_3 RoomTempAct ....30.....

                          Zitat von modenet Beitrag anzeigen
                          - Requiring the outside temperature with " cyc broad date_time_temp temp" I get the result sometimes , other times only 0.000 , why?
                          Check the setting of the ebus adapter. Can you send me a dump file?
                          Zitat von modenet Beitrag anzeigen
                          - Querying the solar system using vaillant_560.csv I always get double results :
                          this is not a problem because I modified the code vwmon -client to clear the buffer after the space , I just wanted to understand why it happens .

                          03/20/2014 16:40:13.178 [NOT] search : get sens.sp1
                          03/20/2014 16:40:13.178 [NOT] found: ECB509030D0000 type: 3 ==> id: 58
                          03/20/2014 16:40:13.178 [NOT] date : -
                          03/20/2014 16:40:13.310 [ NET ] <<< client [ 6] 58.000000 00
                          As I've written above. VR620 is a combined solar and heating controller and vr560 is only a solar controller. I would be surprised if this setting really suits to your system.

                          Kommentar


                            Zitat von yuhu Beitrag anzeigen
                            vr90 - Room controller
                            yes, I use three vr90/2 room controller. may be a problem? the file vr903.csv is only for vr90/3 ?

                            Zitat von yuhu Beitrag anzeigen
                            Each module has its own VR90 ebus address.
                            as I would observe the id of each vr90? I tried ident.sh that has been attached to this useful forum:
                            08= 0a b5 42 41 49 30 30 07 03 74 01
                            15= 0a b5 55 49 20 20 20 05 01 62 01
                            1C= 0a b5 52 43 20 43 20 05 01 62 01
                            25= 0a b5 53 4f 4c 53 59 05 00 63 01
                            3C= 0a b5 52 43 20 43 20 05 01 62 01
                            50= 0a b5 53 4f 4c 53 59 05 00 63 01
                            52= 0a b5 4d 43 32 20 20 05 00 63 01
                            53= 0a b5 4d 43 32 20 20 05 00 63 01
                            75= 0a b5 52 43 20 43 20 05 01 62 01

                            Zitat von yuhu Beitrag anzeigen
                            So you have to define the commands three times with other groups name. For example with this addresses: 0x20, 0x25 and 0x30
                            get vr903_1 RoomTempAct ....20.....(0x20 is the ebus address for this module)
                            I have yet to understand the structure of the file. csv column that matches the id of the device? zz?

                            Zitat von yuhu Beitrag anzeigen
                            Check the setting of the ebus adapter. Can you send me a dump file?
                            I attached raw dump for "cyc broad date_time_temp temp" which returns sometime 0 (kol2 return vf1 value), and "get sens kol1" which returns always 0

                            Zitat von yuhu Beitrag anzeigen
                            As I've written above. VR620 is a combined solar and heating controller and vr560 is only a solar controller. I would be surprised if this setting really suits to your system.
                            in fact "get sens kol1" always returns 0 and "get sens ertr" always -13.9.
                            maybe exist vr620.csv?
                            Angehängte Dateien

                            Kommentar


                              Zitat von modenet Beitrag anzeigen
                              yes, I use three vr90/2 room controller. may be a problem? the file vr903.csv is only for vr90/3 ?
                              No, it's just a matter of correct configuration.
                              Zitat von modenet Beitrag anzeigen

                              as I would observe the id of each vr90? I tried ident.sh that has been attached to this useful forum:
                              08= 0a b5 42 41 49 30 30 07 03 74 01
                              15= 0a b5 55 49 20 20 20 05 01 62 01
                              1C= 0a b5 52 43 20 43 20 05 01 62 01
                              25= 0a b5 53 4f 4c 53 59 05 00 63 01
                              3C= 0a b5 52 43 20 43 20 05 01 62 01
                              50= 0a b5 53 4f 4c 53 59 05 00 63 01
                              52= 0a b5 4d 43 32 20 20 05 00 63 01
                              53= 0a b5 4d 43 32 20 20 05 00 63 01
                              75= 0a b5 52 43 20 43 20 05 01 62 01
                              VRS620 - for correct configuration we need a scan of the bus with vaillant specific commands
                              08 = controller of vrs620
                              15 = CI
                              25 = hot water circuit
                              50 = mixer circuit of vrs620

                              VR 60/3 - 52 / 53 - configuration at github

                              VR 90/3 - your addresses 1C / 3C / 75 - configuration at github.
                              You need this configuration files three times with different ZZ and class names.
                              Zitat von modenet Beitrag anzeigen
                              I have yet to understand the structure of the file. csv column that matches the id of the device? zz?
                              Correct.

                              Zitat von modenet Beitrag anzeigen
                              I attached raw dump for "cyc broad date_time_temp temp" which returns sometime 0 (kol2 return vf1 value), and "get sens kol1" which returns always 0
                              I will check it.
                              Zitat von modenet Beitrag anzeigen
                              in fact "get sens kol1" always returns 0 and "get sens ertr" always -13.9.
                              maybe exist vr620.csv?
                              Not at the moment.

                              Kommentar


                                Zitat von yuhu Beitrag anzeigen
                                VRS620 - for correct configuration we need a scan of the bus with vaillant specific commands
                                08 = controller of vrs620
                                15 = CI
                                25 = hot water circuit
                                50 = mixer circuit of vrs620

                                VR 60/3 - 52 / 53 - configuration at github

                                VR 90/3 - your addresses 1C / 3C / 75 - configuration at github.
                                You need this configuration files three times with different ZZ and class names.
                                excuse me, I can't understand. I have not unterstand how to extract the ZZ value of the three VR90...
                                with 1c I can't extract anything.

                                thanks for your assistance

                                Kommentar

                                Lädt...
                                X