[erledigt] FHEM auf Raspberry Pi und serielle Schnittstelle

Begonnen von tndx, 24 Februar 2016, 20:49:39

Vorheriges Thema - Nächstes Thema

tndx

Hallo zusammen,

ich versuche es hinzukriegen, meine Lüftungsanlage Zehnder ComfoAir 350 Luxe mit FHEM auf einem Raspberry Pi über die serielle Schnittstelle zu steuern.

Ich habe mir eine Platine mit einem max232-Baustein besorgt, die direkt an die entsprechenden Pins des Raspi angeschlossen wird und eine vollwertige RS232-Schnittstelle zur Verfügung stellt. Angeschlossen an einen Laptop konnte ich mich am Raspi über die serielle Schnittstelle anmelden, daraus folgere ich, dass hardwaretechnisch alles funktioniert. Anschließend noch die serielle Konsole am Raspi deaktiviert, FHEM installiert, ca350 konfiguriert, doch es tut sich nichts, Logdatei sagt:

2016.02.24 20:08:31 3: ComfoAir350: timeout waiting for reply expecting 00ce Request was 07f000cd007a070f
2016.02.24 20:08:33 3: ComfoAir350: timeout waiting for reply expecting 000c Request was 07f0000b00b8070f
2016.02.24 20:08:35 3: ComfoAir350: timeout waiting for reply expecting 00de Request was 07f000dd008a070f
2016.02.24 20:08:37 3: ComfoAir350: timeout waiting for reply expecting 00d2 Request was 07f000d1007e070f
2016.02.24 20:08:39 3: ComfoAir350: timeout waiting for reply expecting 00e2 Request was 07f000e1008e070f
2016.02.24 20:08:41 3: ComfoAir350: timeout waiting for reply expecting 0098 Request was 07f000970044070f
2016.02.24 20:08:43 3: ComfoAir350: timeout waiting for reply expecting 00e0 Request was 07f000df008c070f

Das Ganze wiederholt sich ständig....

Zur Kontrolle auf einem alten Laptop unter Ubuntu FHEM installiert, die Lüftungsanlage mit dem seriellen Port verbunden, ca350 konfiguriert und siehe da, es läuft...

Ich habe mittlerweile unterschiedliche Kabel mit dem Raspi ausprobiert, TX und RX getauscht, doch es tut sich nichts, die Ausgabe in der Logdatei ist immer die Gleiche.

Hat es jemand evtl. geschafft, eine ähnliche Konfiguration ans Laufen zu kriegen? Habe ich was übersehen?


Bennemannc

Hallo,

da fallen mir nur die übleichen Verdächtigen ein Baudrate und Übertragung 8N1 wäre "normal". Vergleiche daoch mal was auf dem Laptop eigenstellt ist mit dem auf dem RPI.

Gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF

tndx

#2
Die FHEM-Modulkonfiguration ist bis auf die Schnittstelle identisch:


define ComfoAir350 ComfoAir /dev/ttyS0@9600 60

define ComfoAir350 ComfoAir /dev/ttyAMA0@9600 60


Gibt es eine Stelle, wo ich die restlichen Parameter einstellen kann?

Edit: gerade noch mal im Logfile gesehen:


2016.02.24 20:59:47 3: Opening ComfoAir350 device /dev/ttyAMA0
2016.02.24 20:59:47 3: Setting ComfoAir350 serial parameters to 9600,8,N,1
2016.02.24 20:59:47 3: ComfoAir350 device opened

Wernieman

Probiere es doch mal vom RasPi ohne fhem, d.h. auf der Console mit z.B. minocom.

P.S. welches betriebsystem hat der Laptop?
Wenn Windows, probiere mal ein Life-Linux-System (boot-CD/USB) und probiere es dann.
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

tndx

Zitat von: Wernieman am 25 Februar 2016, 19:29:25
Probiere es doch mal vom RasPi ohne fhem, d.h. auf der Console mit z.B. minocom.

Wie meinst Du das? Minocom sagt mir nichts und Google hat auf die Schnelle auch nichts Brauchbares ausgespuckt...

Zitat von: Wernieman am 25 Februar 2016, 19:29:25
P.S. welches betriebsystem hat der Laptop?
Wenn Windows, probiere mal ein Life-Linux-System (boot-CD/USB) und probiere es dann.

Auf dem Laptop ist Ubuntu installiert.

Bennemannc

Hallo,

das muss minicom heißen und ist ein Serieles Terminalprogramm.

Gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF

Wernieman

ZitatAuf dem Laptop ist Ubuntu installiert.

Wie testest Du auf Deinem Laptop?

Und ja, es sollte mimicom heißen (bin bedauerlicherweise sehr kreativ beim Tippen :o( )
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

PeMue

RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

Wernieman

Mist ..... das proggi will nicht scheinbar nicht von mir verwendet werden ;o)
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

tndx

#9
Hallo zusammen,

Kam leider erst heute wieder zum Spielen...

Habe mittlerweile minicom auf beiden Seiten installiert. Die Verbindung ist zwar möglich aber höchst instabil bzw. ich kann nicht nachvollziehen, wovon es abhängt, ob eine Verbindung zustande kommt oder nicht... Und wenn eine Verbindung zustande kommt, dann wird auch schon mal Mist übertragen, und nicht das was ich eingebe. Und zwar in beide Richtungen.


Scheint also ein nichts FHEM-spezielles zu sein, aber wenn Ihr trotzdem Tipps zum Lösen des Problems habt, immer her damit!

Wernieman

Du schriebst beim ersten Beitrag, das es auf Deinem Laptop funktioniert, es ist also dem nicht so?

Wie hast Du die Serielle Schnittstelle eingestellt?
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

tndx

Zitat von: Wernieman am 07 März 2016, 09:40:06
Du schriebst beim ersten Beitrag, das es auf Deinem Laptop funktioniert, es ist also dem nicht so?

Also die Lüftungsanlage hat an dem Laptop funktioniert.

Zitat von: Wernieman am 07 März 2016, 09:40:06
Wie hast Du die Serielle Schnittstelle eingestellt?

Meinst Du, beim Test mit minicom? Aufruf auf beiden Seiten war "minicom -b 9600 -o -D /dev/ttyS0" bzw "minicom -b 9600 -o -D /dev/ttyAMA0"

Wernieman

Ich darf zitieren
ZitatZur Kontrolle auf einem alten Laptop unter Ubuntu FHEM installiert, die Lüftungsanlage mit dem seriellen Port verbunden, ca350 konfiguriert und siehe da, es läuft...

Ich bin jetzt wirklich verunsichert, wo es bei Dir läuft und wo nicht ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

tndx

Moin,

sorry, dass ich mir mit dem Antworten immer so lange Zeit lasse, komme leider sehr selten zum "Spielen"...

Zitat von: Wernieman am 12 März 2016, 18:43:17
Ich bin jetzt wirklich verunsichert, wo es bei Dir läuft und wo nicht ...

Ich fasse noch mal kurz alles was Ich bis jetzt ausprobiert habe zusammen:

Windows-Rechner (steht nicht mehr zur Verfügung), Windows 7, Terminal-Programm: irgendwas altbackenes, nicht putty, kann leider nicht mehr nachschauen, was genau
Laptop: Ubuntu 14.4
Raspi 1,2: Raspberry Pi 2, Raspbian Jessie minimal, dieselbe SD-Karte/SW-Konfiguration abwechselnd für die Tests verwendet

1. Windows-Rechner + Raspi1: funktionierte (hierbei war die serielle Schnittstelle als serielle Konsole konfiguriert), ich konnte mich über den Windows Rechner am Raspi anmelden und alles machen, was ich auch über ssh kann
2. Raspi1 + CA350: auf Raspi lief FHEM, Meldungen in der Logdatei deuten darauf hin, dass keine Kommunikation zustande kommt
3. Laptop + CA350: auf dem Laptop lief FHEM, Funktion wie erwartet, Werte wurden ausgelesen und in der FHEM-Oberfläche dargestellt.
4. Laptop + Raspi1: minicom auf beiden Seiten aufgerufen, Verbindung kam nicht immer zustande, aber wenn sie zustande kam wurde neben den eigentlichen Eingaben auch viel Müll in beide Richtungen übermittelt, s. auch Screenshot
5. Laptop + Raspi2: wie 4.
6. Laptop + Raspi2: serielle Schnittstelle als serielle Konsole konfiguriert, also ähnlich wie bei 1., allerdings kamen die Ausgaben nicht mehr lesbar auf dem Laptop an wie beim 1. Versuch, ab und zu blitzte was Lesbares auf, aber kein Vergleich zu 1. Anmeldung hat auch nicht funktioniert.

Mittlerweile kann ich zum Glück ausschließen, dass es an der Raspi-Hardware liegt, denn Raspi 1 und 2 verhalten sich zumindest beim Minicom-Test identisch. Also liegt's in diesem Fall eher an der SW, aber ich kenne mich leider mit den ganzen Protokollen nicht aus, die man bei minicom konfigurieren kann...

PeMue

#14
Hallo,

Zitat von: tndx am 18 März 2016, 22:28:41
4. Laptop + Raspi1: minicom auf beiden Seiten aufgerufen, Verbindung kam nicht immer zustande, aber wenn sie zustande kam wurde neben den eigentlichen Eingaben auch viel Müll in beide Richtungen übermittelt, s. auch Screenshot

so ganz verstehe ich Deinen Ansatz noch nicht. Bei mir würde die Konfiguration so aussehen:

Hardware
PC (Windows)/PC (Linux)/MAC <- WLAN oder LAN -> Einplatinencomputer <- serielle Schnittstelle über MAX3232-> Gerät, das ausgelesen werden soll

Software
PC/MAC <- putty (oder etwas vergleichbares) -> Einplatinencomputer

Dann kann man  per Konsole den Rechner steuern, z.B. mit minicom auf die serielle Schnittstelle zugreifen (Baudrate, Anzahl Bits/Stopbits müssen halt passen).

Was verstehst Du unter beiden Seiten? Ich würde den oben beschriebenen Ansatz nehmen, per minicom die serielle Schnittstelle öffnen und entsprechende Befehle hinschicken und schauen, was zurückkommt. Wenn das mit minicom geht, sollte es auch mit fhem gehen.

Gruß PeMue

Edit:
Oben die Änderungen für MAX Baustein ergänzt. Ich vermute, Du hast die ComfoAir 350 direkt per serieller Schnittstelle an den PC gehängt und es geht. Der Raspberry Pi hat aber 3,3 V Pegel (und 5 V bzw. 3,3 V Versorgung). Sprich: Du brauchst einen angepassten MAX Baustein, der mit 3,3 V Logikpegeln arbeitet (siehe auch nächsten Post).
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser