Ankündigung

Einklappen
Keine Ankündigung bisher.

[Misterhouse] KONNEX Betriebsmodiumschaltung - Welcher EIS/DPT Type?

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

    [Misterhouse] KONNEX Betriebsmodiumschaltung - Welcher EIS/DPT Type?

    Hi guys,

    ich würde gerne anstatt der 1bit Modi einen Konnex Betriebsmodus haben. Kann mir einer mal zeigen welcher Datentyp für Betriebsmodiumschaltung zuständig ist?

    Details zu den DTPs gibt es hier:
    Datentypen - KNX/EIB - Lexikon - KNX-User-Forum

    Ist das ein 20.102?
    oder 201.100?
    oder 206.100?

    Im Appendix A steht auch was in die Richtung (Seite 147).

    Habt ihr da Infos für mich? Ich will einen entsprechenden MH Objekttyp erzeugen.

    LG

    #2
    Nach meinem Kenntnisstand ist das ein 20.102.
    Ich habe allerdings nur diesen Link: SourceForge.net: Object Definition Syntax - linknx

    Gruß, davall

    Kommentar


      #3
      hmm, ich hab die Sache auch nie ganz kapiert und bin mir bis heute nicht ganz sicher ob mit der Betriebsmodusumschaltung auch wirklich alle dasselbe meinen..

      Die ETS kennt einen solchen oder ähnlichen DPT ja mal garnicht(*), bei Betriebsmodusumschaltung sind die Bits gleich, beim Status-Rückmeldeobjekt scheiden sich die Geister dann aber wohl, da macht IMHO jeder ggfs. wozu er gerade lustig ist oder evtl. was im Jahr der Entstehung die gültige Interpretation war..
      Kannst mal hier ab S73 lesen
      Zum 20.102 passt der Betriebsmodus jedenfalls, der Autor der Berker-Doku hat den DPT aber wohl auch nicht gewusst (S13)
      Aber nachdem ich die Tage auch schonmal gesucht hatte, Gira sagt hier (S19) auch 20.102
      Der "Abweichler" fällt mir gerade nicht ein, war was älteres..

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

      Kommentar


        #4
        For setting the HVAC Mode, DPT_HVACMode (20.102) shall be used.
        The other DPTs are only used in LTE-Mode (201.100, 206.100), and not used by S-Mode devices (=programmed with ETS) by a famous manufacturer; these devices also have Datapoints with 20.102, by the way.
        The DPTs mentioned in the appendix are only for status reporting, not for setting the HVAC Mode.
        So it should be 20.102.

        Kommentar


          #5
          HI all,

          habe eine EIBHVAC Klasse implementiert. Lesen/Senden funktioniert. Nur klappt die Betriebsmodusumschaltung (BMU) nicht.

          Ich sehe im Busmonitor in der ETS, dass die Gruppenadresse auf den richtigen Wert gesetzt wird. Ich sehe auch bei Aenderung der BMU am TS2+ die entsprechende Nachricht auf dem Busmonitor (L und S Flag gesetzt). Ich sende auch auf die richtige Gruppenadresse.

          Nur wenn ich mit MH auf den Bus sende scheint die Umschaltung im TS2+ nicht zu klappen.

          ich stehe auf dem Schlauch. Kann mir mal jemand über die Schulter schauen?

          Hat das was mit den Flags zu tun? Ich muss gestehen, diesen Part habe ich noch nicht ganz verstanden. Anyhow, Hilfe ist willkommen.

          LG

          Kommentar


            #6
            Nachtrag. Siehe Screenshot. Die erste Zeile ist das Resultat im Busmonitor wenn MH auf den Bus sendet. Die weiteren Zeilen sind das Resultat vom Lesen aus dem Gruppenmonitor.

            Ich sende eine 4, ein Lesen danach liefert eine 2.

            Hat jemand ne Ahnung was da schief geht?
            Angehängte Dateien

            Kommentar


              #7
              Kann mich zwar nicht im Detail erinnern aber ich kam beim letzten ähnlich weit, daher meine Zweifel...
              Ich probiers nachher mal mit meinem BIQ was der macht.

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

              Kommentar


                #8
                Welche Flags müssen denn bei dem BMU KO gesetzt sein? Aktuell habe ich all an (Kommunikation, Lesen, Schreiben, Übertragen, Aktualisieren).

                Kommentar


                  #9
                  Alle Flags, sollte schon passen..

                  Also, beim B.IQ bekomme ich (auch KLSÜA gesetzt) schon 4 gelesen wenn ich 4 schreibe usw.
                  Sehr strange.. Vielleicht aus versehen das (übergeordnete) Zwangsobjekt gesetzt ? ggfs. da mal 0 reinschreiben.

                  Aber der Reglerstatus entspricht nur fast DPT_HVACStatus: Bit4 verkauft uns Insta als "Regler gesperrt" und die Konnex als "Dew point", der Rest scheint zu stimmen.

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

                  Kommentar


                    #10
                    Es klappt jetzt. habe aus debugging zwecken mal mit groupwrite auf der console gearbeitet und da ging es. Habe dann mit dem Busmonitor in der ETS nach einem Delta geschaut. Habe dann mit dem vbusmonitor von eibd auf Byte Ebene auf den Bus geschaut und erst dann ein Delta festgestellt.

                    Das Delta kurz behoben und jetzt geht es! Cool.

                    Ich schieb das noch in das SVN sobald ich da durchsteige.

                    Bsp für die eib_items.mht
                    Code:
                    EIBHVAC,  0/4/0,               Zentral_Betriebsmodus,  Verschiedenes, R
                    EIBHVAC,  1/4/12,              Kueche_Betriebsmodus,   EG_Kueche, R
                    In ein *.pl im Code Verzeichnis z.B.
                    Code:
                    set $Kueche_Betriebsmodus 'comfort' if (time_cron( '0  7 * * *' ));
                    set $Kueche_Betriebsmodus 'standby' if (time_cron( '0  10 * * *' ));
                    set $Kueche_Betriebsmodus 'comfort' if (time_cron( '0  15 * * *' ));
                    set $Kueche_Betriebsmodus 'night'   if (time_cron( '0  22 * * *' ));
                    Einfach in die EIB_Items.pm folgendes hinzufügen:
                    Code:
                    package EIBHVAC_Item;
                    
                    @EIBHVAC_Item::ISA = ('EIB_Item');
                    
                    sub new {
                        my ($class, $id, $mode) = @_;
                    
                        my $self  = $class->SUPER::new($id, $mode);
                        push(@{$$self{states}}, 'auto', 'comfort', 'standby', 'night', 'frost');
                        return $self;
                    }
                    
                    sub eis_type {
                        return '20.102';
                    }
                    
                    sub decode {
                        my ($self, @data) = @_;
                        my $res;
                    
                        unless ($#data == 1) {
                            &main::print_log("Not EIS type 20.102 data received for $self->{groupaddr}: \[@data\]") if $main::config_parms{eib_errata} >= 2;
                            return;
                        }
                    
                        if (($data[1]) == 0) {
                            return 'auto';
                        } elsif ($data[1] == 1) {
                            return 'comfort';
                        } elsif ($data[1] == 2) {
                            return 'standby';
                        } elsif ($data[1] == 3) {
                            return 'night';
                        } else {
                            return 'frost';
                        }
                    }
                    
                    sub encode {
                        my ($self, $state) = @_;
                    
                        if ($state eq 'auto') {
                            return ([0, 0]);
                        } elsif ($state eq 'comfort') {
                            return ([0, 1]);
                        } elsif ($state eq 'standby') {
                            return ([0, 2]);
                        } elsif ($state eq 'night') {
                            return ([0, 3]);
                        } elsif ($state eq 'frost') {
                            return ([0, 4]);
                        }
                        else {
                            print "Invalid state for EIS type 20.102: \'$state\'\n";
                            return;
                        }
                    }

                    Kommentar


                      #11
                      Betriebsmodiumschaltung in iPhone Visu

                      Hallo RaK,

                      danke für den Code. Die Betriebsmodiumschaltung funktioniert in der normalen Visu von MH für meine Hager RTRs. In der iphone-Visu zeigt er immer nur den aktuellen Betriebsmodus an. Was muß ich denn da noch ergänzen?

                      Gruß
                      sunnyhd
                      Angehängte Dateien

                      Kommentar

                      Lädt...
                      X