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

    #16
    Ok...

    Wenn die begehrten Daten oder Steuerungsfunktionen in einem ausführlichen Protokoll dokumentiert sind, kann man (wenn es dann fertig ist) relativ leicht das Plugin für die ComfoAir anpassen. Da werden einfach Hexwerte über einen Socket gesendet und empfangen. Aber ohne Doku...
    Gruss Patrik alias swiss

    Kommentar


      #17
      Zitat von swiss Beitrag anzeigen
      Zumal in DE meistens nicht einmal ein Untergeschoss gebaut wird und somit nicht einmal das Argument mit der Treppe zählt
      Pah... meine Heizung steht im 1. OG

      Und generell... ihr habt ja recht... dann begründe ich das für mich eben mit Spieltrieb und Errungenschaft für die Nachwelt :-)

      Grüße
      Christian

      Kommentar


        #18
        Zitat von amaridian
        Und generell... ihr habt ja recht... dann begründe ich das für mich eben mit Spieltrieb und Errungenschaft für die Nachwelt :-)
        Auch gut Genau von solchem Ehrgeiz lebt die DIY Welt Würde ich mir sonst die Mühe machen ein Gateway-Plugin für ein Gerät zu schreiben, dass ich selber nicht einmal besitze

        Aber es ist schon eine Schande, dass die Hersteller nicht verpflichtet werden, ihre Protokolle offenzulegen. Mindestens auf Anfrage. Ein besitzer einer KNX Installation hat ja auch ein Anrecht auf die Projektdaten inklusive ETS Export. Ob das dem Systemintegrator nun gefällt oder nicht!
        Gruss Patrik alias swiss

        Kommentar


          #19
          3 Funktionen die den Aufwand rechtfertigen aus Sicht eines WP-Besitzers:

          - Brauchwassererwärmung auf Knopfdruck/via Logik
          - Urlaubsfunktion
          - Partymodus gekoppelt an Anwesenheit zu Feiertagen

          Evtl. noch das Anpassen der Solltemperatur in der Übergangszeit.
          Umgezogen? Ja! ... Fertig? Nein!
          Baustelle 2.0 !

          Kommentar


            #20
            Zitat von swiss Beitrag anzeigen
            Aber es ist schon eine Schande, dass die Hersteller nicht verpflichtet werden, ihre Protokolle offenzulegen
            Ja, das ist das leidige als Heizungsbesitzer mit einem EBUS... Ein Teil ist Public und standardisiert, aber eben auch jede Menge proprietäre Krüze... und der EBUS-Verein hat sich dazu noch anscheinend zwischenzeitlich selbst aufgelöst....
            Zitat von JuMi2006 Beitrag anzeigen
            - Brauchwassererwärmung auf Knopfdruck/via Logik
            - Urlaubsfunktion
            - Partymodus gekoppelt an Anwesenheit zu Feiertagen
            100%ACK. In meinem Falle ist es dann noch der Komfort nicht durch 5 Menüs auf einem Miniatur-Amber-Monochrom-Display im Keller zu machen
            Aber der Weg wird steinig und langatmig, einfach ist was anderes....

            Kommentar


              #21
              Wenn es einfach wäre würde WIR uns ja auch nicht damit befassen *Hornbach "Es gibt immer was zu tun"-Grinsen aufsetz*

              Kommentar


                #22
                Hat jemand so einen Adapter rumfliegen den er für ein paar Wochen nicht braucht? Ich hab jeden Abend ne fest definierte Stunde die ich in meinem Arbeitszimmer verbringen muss und je weiter ich mit dem Wiregate, der ETS und Visu komme umso mehr k*** mich die dumme Heizung an.

                Den aktuellen Status (Standby, Sommer, Heizen, WW) frage ich schon über Binäreingänge ab aber ich würd auch gern mal was von der Heizung direkt hören .

                Vaillant VWS 82/3
                Umgezogen? Ja! ... Fertig? Nein!
                Baustelle 2.0 !

                Kommentar


                  #23
                  Gegen Ende der Woche kommt meine Hardware

                  Wer hat Lust das mal von php in Perl zu übersetzen -> Anbindung WOLF Therme mittels eBus-Adapter und eBus-Modul ???

                  Mal sehen wieviel die Vaillant mit mir spricht, im IPS-Forum gehts da auch grad wieder vorwärts und ich will das dann mit Perl begleiten. -> Vaillant Therme über eBus steuern - Seite 4
                  Würde mich freuen wenn wir den Vaillant-Jungs in die Suppe spucken können und eine OSS-KNX-Anbindung schaffen .

                  Gruß Mirko
                  Umgezogen? Ja! ... Fertig? Nein!
                  Baustelle 2.0 !

                  Kommentar


                    #24
                    So ich hab jetzt mal angefangen das php-Gedöns in perl zu übersetzten, komme da aber nicht weiter.

                    Ich dachte da evtl. an swiss

                    Ich hab das mal im Code kommentiert wo es hängt:
                    Code:
                    #COMPort_SendText (12345, add_crc(hexToStr("FFFE0902031601020F"))); Befehl via php in IPS
                    
                    #Testausgabe des zu sendenen Befehls "FFFE0902031601020F"
                    print add_crc(hexToStr("FFFE0902031601020F"));
                    
                        sub hexToStr {
                            my $hex = shift;
                            #print hex($hex);
                            print (length($hex),"\n"); ### o.k. ;)
                            $string=''; 
                            for ($i=0; $i < length($hex)-1; $i+=2) { 
                                $string .= chr(hex($hex[$i].$hex[$i+1])); ### hier hakt es
                            }
                            print ($string,"\n"); ### immer leer ???
                            return $string; 
                        }
                        
                    ### Die Sub ist  für mich logisch
                        sub add_crc {
                            my $message = shift;
                            return $message.build_crc($message); 
                        }
                    
                    ### Soweit bin ich noch nicht ;)
                        sub build_crc {
                            my $message = shift;
                            $crc = 0; 
                            for ($i=0 ; $i<length($message) ; $i++) { 
                            $crc = build_crc_byte(substr($message,$i,1), $crc); 
                           } 
                           return chr($crc); 
                        }
                    
                    ### Soweit bin ich noch nicht ;) Aber dann haben wir es geschafft ;)
                        sub build_crc_byte {
                            my $byte = shift;
                            my $crc = shift;
                            my @ChecksumArray = ( 
                             0x00, 0x9B, 0xAD, 0x36, 0xC1, 0x5A, 0x6C, 0xF7, 0x19, 0x82, 0xB4, 0x2F, 0xD8, 0x43, 0x75, 0xEE, 
                             0x32, 0xA9, 0x9F, 0x04, 0xF3, 0x68, 0x5E, 0xC5, 0x2B, 0xB0, 0x86, 0x1D, 0xEA, 0x71, 0x47, 0xDC, 
                             0x64, 0xFF, 0xC9, 0x52, 0xA5, 0x3E, 0x08, 0x93, 0x7D, 0xE6, 0xD0, 0x4B, 0xBC, 0x27, 0x11, 0x8A, 
                             0x56, 0xCD, 0xFB, 0x60, 0x97, 0x0C, 0x3A, 0xA1, 0x4F, 0xD4, 0xE2, 0x79, 0x8E, 0x15, 0x23, 0xB8, 
                             0xC8, 0x53, 0x65, 0xFE, 0x09, 0x92, 0xA4, 0x3F, 0xD1, 0x4A, 0x7C, 0xE7, 0x10, 0x8B, 0xBD, 0x26, 
                             0xFA, 0x61, 0x57, 0xCC, 0x3B, 0xA0, 0x96, 0x0D, 0xE3, 0x78, 0x4E, 0xD5, 0x22, 0xB9, 0x8F, 0x14, 
                             0xAC, 0x37, 0x01, 0x9A, 0x6D, 0xF6, 0xC0, 0x5B, 0xB5, 0x2E, 0x18, 0x83, 0x74, 0xEF, 0xD9, 0x42, 
                             0x9E, 0x05, 0x33, 0xA8, 0x5F, 0xC4, 0xF2, 0x69, 0x87, 0x1C, 0x2A, 0xB1, 0x46, 0xDD, 0xEB, 0x70, 
                             0x0B, 0x90, 0xA6, 0x3D, 0xCA, 0x51, 0x67, 0xFC, 0x12, 0x89, 0xBF, 0x24, 0xD3, 0x48, 0x7E, 0xE5, 
                             0x39, 0xA2, 0x94, 0x0F, 0xF8, 0x63, 0x55, 0xCE, 0x20, 0xBB, 0x8D, 0x16, 0xE1, 0x7A, 0x4C, 0xD7, 
                             0x6F, 0xF4, 0xC2, 0x59, 0xAE, 0x35, 0x03, 0x98, 0x76, 0xED, 0xDB, 0x40, 0xB7, 0x2C, 0x1A, 0x81, 
                             0x5D, 0xC6, 0xF0, 0x6B, 0x9C, 0x07, 0x31, 0xAA, 0x44, 0xDF, 0xE9, 0x72, 0x85, 0x1E, 0x28, 0xB3, 
                             0xC3, 0x58, 0x6E, 0xF5, 0x02, 0x99, 0xAF, 0x34, 0xDA, 0x41, 0x77, 0xEC, 0x1B, 0x80, 0xB6, 0x2D, 
                             0xF1, 0x6A, 0x5C, 0xC7, 0x30, 0xAB, 0x9D, 0x06, 0xE8, 0x73, 0x45, 0xDE, 0x29, 0xB2, 0x84, 0x1F, 
                             0xA7, 0x3C, 0x0A, 0x91, 0x66, 0xFD, 0xCB, 0x50, 0xBE, 0x25, 0x13, 0x88, 0x7F, 0xE4, 0xD2, 0x49, 
                             0x95, 0x0E, 0x38, 0xA3, 0x54, 0xCF, 0xF9, 0x62, 0x8C, 0x17, 0x21, 0xBA, 0x4D, 0xD6, 0xE0, 0x7B); 
                    
                           $result = ($ChecksumArray[ord($byte)] ^ $crc); 
                            print ($result,"\n"); 
                           $result = ($ChecksumArray[$crc] ^ ord($byte)); 
                           print ($result,"\n"); ; 
                    }
                    Umgezogen? Ja! ... Fertig? Nein!
                    Baustelle 2.0 !

                    Kommentar


                      #25
                      Jemand hat nach mir gerufen?

                      Kurze Frage für mich zum Verständniss... Die Sub in der etwas nicht geht macht aus Hex einen String. Wiso soo kompliziert? Hab es gerade nur kurz überflogen aber Perl hat super Funktionen um das in einem 1-2 Zeiler zu lösen. Oder wird da etwas spezielles mit dem Hex oder String angestellt?
                      Gruss Patrik alias swiss

                      Kommentar


                        #26
                        Nee frag mich nicht
                        Das verlinkte php war halt die Vorlage, ich wollte mich da langsam ranarbeiten um zu sehen wie so ein CRC erstellt wird, ich verstehe auch das Array nicht

                        Das hier klingt auf jedenfall überschaubar, aber wird trotzdem harte Arbeit: Vaillant Therme über eBus steuern - Seite 2

                        Damit müsste bei "0008B5040100" CRC ja "18" sein oder ??
                        Umgezogen? Ja! ... Fertig? Nein!
                        Baustelle 2.0 !

                        Kommentar


                          #27
                          Und ich dachte schon das Protokoll der Comfoair sei Müll... Aber dass liest sich noch viel schlimmer

                          Also ich versuche nochmal die Protokollbeschreibung zu verstehen (Brainstorming)...

                          0008B5040100 + CRC = (0008B504010018)

                          00 = Masteradresse... Masteradresse = Slaveadresse -5... Slaveadresse des Firingautomaten = 5... OK verstanden
                          08 = Slaveadresse... Slaveadresse = Masteradresse + 5... Ergibt bei mir in diesem Kontext aber beim besten Willen 5 und nicht 8???
                          B504 = Daten Lesen... auch verstanden. Damit wird der Slave angewiesen zu antworten.
                          01 = Datenlänge (1byte) Ok auch verstanden
                          00 = Datenbyte. In diesem Beispiel 0. Ist mir auch noch klar...
                          18 = CRC... ???Hää? Das leuchtet mir überhaubt nicht ein. Aber vieleicht steht die Lösung ja in der PHP. Ich sehe mir die morgen mal genauer an.

                          Fazit... OMG Wer denkt sich nur immer diese Protokolle aus. Ich hoffe wir finden noch heraus wie das alles zusammenspielt. Wenn die Zusammenhänge mal klar sind ist das Plugin schon halb fertig
                          Gruss Patrik alias swiss

                          Kommentar


                            #28
                            Zitat von swiss Beitrag anzeigen
                            Wer denkt sich nur immer diese Protokolle aus.
                            Ich sage ja immer gerne: es muss bei manchem irgendein krasses Kraut zu rauchen geben, das ich noch nicht kenne
                            Solange werd ich das auch nicht verstehen..

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

                            Kommentar


                              #29
                              Vielleicht hilft das hier ja weiter: EBusCRC < EBus < TWiki

                              Oder noch besser wäre vielleicht das: http://ebus.webhop.org/twiki/bin/vie...LinuxKonnektor

                              Gruß Mirko
                              Umgezogen? Ja! ... Fertig? Nein!
                              Baustelle 2.0 !

                              Kommentar


                                #30
                                Also irgendwie werde ich aus der crc Berechnung nicht schlau. aber scheinbar wird in dem Perlplugin eine externe Funktion genutzt. Sonst würden in dem Plugin ja diverse Deklarationen fehlen und es wäre so nicht lauffähig.

                                Kann mir mal jemand einen Crashkurs in crc berechnung mit perl geben. Gibt es da eine lib für crc die auf dem WG benutzt werden könnte? Sonst müsste ich warscheinlich einen Studiengang in Datenübertragug belegen um dass zu verstehen.

                                Bei der ComfoAir hiess es noch... Zähle alles ausser start und ende zusammen und addiere 175 dann hat man die Prüfsumme.

                                Hier heist es... Zähle alles als Rohdaten zusammen und führe es einer Berechnug zu die sich mir überhaubt nicht erschliesst

                                Ich befürchte dass ist eine Scheibe zu hart für mich. Wenn das jemand für einen Laien wie mich aufbereiten könnte dass ich es verstehe wäre ich sehr dankbar Ansonnsten muss ich warscheinlich passen.
                                Gruss Patrik alias swiss

                                Kommentar

                                Lädt...
                                X