Ankündigung

Einklappen
Keine Ankündigung bisher.

Werte einer Kaminsteuerung an KNX Bus senden mit Arduino (Leda LUC2, Schmid SMR etc.)

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

    #31
    Und nochwas möchte ich hier zu bedenken geben: Wenn ich als Empfänger die gleiche Hardware wie beim Sender einsetze, brauche ich mir keine Gedanken um Pegel oder sonstige Unverträglichkeiten machen. Deshalb ging es im Post#17 auch um das Innenleben der Leda wie den Chip MCP2551 und am besten noch den dazugehörigen Quarz. Wenn diese Werte gleich sind, brauch ich nur noch eine Baudrate und eine GeräteID. Ich tue also so, als gehöre ich dazu und lausche einfach, was auf dem Bus so ausgetauscht wird.

    Kommentar


      #32
      hallo zusammen,

      ich habe nun die Bus-Daten auf meinem Raspberry Pi und kann sie mittels candump anzeigen lassen. Es ist ja nur eine Botschaft und die würde ich nun gerne (am besten gefiltert nach den richtigen Botschaften) per UDP oder MQTT meinem Smarthome bereitstellen.
      Hat hierfür schon jemand eine Lösung?

      Kommentar


        #33
        Sehr hilfreicher Thread!
        image.png
        Für Home Assistant User:
        Mit Hilfe eines ESP32 und ESPHome kann man sich mit der https://esphome.io/components/canbus/mcp2515.html Komponente auch verbinden.

        Kommentar


          #34
          Hallo mercher,

          vielen Dank für den Hinweis. Ich will demnächst meinen LEDA LUC 2 Unterdruckwächter auch mit ESPHome in mein Home Assistent bekommen.


          Weiß jemand noch welches CAN-Bus-Signal (Tx und RX) dann H und L auf dem MCP2515 ist?

          Kommentar


            #35
            Zitat von Kapper Beitrag anzeigen
            Weiß jemand noch welches CAN-Bus-Signal (Tx und RX) dann H und L auf dem MCP2515 ist?
            Servus,
            tatsächlich habe ich das erst vor einigen Tagen mal ausprobiert. Die Bezeichnung in der Anleitung zur Verlängerung der Leitung von LEDA ist ja offensichtlich falsch, da CAN_TX/RX die Signale zwischen Controller und Transceiver beschreiben und nicht den tatsächlichen CAN Bus, das wäre CAN High/Low.

            Hier die korrekte Belegung:
            PIN RJ12 Aderfarbe Signal Belegung
            1 Blau 12V
            2 Gelb 12V
            3 Grün GND
            4 Rot CAN_L
            5 Schwarz CAN_H
            6 Weiß GND

            Gruß
            Philipp

            Kommentar


              #36
              Hallo Philipp,

              vielen Dank für die schnelle Antwort.
              Hast du das ganze per ESPHome in Home Assistant gemacht und hat es funktioniert?

              Gruß Stefan

              Kommentar


                #37
                Leider ist meine freie Zeit für soetwas aktuell relativ knapp bemessen und zu mehr bin ich daher noch nicht gekommen. Ich wollte die Information nutzen um zusätzlich einen Stellmotor für eine Klappe in der Außenluftzufuhr intelligent steuern zu können. Ob ich das ganze an HA anbinde oder gar an KNX, das weiß ich noch nicht genau.

                Kommentar


                  #38
                  Hab den LEDA LUC Unterdruckwächter ins Home Assistant bekommen.
                  Verwendet habe ich einen ESP8266 (Wemos D1 mini) mit einem MCP2515 Modul
                  Verdrahtet habe ich das ganze wie auf folgender Seite dargestellt (1. Variante):
                  https://esphome.io/components/canbus/mcp2515.html

                  Ich bekomm die Abgastemperatur und die Druckdifferenz rein.

                  image.png

                  YAML Code:

                  Code:
                  esphome:
                    name: leda-luc
                    friendly_name: LEDA LUC
                  
                  esp8266:
                    board: d1_mini
                  
                  # Enable logging
                  logger:
                    level: DEBUG  # Stelle sicher, dass alle Debug-Logs angezeigt werden
                  
                  # Enable Home Assistant API
                  api:
                    encryption:
                      key: ""
                  
                  ota:
                    - platform: esphome
                      password: ""
                  
                  wifi:
                    ssid: !secret wifi_ssid
                    password: !secret wifi_password
                  
                    # Enable fallback hotspot (captive portal) in case wifi connection fails
                    ap:
                      ssid: "Leda-Luc Fallback Hotspot"
                      password: ""
                  
                  captive_portal:
                  
                  spi:
                    clk_pin: GPIO16
                    miso_pin: GPIO04
                    mosi_pin: GPIO05
                  
                  canbus:
                    - platform: mcp2515
                      cs_pin: GPIO14
                      can_id: 0x28A
                      bit_rate: 125KBPS
                      on_frame:
                        - can_id: 0x28A
                          then:
                            - lambda: |-
                                if (x.size() >= 8 && x[0] == 0x00) {
                                  // Logge die empfangenen Bytes im Debug-Log
                                  ESP_LOGD("CAN", "Empfangene Bytes: %02X %02X %02X %02X %02X %02X %02X %02X", x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7]);
                                  // Extrahiere die Druckdifferenz aus dem 2. Byte
                                  float druckdifferenz = x[1] * 0.1;
                                  // Wenn Byte 3 0x81 ist, addiere 25,5 Pa zur Druckdifferenz
                                  if (x[2] == 0x81) {
                                    druckdifferenz += 25.5;
                                  }
                                  // Extrahiere die Abgastemperatur als 16-Bit-Wert aus dem 4. und 5. Byte (Little Endian)
                                  int16_t abgastemperatur = (x[4] << 8) | x[3];
                                  // Logge die empfangene Nachricht im Debug-Log
                                  ESP_LOGD("CAN", "Empfangene Nachricht: %s", std::string(x.begin(), x.end()).c_str());
                                  // Veröffentliche die Druckdifferenz
                                  id(druckdifferenz_sensor).publish_state(druckdifferenz);
                                  // Veröffentliche die Abgastemperatur
                                  id(abgastemperatur_sensor).publish_state(abgastemperatur);
                                }
                  
                  sensor:
                    - platform: template
                      name: "Druckdifferenz"
                      id: druckdifferenz_sensor
                      unit_of_measurement: "Pa"
                      accuracy_decimals: 1
                  
                    - platform: template
                      name: "Abgastemperatur"
                      id: abgastemperatur_sensor
                      unit_of_measurement: "°C"
                      accuracy_decimals: 1
                  Ich möchte mir auch eine elektrische Luftklappe in der Außenluftzufuhr einbauen, um eine Art Abbrandsteuerung zu realisieren.
                  Den Stellmotor werde ich wahrscheinlich mit einem Shelly Plus 2PM ansteuern, da ich den noch hier rum liegen habe.
                  Zuletzt geändert von Kapper; 22.11.2024, 14:48. Grund: Code noch mal angepasst. Die Druckdifferenz wird jetzt auch richtig dargestellt wenn der Wert über 25,5Pa steigt

                  Kommentar


                    #39
                    Funktioniert bei mir einwandfrei auf anhieb.

                    27670b6f-ce8e-42d7-b17f-0f1cb04d98ed.png

                    Hier meine Einkaufsliste:
                    1. ESP32 https://amzn.to/3V84WVX
                    2. RJ12 auf 6PIN https://amzn.to/3V4BzDU
                    3. 12V auf 5V USB-C https://amzn.to/3OogJf6
                    4. MCP2515 CAN Bus Shield https://amzn.to/496LGhb
                    5. RJ12 Kabel https://amzn.to/3ARb0eF
                    6. RJ12 Verteiler https://amzn.to/3CSJXjx
                    Angehängte Dateien
                    Zuletzt geändert von mercher; 23.11.2024, 22:45.

                    Kommentar


                      #40
                      Kapper Ich habe dein YAML-File angepasst, noch den Lüftungsstatus ergänzt. Hier das aktualisierte YAML für den ESPHome: https://gist.github.com/JavanXD/696d...5ed4745df63e39

                      Kommentar


                        #41
                        936a1611-c5a9-409d-b8c5-fdf3412c468f.jpg
                        Zur Inspiration an möglichen Automatisierungen...

                        Generell sollte man bedenken, dass damit die Betriebserlaubnis der LEDA Luc erlischt. In meinem Fall ist das nicht Schlimm, da der Ofen ein Dibt Luftunabhängiger Ofen ist und auch ohne die LEDA Luc betrieben werden darf - vorausgesetzt der Schornsteinfeger schreibt das auch so in seine Abnahme.

                        Kommentar


                          #42
                          Danke euch. Ich habe den Thread nur über "KNX LEDA" gefunden, nicht aber über "LEDA und Home Assistant". Schön zu lesen, dass bei euch die Integration in HASS geklappt hat.

                          mercher: du hast es genau so umgesetzt wie ich es auch vorhabe. Hast du den esp32 auf der Platine hinter dem Display angeschlossen? Nur der Unterschied. Ich hab hinter dem Display relativ wenig Platz und wollte über die zwei BUS-Leitungen den MCP2515 direkt mit dem LEDA LUC2 verbinden anstatt der Display-Platine. Der Controller hängt bei mir im Schaltschrank. Sollte das nicht auch gehen? Da würde ich mir auch die Stecker sparen.
                          Zuletzt geändert von Knorkator; 03.12.2024, 18:56.

                          Kommentar


                            #43
                            Ja, das funktioniert. So hab ich das umgesetzt. Vom Controller geht ein RJ12 Kabel in den Verteiler und auf der anderen Seite vom Verteiler einmal wieder zum Display und am zweiten Ausgang dann zum ESP mit MCP2515.

                            Kommentar


                              #44
                              Ich habe es bei mir mittlerweile mit der Anleitung auch zum Laufen bekommen. Hat auf Anhieb funktioniert. Vielen Dank fürs Teilen!!! Bei mir waren allerdings die Anschlüsse von dem RJ auf 6-Pin Adapter genau anders rum. VG

                              Kommentar

                              Lädt...
                              X