Ankündigung

Einklappen
Keine Ankündigung bisher.

Russound_RIO.pl für 8 Zonen der C5

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

    [wiregate] Russound_RIO.pl für 8 Zonen der C5

    Hallo zusammen,
    hier mein Mini-Patch für das WG-Plugin Russound_RIO.pl von ChrisM (danke!) für die Zonen 7 und 8 der Russound C5.

    Es ist ein Mini-Patch, denn er betrifft nur die GA-Struktur. Nach Makkis Skript beginnt Zone 1 bspw. bei 10/1/10, Zone 2 bei 10/1/50 usw. Das reicht in der Mittelgruppe 10/1 nur bis Zone 6, und bei 10/2/10 startet Zone 1 des zweiten Russound MCA sein.

    Um nicht zu viel zu ändern, mache ich das so: Zone 1 bspw. bei 10/1/10, Zone 2 bei 10/1/50 ... Zone 7 bei 10/2/10, Zone 8 bei 10/2/50, und bei 10/3/10 startet Zone 1 des zweiten Russound MCA. Das ist ein wenig verschwenderischmit GAs, aber dafür verlassen wir Makkis GA-Struktur nicht.

    Code:
    @@ -12,7 +12,7 @@
     #
     #############################################################################
     
    -# $plugin_info{$plugname.'_cycle'}=0; return "Russound_RIO  disabled";   # uncomment to disable plugin
    +#return;   # uncomment to disable plugin
     
     #############################################################################
     # Configuration:
    @@ -33,7 +33,7 @@
     #############################################################################
     # Constants:
     my $MAX_ZONES = 31;
    -my $ZONES_PER_CONTROLLER = 8;
    +my $ZONES_PER_CONTROLLER = 6;
     
     #############################################################################
     # Collect log information
    @@ -138,8 +138,7 @@
       {
         my $ctrl = int($zone/$ZONES_PER_CONTROLLER);
         my $czone = int($zone%$ZONES_PER_CONTROLLER);
    -    my $base = $knxstartaddress + 10 + ($czone*40) + ($ctrl*512);
    -    $base+=16 if $czone>=6;
    +    my $base = $knxstartaddress + 10 + ($czone*40) + ($ctrl*256);
         for( my $i = 0; $i < 13; $i++ ) # iterate funcnames
         {
           my $a = $base + $i;
    @@ -168,21 +167,18 @@
       my $controller;
       {
         use integer;
    -    $func = ($dest - $knxstartaddress) % 512;
    -    $func -=16 if $func>=266;
    -    $zone = ($func - 10) / 40;  
    +    $func = ($dest - $knxstartaddress) % 256;
    +    $zone = ($func - 10) / 40;
         $func = ($func - 10) % 40;
    -    $controller = ($dest - $knxstartaddress) / 512;
    +    $controller = ($dest - $knxstartaddress) / 256;
       }
    -
    +  
       if( $func < 20) # >= 20 = response addresses
       {
         $retval .= sendrussFunc( $controller, $zone, $func, $val );
       }
     }
     
    -return if $retval eq 'Socket: [->;;';
    -
     return $retval;
     
     #############################################################################
    @@ -353,4 +349,4 @@
       my $knxGA = $knxstartaddress+30+$func + (($Z-1)*40) + (($C-1)*256);
       knx_write( addr2str( $knxGA, 1 ), $val, $dpt );
       $retval .= 'KNX[' . addr2str( $knxGA, 1 ) . ',' . $dpt . ']:' . $val . ';' if $show_debug;
    -}
    +}
    @ChrisM: wenn ok für dich, kann ich das gepatchte Plugin ins SVN hochladen.

    VG, Fry

    #2
    Zitat von Fry Beitrag anzeigen
    @ChrisM: wenn ok für dich, kann ich das gepatchte Plugin ins SVN hochladen.
    Grundsätzlich ist das für mich OK.

    Aber: wir sollten vorher schauen was Makki dazu sagt - denn die GA Struktur sollte natürlich kompatibel zum Deamon aber v.a. zum CometVisu-Russound-Generator-Skript sein.
    TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und als KNX Visu die CometVisu auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!

    Kommentar


      #3
      Zitat von Chris M. Beitrag anzeigen
      Grundsätzlich ist das für mich OK.

      Aber: wir sollten vorher schauen was Makki dazu sagt - denn die GA Struktur sollte natürlich kompatibel zum Deamon aber v.a. zum CometVisu-Russound-Generator-Skript sein.
      No prob. Für mich ist es auch ok, wenn der Patch nicht ins SVN kommt. Allerdings hatte ich neulich einen regen PN-Austausch, damit ein Mitforist seine Russound C5 zum Laufen kriegt. Hat am Ende geklappt...

      Der Patch ist ja nun hier, mir reicht das jedenfalls.

      VG, Fry

      Kommentar


        #4
        Solange man passend Perl-RIO-Plugin/Generator oder russconnectd/Generator verwendet sollte das passen; im russconnectd ist das mit den zones/controller derzeit noch etwas mehr "Hardcoded"..
        Aber das ist schon die Idee dahinter: Egal wieviele Russ*Zonen man hat->man fülle die Adressen ab StartGA auf, fertig..

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

        Kommentar


          #5
          Hallo Fry, bist du dir sicher, dass dein Patch für die Zonen 7 und 8 komplett fehlerlos funktioniert ? Wenn ich zB den Bass für Zone 7 einstellen will, wird zB auch der Party Wert verändert. Drücke ich auf Treble, verändert sich DND mit

          Kommentar


            #6
            Nö bin nicht sicher. Ich habe selbst noch nicht alle Zonen in Betrieb. Aber das wird dieses Jahr noch passieren. Vielleicht werden wir aber auch rechts überholt, Makki hat ja mal angedeutet, dass ein Patch des russconnectd für die C5 in Arbeit sein soll. Den würde ich gerne dann nutzen...

            Kommentar


              #7
              Vielleicht könnte man auch mit SmartHome.py zusammenarbeiten ?

              In dem Projekt SmartHome.py haben die das auch mit RIO umgesetzt:

              https://knx-user-forum.de/smarthome-...-plugin-2.html

              Hier der Link zum GIT

              SmartHome.py - Russound Plugin

              Ist jetzt doch blöde. Ich nutze nämlich 8 Zonen. Bis Zone 6 klappt alles wunderbar, Zonen 7 und 8 haben selbst mit Frys Modifikationen definitiv Fehler. So wird bei Anschalten von der Zone 7 nicht wie bei den anderen Zonen zB die Lautstärke etc aktualsiert, sondern Werte von DND, Balance etc auf völlig falsche Werte gesetzt. Wäre klasse, wenn doch nochmal wer rüber schauen könnte, der das besser versteht als ich.

              Kommentar


                #8
                SmartHome.py hat ein gänzlich anderes Konzept dahinter als die WireGate-Plugins, das ist nicht kompatibel.
                Andererseits ist das RIO Protokoll so simpel, dass jegliche Abstimmung aufwändiger ist als mal schnell ein Feature zu implementieren.

                Das Problem mit dem Plugin sind auch nicht die Zonen 7 und 8 (die lassen sich leicht implementieren, die GA-Struktur muss halt dann noch stimmen um mit den automatischen Visu-Seiten zu harmonieren).
                Das Problem ist, dass die WG-Plugins nicht Echtzeit sind...

                D.h. hier braucht man eigentlich einen eigenen Deamon oder eine richtige Logik-Engine (wie SmartHome.py) das das Event-Handling übernimmt...
                TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und als KNX Visu die CometVisu auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!

                Kommentar


                  #9
                  hi chris, danke für die Erklärung. mir kommts nicht auf echtzeit an. ich nutze dein plugin, um die zonen an und auszuschalten. das klappt auch wunderbar. nur wenn die zone 7, 8 angeschaltet wird, wird zb die balance auf zb -83 gesetzt. ich passe gerne die gas manuell an. leider versteh ich die programmierung deines plugins nicht wirklich. könntest du erklären wie man die gas für die Zonen 7, 8 anpasen müsste. danke und Gruß lars

                  Kommentar


                    #10
                    Kurze OT-Frage: ich nutze aktuell "nur" das Wiregate und dessen Plugins. Die sind für vieles super, aber zB für Lichtlogiken zu langsam. Ich habe das bisher auf die Limitationen der etwas schwachen Hardware geschoben, oder auf den eibd. Ist linknx oder Misterhouse oder smarthome.py wesentlich schneller?
                    Danke - Fry

                    Kommentar


                      #11
                      Russound_RIO.pl für 8 Zonen der C5

                      @Fry: ja

                      Kommentar


                        #12
                        Russound_RIO.pl für 8 Zonen der C5

                        Kann ich bestätigen!
                        Mit freundlichen Grüßen
                        Niko Will

                        Logiken und Schnittstelle zu anderen Systemen: smarthome.py - Visualisierung: smartVISU
                        - Gira TS3 - iPhone & iPad - Mobotix T24 - ekey - Denon 2313 - Russound C5 (RIO over TCP Plugin) -

                        Kommentar


                          #13
                          Kurze Frage an dich, Fry. Was meinst du genau mit Lichtlogiken?

                          Meinst du, dass Statusmeldungen, wann wo Licht angeht, schneller beim smartpyhton wiedergegeben werden als im Wiregate ? Dachte immer, die Meldungen kommen vom eibd.

                          Oder meinst du echte Logiken, wieZB stelle Licht am Sonntag an, wenn Personen anwesend sind ?

                          Kommentar


                            #14
                            Echtzeitlogiken sind im WireGate eben nicht wirklich drin, hat aber auch niemand behauptet dass es so wäre.

                            Eine kleine Erläuterung des Problems findet man hier:
                            https://knx-user-forum.de/wiregate/2...n-gesucht.html

                            Grüße

                            Edit:
                            Für smarthome fehlt mir persönlich einfach eine deutsche Doku und die Zeit da mal einzustigen. Ersteres würde vieles vereinfachen.
                            Umgezogen? Ja! ... Fertig? Nein!
                            Baustelle 2.0 !

                            Kommentar


                              #15
                              @larsknx

                              Mit Lichtlogiken ist z.B. gemeint, dass der PM das Licht normal per Schalttelegramm anschaltet und die Logik sendet je nach Tageszeit einen Dimmwert hinterher. Bei mir z.b. wenn ich nachts kurz auf die Toilette muss gehen alle Lampen auf dem Weg dorthin nur auf 5% an. Als ich diese Logik vor sh.py mittels Wiregate Plugin gelöst habe, kam es schon mal vor, dass der Dimmwert nicht schnell genug kam. Sprich das Licht geht erstmal auf 100% an und dimmt dann nach ein bis zwei Sekunden wieder runter auf 5%. Dieses Verhalten war ein absolutes No-Go für mich!
                              Mit freundlichen Grüßen
                              Niko Will

                              Logiken und Schnittstelle zu anderen Systemen: smarthome.py - Visualisierung: smartVISU
                              - Gira TS3 - iPhone & iPad - Mobotix T24 - ekey - Denon 2313 - Russound C5 (RIO over TCP Plugin) -

                              Kommentar

                              Lädt...
                              X