Skip to content
  • Home
  • 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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. Gas Zähler BK-G4 AT - mit M-Bus auslesen

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.1k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    936

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Gas Zähler BK-G4 AT - mit M-Bus auslesen

Geplant Angeheftet Gesperrt Verschoben Hardware
52 Beiträge 23 Kommentatoren 12.2k Aufrufe 21 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.
  • D dojodojo

    @benno-b

    Hallo, welche Nachteile hat deine Lösung, oder welche Vorteile die zuvor angebotene?

    MfG
    dd

    HomoranH Nicht stören
    HomoranH Nicht stören
    Homoran
    Global Moderator Administrators
    schrieb am zuletzt editiert von
    #40

    @dojodojo sagte in Gas Zähler BK-G4 AT - mit M-Bus auslesen:

    welche Nachteile hat deine Lösung

    so ganz verstehe ich deine Fragen nicht.
    Genau wie im anderen Thread.

    Hier fragst du hier anscheinend den falschen.
    erst recht mit

    @dojodojo sagte in Gas Zähler BK-G4 AT - mit M-Bus auslesen:

    welche Vorteile die zuvor angebotene?

    @benno würde seine Methode nicht vorstellen wenn sie nichts taugt.

    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    D 1 Antwort Letzte Antwort
    0
    • HomoranH Homoran

      @dojodojo sagte in Gas Zähler BK-G4 AT - mit M-Bus auslesen:

      welche Nachteile hat deine Lösung

      so ganz verstehe ich deine Fragen nicht.
      Genau wie im anderen Thread.

      Hier fragst du hier anscheinend den falschen.
      erst recht mit

      @dojodojo sagte in Gas Zähler BK-G4 AT - mit M-Bus auslesen:

      welche Vorteile die zuvor angebotene?

      @benno würde seine Methode nicht vorstellen wenn sie nichts taugt.

      D Offline
      D Offline
      dojodojo
      schrieb am zuletzt editiert von dojodojo
      #41

      @homoran
      Die Benno Lösung erscheint mir erheblich einfacher, als die zuvor vorgestellten Lösungen.

      @Benno-B
      Kann man deine Lösung https://github.com/BennoB666/BK-G4AT2MQTT auf jeden mBus Zähler übertragen?

      Den ESP32-C3 Super Mini WiFi & Bluetooth Modul mit USB-C habe ich bisher nicht gekannt.

      1 Antwort Letzte Antwort
      0
      • M Offline
        M Offline
        moritzabcde
        schrieb am zuletzt editiert von moritzabcde
        #42

        Hey!
        Ich habe gerade einen BK-G4 Ac eingebaut bekommen und würde ihn nun gerne bei ioBroker einbinden. Vermutlich lacht ihr wegen der Frage: Darf man die "Plombe" unten rechts entfernen/zerstören, um an den Anschluss zu kommen? BK-G4Ac.jpg
        Wie habt ihr das gemacht? Dieses PDF zur Installation eines Funkmoduls habe ich bei Pipersberg gefunden, aber da wird von einer Ersatzplombe gesprochen.

        P 1 Antwort Letzte Antwort
        0
        • M moritzabcde

          Hey!
          Ich habe gerade einen BK-G4 Ac eingebaut bekommen und würde ihn nun gerne bei ioBroker einbinden. Vermutlich lacht ihr wegen der Frage: Darf man die "Plombe" unten rechts entfernen/zerstören, um an den Anschluss zu kommen? BK-G4Ac.jpg
          Wie habt ihr das gemacht? Dieses PDF zur Installation eines Funkmoduls habe ich bei Pipersberg gefunden, aber da wird von einer Ersatzplombe gesprochen.

          P Offline
          P Offline
          peterfido
          schrieb am zuletzt editiert von peterfido
          #43

          @moritzabcde Plomben entfernen ist strafbar. Ruf den Energieversorger / Messstellenbetreiber an und frag, ob Du da dran darfst, oder jemand rauskommt und dein Kabel anschließt. Die Antwort ist mit sehr hoher Wahrscheinlichkeit ein Nein.

          Gruß

          Peterfido


          Proxmox auf Intel NUC12WSHi5
          ioBroker: Debian (VM)
          CCU: Debmatic (VM)
          Influx: Debian (VM)
          Grafana: Debian (VM)
          eBus: Debian (VM)
          Zigbee: Debian (VM) mit zigbee2mqtt

          1 Antwort Letzte Antwort
          0
          • I Offline
            I Offline
            Interflexus
            schrieb am zuletzt editiert von
            #44

            Habe benno B´s Lösung nachgebaut, funktioniert einwandfrei. Sehr simpel im Aufbau. Danke an Oli.

            VG Jens

            D 1 Antwort Letzte Antwort
            0
            • I Interflexus

              Habe benno B´s Lösung nachgebaut, funktioniert einwandfrei. Sehr simpel im Aufbau. Danke an Oli.

              VG Jens

              D Offline
              D Offline
              dojodojo
              schrieb am zuletzt editiert von dojodojo
              #45

              @interflexus Hast Du für uns ein Bild von deinem Gaszähler?

              Benno B ist Oli, richtig?

              Mit welcher Software, auch das Release flasht Ihr?

              I 1 Antwort Letzte Antwort
              0
              • D dojodojo

                @interflexus Hast Du für uns ein Bild von deinem Gaszähler?

                Benno B ist Oli, richtig?

                Mit welcher Software, auch das Release flasht Ihr?

                I Offline
                I Offline
                Interflexus
                schrieb am zuletzt editiert von Homoran
                #46

                @dojodojo

                Zählerbild:edited_IMG_20250901_174653205_AE.jpg

                Software ist platformio.io. Ist beschrieben auf Benno B´s github-Link.

                VG Jens

                HomoranH 1 Antwort Letzte Antwort
                0
                • I Interflexus

                  @dojodojo

                  Zählerbild:edited_IMG_20250901_174653205_AE.jpg

                  Software ist platformio.io. Ist beschrieben auf Benno B´s github-Link.

                  VG Jens

                  HomoranH Nicht stören
                  HomoranH Nicht stören
                  Homoran
                  Global Moderator Administrators
                  schrieb am zuletzt editiert von
                  #47

                  @interflexus setz das Bild nochmal rein! Aber nicht nur die Klartext-ID unkenntlich machen! da gibt es noch weitere :-)

                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                  1 Antwort Letzte Antwort
                  0
                  • I Offline
                    I Offline
                    Interflexus
                    schrieb am zuletzt editiert von
                    #48

                    Zählerbild - zweiter Versuch:IMG_20250922_172257034~2.jpg

                    D 1 Antwort Letzte Antwort
                    1
                    • I Interflexus

                      Zählerbild - zweiter Versuch:IMG_20250922_172257034~2.jpg

                      D Offline
                      D Offline
                      dojodojo
                      schrieb am zuletzt editiert von
                      #49

                      @interflexus Vielen Dank

                      1 Antwort Letzte Antwort
                      0
                      • Benno BB Benno B

                        Ich habe unter https://github.com/BennoB666/BK-G4AT2MQTT einen Quellcode für eine Firmware welche mit einem ESP32 ohne zusätzliche Hardware den Zählerstand ausließt und per MQTT an einen Server sendet.
                        Falls es jemanden hilt.
                        LG Oli

                        R Offline
                        R Offline
                        Rikus1234
                        schrieb am zuletzt editiert von Rikus1234
                        #50

                        @benno-b Danke Dir für den Code! Ich habe ihn in Arduino implementiert und einen Wemos S2 mini genutzt, da ich den noch rumliegen hatte. RX-, TX-Pins angepasst, aber leider erhielt ich da immer nur nicht auswertbare Rückgabewerte vom Zähler. Dann holte ich mir einen Wemos C3 mini wie Du ihn genutzt hast und es klappte. Wo wird das Problem liegen? Ich nutze schon ewig alle möglichen ESPs mit deren GPIOs und kenne mich da schon etwas aus... LG aus Dresden

                        1 Antwort Letzte Antwort
                        0
                        • Benno BB Benno B

                          Ich habe unter https://github.com/BennoB666/BK-G4AT2MQTT einen Quellcode für eine Firmware welche mit einem ESP32 ohne zusätzliche Hardware den Zählerstand ausließt und per MQTT an einen Server sendet.
                          Falls es jemanden hilt.
                          LG Oli

                          R Offline
                          R Offline
                          Rainer 2
                          schrieb am zuletzt editiert von
                          #51

                          @benno-b

                          Hallo,
                          ich habe mir nun auch den ESP32-C3 Super Mini besorgt.
                          Leider kenne ich mich damit überhaupt nicht aus.
                          Wie bekomme ich den Quellcode auf den ESP?

                          Gruß Rainer

                          1 Antwort Letzte Antwort
                          0
                          • H Offline
                            H Offline
                            he3
                            schrieb am zuletzt editiert von
                            #52

                            Hi, vielen Dank an @nebuk.
                            Ich hab den BK-G4AT mit dem Protokoll AE.05:05.01:01.01.
                            Ich habs zuerst auch mit nem Wemos probiert, allerdings ESP8266 (D1 mini). Das hab ich mit Arduino irgendwie nicht zum laufen gekriegt und hab mich dann inspirieren lassen von @bv-iobroker. Ich hatte vorher eh einen Pi Zero mit Magnetsensor genutzt und hab den dann einfach mal geupdatet und mit dem USB TTL Adapter läuft es jetzt top. Kosten für den Adapter 2,20€ (Prolific PL2303HX bei Berrybase).

                            anschluss.jpg

                            Angeschlossen sind wie schon beschrieben:
                            2 3
                            1 4

                            1 - grün - TX
                            2 - rot - 5V
                            3 - weiß - RX
                            4 - schwarz - GND

                            Das Python Script:

                            # ---------------------------- Bibliotheken -----------------------
                            import serial
                            import time
                            # ---------------------- Variablen und Inistialisierung -----------
                            # USB Wandler Seriell
                            PORT = "/dev/ttyUSB0"
                            
                            # Poll-Frame um Zaehler anzufragen
                            # Start | Control | Address | Checksum | Stopb
                            POLL_FRAME = bytes([0x10, 0x5B, 0x00, 0x5B, 0x16])
                            
                            # Serielle Schnittstelle
                            ser = serial.Serial(
                                port=PORT,
                                baudrate=2400,
                                bytesize=8,
                                parity=serial.PARITY_EVEN,
                                stopbits=1,
                                timeout=1
                            )
                            
                            # ---------------------- Funktionen -------------------------------
                            #Rohdaten umwandeln
                            def parse_gas_volume_bcd(data):
                                # Sucht nach DIF=0x0C und VIF=0x13 und dekodiert die folgenden 4 BCD-Bytes.
                                for i in range(len(data) - 6):
                                    if data[i] == 0x0C and data[i+1] == 0x13:
                                        b0 = data[i+2]
                                        b1 = data[i+3]
                                        b2 = data[i+4]
                                        b3 = data[i+5]
                            
                                        # BCD dekodieren
                                        digits = []
                                        for b in (b0, b1, b2, b3):
                                            digits.append(b & 0x0F)        # Low nibble
                                            digits.append((b >> 4) & 0x0F) # High nibble
                            
                                        # Zahl zusammensetzen
                                        value = 0
                                        factor = 1
                                        for d in digits:
                                            value += d * factor
                                            factor *= 10
                            
                                        # /1000 fuer m3
                                        return value / 1000.0
                                        
                                return None
                            
                            #Seriell abfragen
                            def read_mbus():  
                                # Daten anfragen
                                ser.reset_input_buffer()
                                ser.write(POLL_FRAME)
                                ser.flush()
                                time.sleep(0.1)
                                data = ser.read(256)
                                return data
                                
                            # ---------------------- Programmschleife -------------------------------
                            while True:
                                try:
                                    data = read_mbus()
                                    print("Rohdaten:", data)
                            
                                    if data:
                                        volume = parse_gas_volume_bcd(data)
                                        if volume is not None:
                                            print("Gasverbrauch:", volume, "m3")
                                        else:
                                            print("Kein Volumenwert gefunden")
                                    else:
                                        print("Keine Antwort")
                                        
                                except Exception as e:
                                    print("Except Fehler:", e)
                                    
                                time.sleep(15)
                            
                            
                            
                            1 Antwort Letzte Antwort
                            0
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            593

                            Online

                            32.6k

                            Benutzer

                            82.2k

                            Themen

                            1.3m

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

                            • Du hast noch kein Konto? Registrieren

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