Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter canbus v1.1.x Latest

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

Test Adapter canbus v1.1.x Latest

Geplant Angeheftet Gesperrt Verschoben Tester
278 Beiträge 12 Kommentatoren 42.2k Aufrufe 10 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • crycodeC crycode

    @cb187 Ich nehme an, du meinst dieses FHEM Modul? Das ist extra für die Nutzung zusammen mit dem ELM327 gebaut.
    Der ioBroker.canbus Adapter hingegen basiert auf SocketCAN und greift somit direkt auf Funktionen des Kernels zu.
    Ich habe noch einen Linux SocketCAN driver for ELM327 auf GitHub gefunden. Vielleicht hilft dir der schon weiter?

    Generell kann ich mir vorstellen, auch eine Funktion mit ELM327 in den Adapter einzubauen, jedoch fehlt mir dafür aktuell die entsprechende Hardware.

    C Offline
    C Offline
    cb187
    schrieb am zuletzt editiert von
    #21

    @crycode genau ich nutze dieses Fhem modul.dachte das basiert auf socketcan.Meine ich habe das gelesen.
    Mit deinem Adapter hast natürlich jetzt soviel möglichkeiten😉neue unterstütze Hardware einzubauen.würde dir da gerne irgendwie helfen wollen😁

    crycodeC 1 Antwort Letzte Antwort
    0
    • C cb187

      @crycode genau ich nutze dieses Fhem modul.dachte das basiert auf socketcan.Meine ich habe das gelesen.
      Mit deinem Adapter hast natürlich jetzt soviel möglichkeiten😉neue unterstütze Hardware einzubauen.würde dir da gerne irgendwie helfen wollen😁

      crycodeC Offline
      crycodeC Offline
      crycode
      Developer
      schrieb am zuletzt editiert von
      #22

      @cb187 Das FHEM Modul Kommuniziert mit dem ELM327 direkt über AT-Befehle und nutzt nicht SocketCAN.

      Ich werde mir das bei Gelegenheit mal anschauen und versuchen eine Unterstützung für den ELM327 einzubauen. Ich denke das könnte klappen, dass man dann zwischen SocketCAN und ELM327 auswählen kann.
      Da aktuell andere Projekte Vorrang haben und ich mir erst einen passenden Adapter besorgen muss, kann ich im Moment leider aber noch nicht sagen, wann das sein wird.


      Ab heute ist jetzt erst mal die v1.0.0 (ohne Beta) von ioBroker.canbus im Latest-Repo zum Testen verfügbar.

      Einzige Änderung ist, dass die Nachrichten im Admin nun beim Laden der Seite sortiert werden. (Und aktualisierte Übersetzungen auf Russisch.)

      Sollten hier keine Probleme mehr auftreten, dann kommt diese Version in das Stable-Repo und wird damit für alle Nutzer verfügbar. 🙂

      Meine Adapter: discord | canbus | ds18b20 | odl | radiohead

      C 1 Antwort Letzte Antwort
      0
      • crycodeC crycode

        @cb187 Das FHEM Modul Kommuniziert mit dem ELM327 direkt über AT-Befehle und nutzt nicht SocketCAN.

        Ich werde mir das bei Gelegenheit mal anschauen und versuchen eine Unterstützung für den ELM327 einzubauen. Ich denke das könnte klappen, dass man dann zwischen SocketCAN und ELM327 auswählen kann.
        Da aktuell andere Projekte Vorrang haben und ich mir erst einen passenden Adapter besorgen muss, kann ich im Moment leider aber noch nicht sagen, wann das sein wird.


        Ab heute ist jetzt erst mal die v1.0.0 (ohne Beta) von ioBroker.canbus im Latest-Repo zum Testen verfügbar.

        Einzige Änderung ist, dass die Nachrichten im Admin nun beim Laden der Seite sortiert werden. (Und aktualisierte Übersetzungen auf Russisch.)

        Sollten hier keine Probleme mehr auftreten, dann kommt diese Version in das Stable-Repo und wird damit für alle Nutzer verfügbar. 🙂

        C Offline
        C Offline
        cb187
        schrieb am zuletzt editiert von
        #23

        @crycode 👍
        Ich habe zb den hier: bbflyOBD VINT-TT55502 USB OBDII... https://www.amazon.de/dp/B01N18TOFB?ref=ppx_pop_mob_ap_share

        1 Antwort Letzte Antwort
        0
        • crycodeC crycode
          Aktuelle Test Version 1.2.x
          Veröffentlichungsdatum 22.06.2021
          Github Link https://github.com/crycode-de/ioBroker.canbus

          Logo

          Der CAN-Bus (Controller Area Network) ist ein serielles Bussystem. Er kam ursprünglich vorrangig von Fahrzeugen zum Einsatz und ist inzwischen auch im Bereich der Heimautomatisierung recht verbreitet.

          Dieser Adapter soll eine direkte Anbindung eines CAN-Interfaces (z.B. can0) an ioBroker ermöglichen.
          Hierbei geht es um reine CAN-Nachrichten von bis zu 8 Byte Datenlänge. Aufgesetzte Protokolle wie z.B. CANOpen sind nicht vorgesehen.

          Unterstützt wird jede Hardware, die sich auf einem Linux-basierten Betriebssystem als CAN-Interface meldet. Aufgrund der zugrundeliegenden socketcan Library werden Windows-Systeme leider nicht unterstützt.

          Die Admin-Seite ist mit React auf Basis von adapter-react gebaut. Da dies noch recht neu ist, wären hier sicherlich auch ausgiebige Tests nicht verkehrt. 😉

          Dieser Adapter verwendet Sentry Libraries um automatisch Fehler an die Entwickler (mich) zu senden. Für mehr Details und Informationen zum Deaktivieren des Error-Reportings siehe Sentry-Plugin Dokumentation.

          Features

          • Empfangen und Senden von CAN-Nachrichten in Standard- und Extended-Frames
          • Jede Nachricht kann einzeln zum Senden und/oder Empfangen konfiguriert werden
          • Möglichkeit automatisch empfangene, aber noch nicht konfigurierte, CAN-Nachrichten hinzuzufügen
          • Konfiguration von Parsern für die einzelnen CAN-Nachrichten zum Lesen/Schreiben von Daten von/in den Rohdaten-Buffer der Nachrichten
            • Zahlentypen
            • Boolsche Werte inkl. Bitmasken
            • Strings in verschieden Encodings
            • Eigene Scripte zum Lesen vom / Schreiben in den Buffer der Rohdaten
          • Erweiterte Import/Export Funktionen
            • Import von Nachrichtenkonfigurationen zur Erweiterung der bestehenden Konfiguration
            • Import vor vordefinierten "bekannten" Konfigurationen von GitHub direkt im Admininterface
            • Export und Import der Nachrichtenkonfigurationen als json oder csv Dateien
          • Optionale Verwendung der Datenlänge (DLC)
          • Optionale Unterstützung des RTR-Flags
          • Optionale Raw-States, welche die Rohdaten der empfangenen bzw. gesendeten/zu sendenden CAN-Nachrichten-Objekte beinhalten

          Anforderungen

          • Linux Betriebssystem
          • CAN-Hardware, die vom Kernel unterstützt wird und ein Interface wie beispielsweise can0 bereitstellt
          • Kenntnisse über die CAN-Nachrichten auf dem Bus (nicht zwingend erforderlich, aber hilfreich)

          Parser

          Über die Parser können Daten aus den Rohdaten einer CAN-Nachricht extrahiert bzw. in diese hineingeschrieben werden.

          Es gibt vordefinierte Parser für die nachfolgend aufgeführten Datentypen und zusätzlich die Möglichkeit eigene Scripte zum Lesen/Schreiben zu erstellen.

          Zahlentypen im Big-Endian und Little-Endian Format

          • Signed und Unsigned 8, 16 und 32 Bit Integer
          • 32 Bit Float
          • 64 Bit Double

          Boolsche Werte

          • 1 Byte inkl. Unterstützung von Bitmasken

          Strings

          • 1 bis 8 Byte Länge
          • Encodings: ascii, base64, hex, latin1, utf8, utf16le

          Eigene Skripte
          Beim Parsertyp Custom können eigene Skripte zum Lesen/Schreiben der Werte genutzt werden.
          Diese Skripte laufen in einer Sandbox (ähnlich den Skripten vom JavaScript Adapter).

          Folgende Features können in den Skripten genutzt werden:

          • Die meisten Node.js Standardfunktionen
          • async/await
          • Log-Funktionen des Adapters: log.warn('something'), log.info('something'), log.debug('something')
          • getStateAsync('id') und getObjectAsync('id'), wobei id die vollständige ID des States/Objektes ist

          Fehler in den Skripten werden vom Adapter abgefangen und ins Log geschrieben.

          In beiden Skripen sind die Variablen value und buffer vordefiniert. buffer enthält dabei jeweils die aktuellen Rohdaten der CAN-Nachricht als Node.js Buffer. value sollte beim Lesen auf den gelesenen Wert gesetzt werden. Beim Schreiben enthält value den zu schreibenden Wert.

          Screenshots

          Admin Allgemein

          Admin Testnachricht

          Admin Import/Export

          Objekte

          Schlusswort

          Die Übersetzungen sollten in Deutsch und Englisch vollständig und korrekt sein.
          Übersetzungen für andere Sprachen sind teils automatisch übersetzt und teils noch gar nicht vorhanden. Wer mag kann gerne über Weblate die Übersetzungen vervollständigen/korrigieren.

          Viel Spaß beim Testen!
          Ich freue mich auf Feedback. 🙂

          Grüße
          Peter

          M Offline
          M Offline
          Mic208
          schrieb am zuletzt editiert von Mic208
          #24

          @crycode :
          Auch erstmal vielen DANK für diesen Adapter, das ist genau was ich gesucht habe!!!!
          Mein Plan wäre eine PV-Anlage (Fronius) mit meiner ROTEX HPSU Wärmepumpe intelligent miteinander kommunizieren zu lassen, damit man die maximale Autarkie über den Wärmespeicher Beton und Wasser meines Hauses erreichen kann. Für meine Rotex HPSU kenne ich über 150 Parameter.
          Verstanden habe ich allerdings die Parameter des Adapters nicht ganz:

          Beispiel (alle Zahlen in Hex) für die Soll-Heizkreistemperatur T-HK Soll (kein erweiterter CAN Code):

          Der Adapter stellt die Frage nach T-HK-Soll:
          10A 61 00 04 00 00 00 00

          Die Antwort kommt:
          300 22 0A 04 01 66 00 00 bedeutet 35,9°C bei einem Divisor von 10

          Schreiben kann ich T-HK Soll mit:
          300 20 0A 04 01 2F auf 30,30°C bei einem Divisor von 10

          Wie bilde ich das im CAN Adapter ab?

          Vielen Dank im Voraus

          Michael

          TrinaSolar 12,24 kWp Ost/West – KOSTAL Plenticore Plus 10 / Solax X1 / Growatt 1500TL-X – Nilar Homebox 5,76 – Wärmepumpe Rotex HPSU gesteuert mit CAN-HAT (RasPi) – e-208 (im Sommer'22)

          crycodeC 1 Antwort Letzte Antwort
          0
          • M Mic208

            @crycode :
            Auch erstmal vielen DANK für diesen Adapter, das ist genau was ich gesucht habe!!!!
            Mein Plan wäre eine PV-Anlage (Fronius) mit meiner ROTEX HPSU Wärmepumpe intelligent miteinander kommunizieren zu lassen, damit man die maximale Autarkie über den Wärmespeicher Beton und Wasser meines Hauses erreichen kann. Für meine Rotex HPSU kenne ich über 150 Parameter.
            Verstanden habe ich allerdings die Parameter des Adapters nicht ganz:

            Beispiel (alle Zahlen in Hex) für die Soll-Heizkreistemperatur T-HK Soll (kein erweiterter CAN Code):

            Der Adapter stellt die Frage nach T-HK-Soll:
            10A 61 00 04 00 00 00 00

            Die Antwort kommt:
            300 22 0A 04 01 66 00 00 bedeutet 35,9°C bei einem Divisor von 10

            Schreiben kann ich T-HK Soll mit:
            300 20 0A 04 01 2F auf 30,30°C bei einem Divisor von 10

            Wie bilde ich das im CAN Adapter ab?

            Vielen Dank im Voraus

            Michael

            crycodeC Offline
            crycodeC Offline
            crycode
            Developer
            schrieb am zuletzt editiert von
            #25

            @michael-wind Dafür musst du dann zwei Nachrichten anlegen. Eine mit der ID 10A zum Senden der Anfrage und eine mit der ID 300 für die Antwort bzw. das Schreiben der Soll-Temperatur.

            Ich hatte bereits Kontakt mit anderen Nutzern von (Rotex) Wärmepumpen. Diese Wärmepumpen verwenden scheinbar die gleichen CAN-IDs für unterschiedliche Nachrichten, wobei die Kennung der jeweiligen Nachricht dann in den ersten Datenbytes enthalten ist.

            Zum Senden der Anfrage würde ich daher einen Custom Parser für die ID 10A vorschlagen mit folgendem Skript zum Schreiben:

            buffer = Buffer.from([0x61, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00]);
            

            Damit würde, egal was du als Wert in den entsprechenden State schreibst, immer die passende Nachricht gesendet werden. Zum Auslösen kannst du dann z.B. einfach per Skript eine 1 in den State schreiben.

            Für die Antwort dann auch wieder ein Custom Parser mit folgendem Skript zum lesen bzw. schreiben:

            // auf richtige Nachricht prüfen
            if (buffer.length >= 5 && buffer[0] === 0x22 && buffer[1] === 0x0A && buffer[2] === 0x04) {
              // Wert aus dem Buffer lesen und durch 10 teilen
              value = buffer.readUInt16BE(3) / 10;
            }
            
            // Buffer zum Schreiben vorbereiten
            buffer = Buffer.from([0x20, 0x0A, 0x04, 0x00, 0x00]);
            // Wert * 10 auf Ganzzahl gerundet in den Buffer schreiben
            buffer.writeUInt16BE(Math.round(value * 10), 3);
            

            Für weitere Daten müsstest du dann (wahrscheinlich) nur zusätzliche Custom Parser für die Nachrichten hinzufügen.

            Ich hoffe das hilft dir weiter. 🙂

            Grüße
            Peter

            Meine Adapter: discord | canbus | ds18b20 | odl | radiohead

            M 1 Antwort Letzte Antwort
            0
            • C Offline
              C Offline
              cb187
              schrieb am zuletzt editiert von
              #26

              @michael-wind

              Wie bekommst du denn die verbindung hin zur Rotex mit dem Adapter?

              M 1 Antwort Letzte Antwort
              0
              • C cb187

                @michael-wind

                Wie bekommst du denn die verbindung hin zur Rotex mit dem Adapter?

                M Offline
                M Offline
                Mic208
                schrieb am zuletzt editiert von
                #27

                @cb187
                Hallo,

                ich habe einen CAN HAT von an einem RasPi, beispielsweise:
                https://www.ebay.de/itm/Waveshare-RS485-CAN-HAT-for-Raspberry-Pi-Zero-Zero-W-Zero-WH-2B-3B-3B-Allows-/183752124300?hash=item2ac87ae78c

                LG

                Michael

                TrinaSolar 12,24 kWp Ost/West – KOSTAL Plenticore Plus 10 / Solax X1 / Growatt 1500TL-X – Nilar Homebox 5,76 – Wärmepumpe Rotex HPSU gesteuert mit CAN-HAT (RasPi) – e-208 (im Sommer'22)

                1 Antwort Letzte Antwort
                0
                • crycodeC crycode

                  @michael-wind Dafür musst du dann zwei Nachrichten anlegen. Eine mit der ID 10A zum Senden der Anfrage und eine mit der ID 300 für die Antwort bzw. das Schreiben der Soll-Temperatur.

                  Ich hatte bereits Kontakt mit anderen Nutzern von (Rotex) Wärmepumpen. Diese Wärmepumpen verwenden scheinbar die gleichen CAN-IDs für unterschiedliche Nachrichten, wobei die Kennung der jeweiligen Nachricht dann in den ersten Datenbytes enthalten ist.

                  Zum Senden der Anfrage würde ich daher einen Custom Parser für die ID 10A vorschlagen mit folgendem Skript zum Schreiben:

                  buffer = Buffer.from([0x61, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00]);
                  

                  Damit würde, egal was du als Wert in den entsprechenden State schreibst, immer die passende Nachricht gesendet werden. Zum Auslösen kannst du dann z.B. einfach per Skript eine 1 in den State schreiben.

                  Für die Antwort dann auch wieder ein Custom Parser mit folgendem Skript zum lesen bzw. schreiben:

                  // auf richtige Nachricht prüfen
                  if (buffer.length >= 5 && buffer[0] === 0x22 && buffer[1] === 0x0A && buffer[2] === 0x04) {
                    // Wert aus dem Buffer lesen und durch 10 teilen
                    value = buffer.readUInt16BE(3) / 10;
                  }
                  
                  // Buffer zum Schreiben vorbereiten
                  buffer = Buffer.from([0x20, 0x0A, 0x04, 0x00, 0x00]);
                  // Wert * 10 auf Ganzzahl gerundet in den Buffer schreiben
                  buffer.writeUInt16BE(Math.round(value * 10), 3);
                  

                  Für weitere Daten müsstest du dann (wahrscheinlich) nur zusätzliche Custom Parser für die Nachrichten hinzufügen.

                  Ich hoffe das hilft dir weiter. 🙂

                  Grüße
                  Peter

                  M Offline
                  M Offline
                  Mic208
                  schrieb am zuletzt editiert von
                  #28

                  @crycode
                  Hallo,

                  da wäre ich ja nie drauf gekommen, vielen Dank.

                  Das Lesen funktioniert schon mal.
                  Beim Schreiben mit beispielsweise

                  // Buffer zum Schreiben vorbereiten
                  buffer = Buffer.from([0x30, 0x00, 0x13, 0x00, 0x00]);
                  // Wert * 10 auf Ganzzahl gerundet in den Buffer schreiben
                  buffer.writeUInt16BE(Math.round(value * 10), 3);
                  

                  Kommt leider nur folgende Fehlermeldung:
                  (2973) Failed parsing JSON from canbus.0.680.json: No state found

                  Ich bin allerdingsa auch kein Blockly Experte, mein Script sieht so aus:

                  var timeout;
                  
                  
                  on({id: "hm-rpc.0.MEQ1849422.1.PRESS_SHORT"/*WW-OG-OS-OBEN.PRESS_SHORT*/, change: "any"}, async function (obj) {
                    var value = obj.state.val;
                    var oldValue = obj.oldState.val;
                    setStateDelayed("canbus.0.680.300013"/*T-WW-Soll1-Set*/, 46, 1000, false);
                    sendTo("email", "send", {
                       html: 'Die Warmwasser-Solltemperatur ist für die nächsten 30 Minuten auf 47°C erhöht worden.',
                       to: 'Michael.Wind@GMX.de',
                       subject: 'WW-Solltemperatur für die nächsten 30 Minuten erhöht'
                    });
                    timeout = setTimeout(async function () {
                      setStateDelayed("canbus.0.680.300013"/*T-WW-Soll1-Set*/, 44, 1000, false);
                      sendTo("email", "send", {
                         html: 'WW-Solltemperatur zurückgestellt',
                         to: 'Michael.Wind@GMX.de',
                         subject: 'Die Warmwasser-Solltemperatur ist auf 44 °C zurückgestellt worden.'
                      });
                    }, 60000);
                  });
                  
                  

                  TrinaSolar 12,24 kWp Ost/West – KOSTAL Plenticore Plus 10 / Solax X1 / Growatt 1500TL-X – Nilar Homebox 5,76 – Wärmepumpe Rotex HPSU gesteuert mit CAN-HAT (RasPi) – e-208 (im Sommer'22)

                  crycodeC C 2 Antworten Letzte Antwort
                  0
                  • M Mic208

                    @crycode
                    Hallo,

                    da wäre ich ja nie drauf gekommen, vielen Dank.

                    Das Lesen funktioniert schon mal.
                    Beim Schreiben mit beispielsweise

                    // Buffer zum Schreiben vorbereiten
                    buffer = Buffer.from([0x30, 0x00, 0x13, 0x00, 0x00]);
                    // Wert * 10 auf Ganzzahl gerundet in den Buffer schreiben
                    buffer.writeUInt16BE(Math.round(value * 10), 3);
                    

                    Kommt leider nur folgende Fehlermeldung:
                    (2973) Failed parsing JSON from canbus.0.680.json: No state found

                    Ich bin allerdingsa auch kein Blockly Experte, mein Script sieht so aus:

                    var timeout;
                    
                    
                    on({id: "hm-rpc.0.MEQ1849422.1.PRESS_SHORT"/*WW-OG-OS-OBEN.PRESS_SHORT*/, change: "any"}, async function (obj) {
                      var value = obj.state.val;
                      var oldValue = obj.oldState.val;
                      setStateDelayed("canbus.0.680.300013"/*T-WW-Soll1-Set*/, 46, 1000, false);
                      sendTo("email", "send", {
                         html: 'Die Warmwasser-Solltemperatur ist für die nächsten 30 Minuten auf 47°C erhöht worden.',
                         to: 'Michael.Wind@GMX.de',
                         subject: 'WW-Solltemperatur für die nächsten 30 Minuten erhöht'
                      });
                      timeout = setTimeout(async function () {
                        setStateDelayed("canbus.0.680.300013"/*T-WW-Soll1-Set*/, 44, 1000, false);
                        sendTo("email", "send", {
                           html: 'WW-Solltemperatur zurückgestellt',
                           to: 'Michael.Wind@GMX.de',
                           subject: 'Die Warmwasser-Solltemperatur ist auf 44 °C zurückgestellt worden.'
                        });
                      }, 60000);
                    });
                    
                    
                    crycodeC Offline
                    crycodeC Offline
                    crycode
                    Developer
                    schrieb am zuletzt editiert von
                    #29

                    @michael-wind Huch, das ist tatsächlich noch ein Bug im Adapter. Schau ich mir die nächsten Tage genauer an.
                    Als Workaround kannst du einmalig per Hand in den State canbus.0.680.json [] schreiben, damit der State angelegt wird. Dann sollte es funktionieren. 🙂

                    Meine Adapter: discord | canbus | ds18b20 | odl | radiohead

                    M 1 Antwort Letzte Antwort
                    0
                    • M Mic208

                      @crycode
                      Hallo,

                      da wäre ich ja nie drauf gekommen, vielen Dank.

                      Das Lesen funktioniert schon mal.
                      Beim Schreiben mit beispielsweise

                      // Buffer zum Schreiben vorbereiten
                      buffer = Buffer.from([0x30, 0x00, 0x13, 0x00, 0x00]);
                      // Wert * 10 auf Ganzzahl gerundet in den Buffer schreiben
                      buffer.writeUInt16BE(Math.round(value * 10), 3);
                      

                      Kommt leider nur folgende Fehlermeldung:
                      (2973) Failed parsing JSON from canbus.0.680.json: No state found

                      Ich bin allerdingsa auch kein Blockly Experte, mein Script sieht so aus:

                      var timeout;
                      
                      
                      on({id: "hm-rpc.0.MEQ1849422.1.PRESS_SHORT"/*WW-OG-OS-OBEN.PRESS_SHORT*/, change: "any"}, async function (obj) {
                        var value = obj.state.val;
                        var oldValue = obj.oldState.val;
                        setStateDelayed("canbus.0.680.300013"/*T-WW-Soll1-Set*/, 46, 1000, false);
                        sendTo("email", "send", {
                           html: 'Die Warmwasser-Solltemperatur ist für die nächsten 30 Minuten auf 47°C erhöht worden.',
                           to: 'Michael.Wind@GMX.de',
                           subject: 'WW-Solltemperatur für die nächsten 30 Minuten erhöht'
                        });
                        timeout = setTimeout(async function () {
                          setStateDelayed("canbus.0.680.300013"/*T-WW-Soll1-Set*/, 44, 1000, false);
                          sendTo("email", "send", {
                             html: 'WW-Solltemperatur zurückgestellt',
                             to: 'Michael.Wind@GMX.de',
                             subject: 'Die Warmwasser-Solltemperatur ist auf 44 °C zurückgestellt worden.'
                          });
                        }, 60000);
                      });
                      
                      
                      C Offline
                      C Offline
                      cb187
                      schrieb am zuletzt editiert von
                      #30

                      @michael-wind lässt du bei dir keine Datenpunkte erzeugen die du dann einfach verändern kannst?

                      1 Antwort Letzte Antwort
                      0
                      • crycodeC crycode

                        @michael-wind Huch, das ist tatsächlich noch ein Bug im Adapter. Schau ich mir die nächsten Tage genauer an.
                        Als Workaround kannst du einmalig per Hand in den State canbus.0.680.json [] schreiben, damit der State angelegt wird. Dann sollte es funktionieren. 🙂

                        M Offline
                        M Offline
                        Mic208
                        schrieb am zuletzt editiert von
                        #31

                        @crycode
                        Hallo crycode,

                        ok, jetzt lautet die Fehlermeldung:
                        (4742) Failed parsing JSON from canbus.0.680.json: SyntaxError: Unexpected end of JSON input

                        Der Code ist aber doch korrekt, sogar https://jsonformatter.curiousconcept.com/# meckert ihn nicht an.

                        TrinaSolar 12,24 kWp Ost/West – KOSTAL Plenticore Plus 10 / Solax X1 / Growatt 1500TL-X – Nilar Homebox 5,76 – Wärmepumpe Rotex HPSU gesteuert mit CAN-HAT (RasPi) – e-208 (im Sommer'22)

                        crycodeC 1 Antwort Letzte Antwort
                        0
                        • M Mic208

                          @crycode
                          Hallo crycode,

                          ok, jetzt lautet die Fehlermeldung:
                          (4742) Failed parsing JSON from canbus.0.680.json: SyntaxError: Unexpected end of JSON input

                          Der Code ist aber doch korrekt, sogar https://jsonformatter.curiousconcept.com/# meckert ihn nicht an.

                          crycodeC Offline
                          crycodeC Offline
                          crycode
                          Developer
                          schrieb am zuletzt editiert von
                          #32

                          @michael-wind Wann genau kommt die Meldung und was steht dabei im json State?
                          Beim Schreiben von z.B. 46 in den Temperatur-State sollte der json-State mit dem oben genannten Schreiben-Skript diesen Inhalt bekommen: [48,0,19,1,204]

                          Meine Adapter: discord | canbus | ds18b20 | odl | radiohead

                          M 1 Antwort Letzte Antwort
                          0
                          • crycodeC crycode

                            @michael-wind Wann genau kommt die Meldung und was steht dabei im json State?
                            Beim Schreiben von z.B. 46 in den Temperatur-State sollte der json-State mit dem oben genannten Schreiben-Skript diesen Inhalt bekommen: [48,0,19,1,204]

                            M Offline
                            M Offline
                            Mic208
                            schrieb am zuletzt editiert von
                            #33

                            @crycode
                            Hi,

                            das war jetzt wunderbare Selbstheilung, ich hatte wirklich nichts geändert über Nacht 😇 :

                            canbus.0 (8632) sending can message: {"id":1664,"ext":false,"rtr":false,"data":{"type":"Buffer","data":[48,0,19,1,204]}}
                            canbus.0 (8632) sending can message: {"id":1664,"ext":false,"rtr":false,"data":{"type":"Buffer","data":[48,0,19,1,184]}}
                            

                            Und die Rotex HPSU reagiert auch korrekt. Alles perfekt. Dann kann ich mein 6 Jahre altes Script jetzt in Rente schicken.

                            Vielen Dank für die schnellen Hilfen, der Rest ist ja dann nur noch ein Kinderspiel.

                            Michael

                            TrinaSolar 12,24 kWp Ost/West – KOSTAL Plenticore Plus 10 / Solax X1 / Growatt 1500TL-X – Nilar Homebox 5,76 – Wärmepumpe Rotex HPSU gesteuert mit CAN-HAT (RasPi) – e-208 (im Sommer'22)

                            crycodeC 1 Antwort Letzte Antwort
                            0
                            • M Mic208

                              @crycode
                              Hi,

                              das war jetzt wunderbare Selbstheilung, ich hatte wirklich nichts geändert über Nacht 😇 :

                              canbus.0 (8632) sending can message: {"id":1664,"ext":false,"rtr":false,"data":{"type":"Buffer","data":[48,0,19,1,204]}}
                              canbus.0 (8632) sending can message: {"id":1664,"ext":false,"rtr":false,"data":{"type":"Buffer","data":[48,0,19,1,184]}}
                              

                              Und die Rotex HPSU reagiert auch korrekt. Alles perfekt. Dann kann ich mein 6 Jahre altes Script jetzt in Rente schicken.

                              Vielen Dank für die schnellen Hilfen, der Rest ist ja dann nur noch ein Kinderspiel.

                              Michael

                              crycodeC Offline
                              crycodeC Offline
                              crycode
                              Developer
                              schrieb am zuletzt editiert von
                              #34

                              @michael-wind Super, das freut mich 🙂

                              Wenn du noch ein paar Beispiele für andere Daten der Wärmepumpe hast, dann kannst du mir die gerne PN zukommen lassen. Dann kann ich ein paar Beispiele dafür in die Doku mit aufnehmen.

                              Ich werde heute die v1.0.2 auf NPM veröffentlichen und ab morgen sollte sie dann auch im Latest-Repo auftauchen. Darin ist dann der Bug mit dem fehlenden State behoben (es kommt weiterhin einmalig die Warnung, aber der State wird dann erzeugt) und ein paar Übersetzungen sind aktualisiert.

                              Meine Adapter: discord | canbus | ds18b20 | odl | radiohead

                              C 1 Antwort Letzte Antwort
                              0
                              • crycodeC crycode

                                @michael-wind Super, das freut mich 🙂

                                Wenn du noch ein paar Beispiele für andere Daten der Wärmepumpe hast, dann kannst du mir die gerne PN zukommen lassen. Dann kann ich ein paar Beispiele dafür in die Doku mit aufnehmen.

                                Ich werde heute die v1.0.2 auf NPM veröffentlichen und ab morgen sollte sie dann auch im Latest-Repo auftauchen. Darin ist dann der Bug mit dem fehlenden State behoben (es kommt weiterhin einmalig die Warnung, aber der State wird dann erzeugt) und ein paar Übersetzungen sind aktualisiert.

                                C Offline
                                C Offline
                                cb187
                                schrieb am zuletzt editiert von
                                #35

                                Jetzt wäre es noch schön wenn elm funktionieren würde🤣

                                C 1 Antwort Letzte Antwort
                                0
                                • C cb187

                                  Jetzt wäre es noch schön wenn elm funktionieren würde🤣

                                  C Offline
                                  C Offline
                                  cb187
                                  schrieb am zuletzt editiert von
                                  #36

                                  Hallo ich habe jetzt nen richtiges CAN Modul in Iobroker wie frage ich jetzt die Rotex ab?
                                  Ich versteh nur Bahnhof.
                                  Kann ich vielleicht auch erstmal testen ob was ankommt?
                                  Auf was für ne baudrate muss ich das can einstellen?

                                  crycodeC M 2 Antworten Letzte Antwort
                                  0
                                  • C cb187

                                    Hallo ich habe jetzt nen richtiges CAN Modul in Iobroker wie frage ich jetzt die Rotex ab?
                                    Ich versteh nur Bahnhof.
                                    Kann ich vielleicht auch erstmal testen ob was ankommt?
                                    Auf was für ne baudrate muss ich das can einstellen?

                                    crycodeC Offline
                                    crycodeC Offline
                                    crycode
                                    Developer
                                    schrieb am zuletzt editiert von
                                    #37

                                    @cb187 Was heißt bei dir "richtiges CAN Modul"? 🙂
                                    Wenn dein Modul einen MCP2515 CAN-Controller hat, dann hilft dir vielleicht meine Anleitung dazu weiter: https://crycode.de/can-bus-am-raspberry-pi

                                    Wenn das soweit eingerichtet ist, dann kannst du über candump can0 in einem Terminal dir den kompletten Datenverkehr auf dem Bus anzeigen lassen.
                                    In einem zweiten Terminal kannst du mittels cansend can0 xxx#yyyyyy Nachrichten senden, wobei xxx die Nachrichten-ID und yyyyyy die Daten in hex sind.
                                    Den Infos von @Michael-Wind nach solltest du mittels cansend can0 10A#61000400000000 die Soll-Heizkreistemperatur abfragen können und im candump dann eine Antwort ähnlich 300 22 0A 04 01 66 00 00 erhalten.

                                    Zur Bitrate der Wärmepumpe kann ich dir leider nichts sagen, da ich keine Wärmepumpe habe. Da kann dir aber bestimmt @Michael-Wind weiter helfen.

                                    Was die Konfiguration angeht hast du ein paar Beiträge weiter oben schon ein Beispiel für die Soll-Heizkreistemperatur. Andere Daten müssten entsprechend dem Muster ähnlich zu implementieren sein.

                                    Ich bin aktuell dabei eine Export/Import Funktion im json- und csv-Format einzubauen, wodurch man dann relativ einfach seine Konfiguration teilen kann und andere Konfigurationen dazu laden kann.

                                    Weiterhin stelle ich mir vor, dass ich bekannte Configs für z.B. diese Wärmepumpe mit im GitHub Repo ablege und man diese dann einfach über die Adminseite laden kann. Somit wären dann die Einstellungen für einige Geräte für alle Nutzer zentral verfügbar und es muss nicht jeder selbst alles neu zusammenbauen.

                                    Meine Adapter: discord | canbus | ds18b20 | odl | radiohead

                                    1 Antwort Letzte Antwort
                                    1
                                    • C cb187

                                      Hallo ich habe jetzt nen richtiges CAN Modul in Iobroker wie frage ich jetzt die Rotex ab?
                                      Ich versteh nur Bahnhof.
                                      Kann ich vielleicht auch erstmal testen ob was ankommt?
                                      Auf was für ne baudrate muss ich das can einstellen?

                                      M Offline
                                      M Offline
                                      Mic208
                                      schrieb am zuletzt editiert von Mic208
                                      #38

                                      @cb187
                                      Hallo,

                                      anbei mal ein Export zum Ausprobieren, ohne Gewähr.

                                      Warnung: Wenn an das System die falschen Befehle gesendet werden, kann sich das gesamte System "Aufhängen". Das kann im best case mit einem Neustart behoben werden, im worst case fragt das System nach und es müssen alle Grundparameter neu eingegeben werden. Das Fachmann-Passwort sollte also bekannt sein und man muss wissen, was man wo eingeben muss!

                                      Es handelt sich bei mir um eine Rotex HPSU compact 516, model 141537, mit 11 kW Aussengerät, Baujahr 2013.

                                      2021-03-30_system.adapter.canbus.0.json

                                      TrinaSolar 12,24 kWp Ost/West – KOSTAL Plenticore Plus 10 / Solax X1 / Growatt 1500TL-X – Nilar Homebox 5,76 – Wärmepumpe Rotex HPSU gesteuert mit CAN-HAT (RasPi) – e-208 (im Sommer'22)

                                      C 1 Antwort Letzte Antwort
                                      0
                                      • M Mic208

                                        @cb187
                                        Hallo,

                                        anbei mal ein Export zum Ausprobieren, ohne Gewähr.

                                        Warnung: Wenn an das System die falschen Befehle gesendet werden, kann sich das gesamte System "Aufhängen". Das kann im best case mit einem Neustart behoben werden, im worst case fragt das System nach und es müssen alle Grundparameter neu eingegeben werden. Das Fachmann-Passwort sollte also bekannt sein und man muss wissen, was man wo eingeben muss!

                                        Es handelt sich bei mir um eine Rotex HPSU compact 516, model 141537, mit 11 kW Aussengerät, Baujahr 2013.

                                        2021-03-30_system.adapter.canbus.0.json

                                        C Offline
                                        C Offline
                                        cb187
                                        schrieb am zuletzt editiert von
                                        #39

                                        @michael-wind kann die Datei nicht laden.Und das rauskopieren und in eine exportierte Datei einfügen und wieder hochladen funzt auch nicht.

                                        M 1 Antwort Letzte Antwort
                                        0
                                        • C cb187

                                          @michael-wind kann die Datei nicht laden.Und das rauskopieren und in eine exportierte Datei einfügen und wieder hochladen funzt auch nicht.

                                          M Offline
                                          M Offline
                                          Mic208
                                          schrieb am zuletzt editiert von
                                          #40

                                          Hallo @cb187,

                                          stimmt. Ich habe auch versucht in eine zweite Instanz zu importieren. Man kann in einem Dialogfeld die zu importierende Datei auswählen, aber es passiert nichts: Keine Fehlermeldung, kein Eintrag ins Log.
                                          Ist wohl eine Sache für @crycode denke ich.

                                          Mic

                                          TrinaSolar 12,24 kWp Ost/West – KOSTAL Plenticore Plus 10 / Solax X1 / Growatt 1500TL-X – Nilar Homebox 5,76 – Wärmepumpe Rotex HPSU gesteuert mit CAN-HAT (RasPi) – e-208 (im Sommer'22)

                                          C crycodeC 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          635

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe