Buderus Logamatic 2107 Revision 3 2019

User stellen ihre Haussteuerung vor

Moderator: Co-Administratoren

Benutzeravatar
Black
Beiträge: 5469
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 419 Mal
Danksagung erhalten: 1070 Mal
Kontaktdaten:

Re: Buderus Logamatic 2107 Revision 3 2019

Beitrag von Black » 20.12.2021, 15:26

Kommunikationsaufbau via logmode hat nix mit dem hk2 zu tun. Das spielt erst mit, wenn die Daten laufen.

Dazu hatte ich doch die python abstraktionsklasse um einen sauberen 3964r Aufbau zu machen. Das ganze ist handshake basiert

Du willst senden, also du sendest STX
Da die logamatic low prio arbeitet , sollte sie DLE Antworten.
Sendest sendest du den Code für logmode
Dann endekennung
DLE
EtX
Dann die BCC prüfsumme
Wenn alles ok ist quittier die loganatik mit DLE

Darauf will sie ihre Daten senden
Heisst sie sendet STX
Du willst empfangen also kommt von dir DLE
Darauf sendet sie ihr datentelegrann mit
DLE und ETX als endekennung und BCC als prüfsumme
Du überprüft das wenn das ok war, sendest DLE, sonst NAK

Normal wenn die im logmode ist ist der zuletzt dargestellte Ablauf der Block, denn sie ein Telegramm schickt.

Wenn du senden willst sendest du, außerhalb eines laufenden Telegrammes, Ein STX oder auf ihre STX Anfrage selber ein STX, was sie dann mit DLE quittiert. Ein laufenden Telegramm kannst du killen mit NAK NAK STX

Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

aki2022
Beiträge: 3
Registriert: 20.12.2021, 11:28
System: in Planung

Re: Buderus Logamatic 2107 Revision 3 2019

Beitrag von aki2022 » 21.12.2021, 16:12

Hi Black,

Ich habe jetzt gerade nochmal weiter probiert. Das Ergebnis ist leider das gleiche.

Wenn ich auf der Schnittstelle lausche erhalte ich alle paar Sekunden ein STX. Wenn ich selber ein STX schicke kommt alleridngs nichts zurück.

Code: Alles auswählen

pi@Pi4:~ $ python3
Python 3.9.2 (default, Mar 12 2021, 04:06:34)
[GCC 10.2.1 20210110] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import serial
>>> ser=serial.Serial ("/dev/ttyUSB1",baudrate=2400)
>>> ser.is_open
True
>>> ser.read ()
b'\x02'
>>> ser.read ()
b'\x02'
>>> ser.read ()
b'\x02'
>>> ser.read ()
b'\x02'
>>> ser.write (b"\x02")
1
>>> ser.read ()
b'\x02'
>>> ser.read ()
b'\x02'
>>> ser.read ()
b'\x02'
Ich komme also gar nicht zu dem Punkt, wo ich den Logmode aktivieren kann.

Bin etwas ratlos...

Benutzeravatar
Black
Beiträge: 5469
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 419 Mal
Danksagung erhalten: 1070 Mal
Kontaktdaten:

Re: Buderus Logamatic 2107 Revision 3 2019

Beitrag von Black » 21.12.2021, 17:37

aber zu hast das mal gegengescheckt mit nem terminalprogramm direkt an der RS232, ob du wirklich korrekt sendest ?
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

Wil
Beiträge: 7
Registriert: 29.11.2022, 13:49
System: sonstige

Re: Buderus Logamatic 2107 Revision 3 2019

Beitrag von Wil » 29.11.2022, 13:57

Hallo,

ich bin zwar kein HomeMatic Nutzer, habe aber die Sachen zur Buderus Logamatic Anbindung hier gefunden und versuche das jetzt zum Laufen zu bringen.
auf meinem Raspberry pi bin ich jetzt soweit gekommen, dass ich die Klassen aus github nutzen kann.
allerdings ist wohl die Kommunikation mit der Heizung noch nicht so erfolgreich.
wie komme ich hier weiter ? woran kann es liegen ?

Code: Alles auswählen

smarthome@smarthome193:~/Buderus $ python3 buderus.py
Starting daemon
Starting initial query of Logamatic.
NEUER JOB EINGEGANGEN:  b'\xee\x00\x00'
JOB WIRD BEARBEITET:  b'\xee\x00\x00'
12:22:47.459543:[TX] 02s 15s [NAK: QVZ-DLE START]
12:22:52.460122:[TX] 02s 15s [NAK: QVZ-DLE START]
12:22:57.460521:[TX] 02s 15s [NAK: QVZ-DLE START]
12:23:02.460916:[TX] 02s 15s [NAK: QVZ-DLE START]
12:23:07.461322:[TX] 02s 15s [NAK: QVZ-DLE START]
12:23:12.461707:[TX] 02s 15s [NAK: QVZ-DLE START]
12:23:14.462282: Telegramm verworfen nach  6  Fehlversuchen
^CTraceback (most recent call last):
  File "/home/smarthome/Buderus/buderus.py", line 17, in <module>
    a.run()
  File "/home/smarthome/Buderus/logamatic.py", line 93, in run
    self.running ()
  File "/home/smarthome/Buderus/schritte.py", line 34, in running
    self.schritt()
  File "/home/smarthome/Buderus/c3964r.py", line 530, in schritt
    options [self.step]()
  File "/home/smarthome/Buderus/c3964r.py", line 308, in schritt_0
    if self.newstep: # Einmaliger Durchlauf in dem Schritt
KeyboardInterrupt

smarthome@smarthome193:~/Buderus $

dewenni
Beiträge: 30
Registriert: 09.12.2019, 19:54
Hat sich bedankt: 1 Mal
Danksagung erhalten: 4 Mal

Re: Buderus Logamatic 2107 Revision 3 2019

Beitrag von dewenni » 29.11.2022, 21:07

Hallo Zusammen,

ich habe meine Lösung basierend auf einem ESP32 mal auf GitHub hochgeladen
https://github.com/dewenni/ESP_Buderus_KM271

Vielleicht ist es ja für den einen oder anderen interessant.

Grüße
Sven

Wil
Beiträge: 7
Registriert: 29.11.2022, 13:49
System: sonstige

Re: Buderus Logamatic 2107 Revision 3 2019

Beitrag von Wil » 30.11.2022, 10:36

Danke, das hatte ich auch schon entdeckt.
Aber ich bin kein Elektroniker und verstehe von der Kommunikation überhaupt nichts.

Ich kann nur versuchen mit bescheidenen Programmierkenntnissen solche Dinge nachzuvollziehen.

Mein Problem ist aber wahrscheinlich, dass das KM271 Modul nicht mit mir reden will.
Irgendetwas habe ich da wohl falsch zusammengesteckt.

mit dem Dreizeiler am Anfang dieses Threads bekomme ich auch keine Antwort:

Code: Alles auswählen

import serial
print(serial.__version__)

s = serial.Serial(port = '/dev/ttyAMA0',
                  baudrate = 9600)

post=False
print (s.name )

#0xEE 0x00 0x00 0x10 0x03 0xFD
s.flushInput ()
s.flushOutput ()
s.write (b"\x02")
while True:
    if s.inWaiting ():
        char= s.read ()
        if len (char):
            print ("%3.2X"% ord (char))
            if ord (char)== 0x10:
                s.write (b"\xEE\x00\x00\x10\x03\xFD")
                post=True
            elif ord (char)== 0x02:
                if post:
                    s.write (b"\x10")
            elif not post:
                s.write (b"\x02")

Wil
Beiträge: 7
Registriert: 29.11.2022, 13:49
System: sonstige

Re: Buderus Logamatic 2107 Revision 3 2019

Beitrag von Wil » 30.11.2022, 11:58

wahrscheinlich liegt es an der Verbindung des KM271 zum RS232 to TTL Adapters.
dazu benötigt man wohl ein Nullmodem Kabel, bei dem die Pins verdreht werden.
dann werde ich mir mal ein neues Kabel oder einen Nullmodem Adapter besorgen und in ein paar Tagen berichten, ob das die Lösung ist.

Wil
Beiträge: 7
Registriert: 29.11.2022, 13:49
System: sonstige

Re: Buderus Logamatic 2107 Revision 3 2019

Beitrag von Wil » 03.12.2022, 10:40

schade, hatte erwartet, dass es ein hardware Problem ist.
mit dem null-modem Adapter ändert sich leider nichts.
weder das Testprogramm noch das logamatic Programm liefern Daten.

Wer hat denn noch eine Idee ?

Benutzeravatar
Black
Beiträge: 5469
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 419 Mal
Danksagung erhalten: 1070 Mal
Kontaktdaten:

Re: Buderus Logamatic 2107 Revision 3 2019

Beitrag von Black » 03.12.2022, 12:02

Hast du in deinem Menü von der Logamatic , nachdem die KM271 steckt, auch den Punkt: Abgastemperatur ?

wenn nein, wird die KM271 nicht (sauber) erkannt und dann ist auch nix mit der Kommunikation.

und des weiteren, die Logamatic hat nicht 9600 baud, sondern 2400;

das ist die Initialisierung bei mir für den treiber: 2400 baud:

Code: Alles auswählen

class logamatic2107 (c3964r.Dust3964r,threading.Thread):
    message = True
    timeout = False
    # Array für die Betriebsstunden
    aHour   = [0,0,0]

    # Installations Konstruktor für den Treiber und für die Threads
    def __init__ (self):
        self.timeout = False
        c3964r.Dust3964r.__init__ (self,port='/dev/ttyAMA0',baudrate=2400,SLP=0.1,PRIO=self.HIPRIO)
        threading.Thread.__init__ (self)
        self.TimeStampMessage= t.time()
Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

Wil
Beiträge: 7
Registriert: 29.11.2022, 13:49
System: sonstige

Re: Buderus Logamatic 2107 Revision 3 2019

Beitrag von Wil » 03.12.2022, 13:48

danke,

das hatte ich schon überprüft, aber die Pins RX und TX vertauscht.
jetzt läuft die Routine 2400 habe ich auch in der logamatic class drin.
jetzt bekomme ich folgende Antworten:

Code: Alles auswählen

Starting daemon
Starting initial query of Logamatic.
NEUER JOB EINGEGANGEN:  b'\xee\x00\x00'
JOB WIRD BEARBEITET:  b'\xee\x00\x00'
12:34:04.286266:[TX] 02s 10r EEs 00s 00s 10s 03s FDs 10r [OK]
12:34:07.837926:[RX] 02r 10s 04r 00r 07r 01r 82r 40r C1r 04r 10r 03r 16r 10s [DLE: OK]
Unknown data telegram: 0x04 0x00 0x07 0x01 0x82 0x40 0xc1 0x04
12:34:10.838988:[RX] 02r 10s 00r 00r 65r 12r 24r 2Ar 02r 26r 10r 03r 4Er 10s [DLE: OK]
Unknown data telegram: 0x00 0x00 0x65 0x12 0x24 0x2a 0x02 0x26
12:34:13.838816:[RX] 02r 10s 00r 07r 65r 00r 05r 05r 2Dr 01r 10r 03r 5Dr 10s [DLE: OK]
Unknown data telegram: 0x00 0x07 0x65 0x00 0x05 0x05 0x2d 0x01

Antworten

Zurück zu „Projektvorstellungen“