Ankündigung

Einklappen
Keine Ankündigung bisher.

Alexa auf EibPC

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

    Alexa auf EibPC

    Hallo,
    ich möchte Amazon Alexa mit dem EibPC koppeln. In ha-bridge muss man hierzu Befehle kopieren. Ich habe mir jetzt die Befehle aus dem Webinterfaces heraus gesucht. Hat der EibPC nur toggle Befehle, also keine separaten für ein und aus? Wie wird ein Dimmer per Befehl an den EibPC übergeben? Geht das auch im Aufruf das ich 0-100 oder 0-255 einbaue? Oder komm ich um die Installationen von eibd nicht drum herum?

    #2
    kannst Du das etwas näher erläutern, was genau Du suchst? Ich hab's noch nicht verstanden.
    Aber selbstverständlich kann der EibPC EIN und AUS Telegramme senden, aber das war vermutlich nicht Deine Frage!?
    ....und versuchen Sie nicht erst anhand der Farbe der Stichflamme zu erkennen, was Sie falsch gemacht haben!

    Kommentar


      #3
      Zitat von fuchs Beitrag anzeigen
      Hat der EibPC nur toggle Befehle, also keine separaten für ein und aus?
      Ehrlich gesagt, ist das unklar, was genau Du machen willst. Auch was Du mit "Befehle aus dem Webinterfaces" meinst. Ich vermute, Du meinst, dass du den http -Aufruf einer bestehenden Visu nutzen willst. Kann man schon machen, aber ....
      Besser: Per UDP oder TCP und einem eigenen kleinen Protocoll Daten an den EibPC schicken und dort dann einfach auf KNX ausgeben. Schau dir die Beispiele im Handbuch an, dann sollte das klar sein und gerade UDP ist da wirklich sehr einfach...

      offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
      Enertex Produkte kaufen

      Kommentar


        #4
        Zitat von enertegus Beitrag anzeigen
        Per UDP oder TCP und einem eigenen kleinen Protocoll Daten an den EibPC schicken und dort dann einfach auf KNX ausgeben. Schau dir die Beispiele im Handbuch an, dann sollte das klar sein und gerade UDP ist da wirklich sehr einfach...
        Ja genau soetwas, spreche mit Alexa, welcher über die HA Bridge einen Webaufruf tätigen kann. Also einen http Aufruf mit dem ich Licht an und aus machen kann ggfs. dimmen. Also über einen http Befehl 1/2/3 True. Hast du ein Beispiel dazu?

        Über UDP sollte also die Gruppenadresse und Wert zum EibPC kommen und dann an den Bus gesendet werden.

        Hier noch eine kleine Erklärung:
        https://github.com/bwssytems/ha-bridge

        Also dann in etwa so:
        udp://192.168.1.1:4806/"1/2/3",{intensity.percent}

        Geht soetwas?

        Zuletzt geändert von fuchs; 20.01.2017, 13:33.

        Kommentar


          #5
          Handbuch lesen!
          Die Steuerung per SmartPhone macht ein Haus nicht zum SmartHome...

          Kommentar


            #6
            https://knx-user-forum.de/forum/supp...-from-pc/page2

            seite 3

            Habe hier was passendes gefunden, eine Frage zum Code ganz am Ende. Dort wir zwischen size 3 und 4 unterschieden. Warum 3 und 4? Ich habe doch 0 oder 1 und im anderen Fall 0 bis 255. Was gibt size zurück? Bin dazu auch im Handbuch nicht schlau geworden

            Kommentar


              #7
              enertegus, vielen Dank für den Tipp mit UDP. Habe hier im Forum etwas gefunden und etwas modifiziert. Klappt wunderbar:

              // ************** UDP Schnittstelle **************
              Value8=0u08
              Value1=0b01
              IP=0u32
              Port=0u16
              Rx=$$ // Received Command, for example 0/0/1=1

              telegram=event(readudp(Port, IP, Rx));
              GA_Nr=convert(split(Rx,0u16,find(Rx,$=$,0u16)-1u16), 0u16);
              temp=size(split(Rx,find(Rx,$=$,0u16)+1u16,1399u16) )

              if telegram and temp == 1u16 then {
              Value1=convert(split(Rx,find(Rx,$=$,0u16)+1u16,139 9u16),0b01);
              write(address(GA_Nr),Value1)
              }endif

              if telegram and temp > 1u16 then {
              Value8=convert(split(Rx,find(Rx,$=$,0u16)+1u16,139 9u16),0u08);
              write(address(GA_Nr),Value8)
              }endif
              // ************** ENDE UDP Schnittstelle **************

              in der HA Bridge dann folgenden Befehl:

              udp://192.168.123.172:4806/5126=1

              für Binäres ein oder

              udp://192.168.123.172:4806/5128=0${intensity.byte}

              für einen Dimmer. Die Null vor dem $ ist dafür, dass temp größer 1 ist, auch wenn der Dimmwert 1 -9 ist.
              Zuletzt geändert von fuchs; 13.03.2017, 10:44.

              Kommentar


                #8
                Ich würde gern noch den Datentyp mit übergeben und nicht errechnen. Also b u oder f. Wie kann ich Strings vergleichen in dieser Art geht es nicht

                Datenyp == $b$

                Kommentar


                  #9
                  Zitat von fuchs Beitrag anzeigen
                  enertegus, vielen Dank für den Tipp mit UDP. Habe hier im Forum etwas gefunden und etwas modifiziert. Klappt wunderbar:
                  Danke fuchs für das posten der Routine. Momentan bin ich erst noch an der EibPC.Visu und danach kommt Alexa dran. Es wäre schön - da der Titel ja schon aussagekräftig beschreibt, worum es da geht. Wenn das klappt oder noch weitere Dinge wichtig sind in Verbindung mit Alexa, dann wäre es schön, wenn man das gesammelt wo erfassen könnte. Solange könntest Du ja weiterhin hier Dinge zu der Thematik dazustellen.

                  Die HA-Bridge hast Du auf einem Raspberry, oder?

                  Kommentar


                    #10
                    Dann vielleicht ist für dich die Anleitung zur Installation interessant:

                    https://hilfreiche-server.tips/ferns...ern-mit-alexa/

                    Kommentar


                      #11
                      Ich würde, da es so gut klappt, auch gerne Temperaturen auf den Bus senden. Die HAbridge kann aber nur Licht von Haus aus. Kennt jemand eine Alternative? Habe von obenhab gelesen, ist das ebenso einfach zu installieren?

                      Kommentar


                        #12
                        Zitat von fuchs Beitrag anzeigen
                        enertegus, vielen Dank für den Tipp mit UDP. Habe hier im Forum etwas gefunden und etwas modifiziert. Klappt wunderbar:

                        // ************** UDP Schnittstelle **************
                        .
                        .
                        .
                        .
                        // ************** ENDE UDP Schnittstelle **************

                        in der HA Bridge dann folgenden Befehl:

                        udp://192.168.123.172:4806/5126=1

                        für Binäres ein oder

                        udp://192.168.123.172:4806/5128=0${intensity.byte}

                        für einen Dimmer. Die Null vor dem $ ist dafür, dass temp größer 1 ist, auch wenn der Dimmwert 1 -9 ist.
                        Wenn ich den UDP Part rein kopiere bekomme ich einen Fehler beim kompilieren:

                        >if telegram and temp == 1u16 then { Value1=convert(split(Rx,find(Rx,$=$,0u16)+1u16,139 9u16),0b01);write(address(GA_Nr),Value1)}endif< in der Datei "C:/Enertex/EibstudioData/tmpApp.txt"
                        Gültig bis Spaltenposition: {50}
                        STOP Parser --> (split(Rx,find(Rx,$=$,0u16)+1u16,139 9u16),0b01);write(address(GA_Nr),Value1)}endif
                        ID:4
                        EibParser wurde mit Fehler beendet.

                        Sind in Deinem Beispiel danach die 5126 und 5128 Gruppenadressen? Also 5/1/26 und 5/1/28? Wenn ja wie unterscheidet man zwischen 5/1/26 und 5/12/6?

                        Gruss Baubaer

                        Kommentar


                          #13
                          5126 und 5128 sind Adressen, dass ist korrekt. Allerdings nicht deine Herleitung. Hierzu aus dem Handbuch:

                          Diese Zahl berechnet sich aus Adresse=HG x 2048+MG x 256 + UG

                          Kommentar


                            #14
                            Zitat von fuchs Beitrag anzeigen

                            Diese Zahl berechnet sich aus Adresse=HG x 2048+MG x 256 + UG
                            OK, das macht Sinn! Hast Du noch eine Idee, warum der Parser meckert?

                            Hier entsteht der Fehler:

                            STOP Parser --> (split(Rx,find(Rx,$=$,0u16)+1u16,139 9u16),0b01);write(address(GA_Nr),Value1)}endif

                            Wenn er da weiterkommen WÜRDE, dann würde der Parser auch wieder hier hängen:

                            STOP Parser --> (split(Rx,find(Rx,$=$,0u16)+1u16,139 9u16),0u08);write(address(GA_Nr),Value8)}endif

                            Wir die von Dir gepostete Sequenz so 1:1 reinkopiert oder muss ich die für meine Infrastruktur anpassen?

                            Wenn ja was?

                            LG Baubaer

                            Kommentar


                              #15
                              Zitat von Baubär Beitrag anzeigen
                              Code:
                              STOP Parser --> (split(Rx,find(Rx,$=$,0u16)+1u16,139 9u16),0u08);write(address(GA_Nr),Value8)}endif
                              da ist ein Leerzeichen zwischen 139 und 9u16...

                              offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                              Enertex Produkte kaufen

                              Kommentar

                              Lädt...
                              X