Probleme mit TCM310 GPIO-Modul auf Raspberry Pi Modell 3B

Begonnen von makoe88, 19 November 2018, 22:42:15

Vorheriges Thema - Nächstes Thema

makoe88

Hallo,

ich wollte mich mal an FHEM mit EnOcean wagen und habe mir dafür zum "spielen" einen Raspi 3B sowie das o.g. TCM310 GPIO-Modul (sowie einen STM330 Temperatursensor) besorgt.

Ich habe den Raspi entsprechend eingerichtet. Unter anderem:

- Serielle Konsole deaktiviert via raspi-config
- in der /boot/config.txt steht:

enable_uart=1
dtoverlay=pi3-disable-bt

Die Kommunikation über den seriellen Port scheint soweit auch zu funktionieren. Um das zu verifizieren habe ich mir dieses python-Script geschnappt:

https://www.raspberrypi.org/forums/viewtopic.php?t=178079#p1134928

die GPIO-Pins 8 und 10 gebrückt und das script ausgeführt. Es sendet anscheinend Daten auf den Seriellen Sendepin von /dev/serial0 aka /dev/ttyAMA0 welche vom Empfangspin aufgrund der Brücke eingelesen werden. Anschließend vergleicht das Script die Daten. Klappt. Also sollte die UART-Schnittstelle nach meinem Verständnis "frei" sein.

Trotzdem erkennt weder FHEM den aufgesteckten TCM310, noch empfange ich mit "hexdump < /dev/ttyAMA0" irgendwelche Daten beim Drücken des Einlernen-Pins vom EnOcean-Sender.

Hat jemand ne Idee, woran das liegen könnte? TCM310 defekt?

Danke!

MadMax-FHEM

Ich denke was du getan ist ist etwas "wenig"...

Ich habe für mich einiges mehr notiert, in etwa aber so:

https://wiki.fhem.de/wiki/Raspberry_Pi#Verwendung_UART_f.C3.BCr_Zusatzmodule

bzw.

http://heinz-otto.blogspot.com/2016/07/raspberry-pi-homematic-modul.html

Ist zwar teilweise für andere Aufsteckmodule aber bis auf den Define in fhem sollte das gleich sein.

Hier meine Notizen (sind aber halt mehr als "Anhaltspunkte" für mich gedacht):


Disable BlueTooth:

sudo systemctl disable hciuart

sudo nano /boot/config.txt

dtoverlay=pi3-disable-bt
enable_uart=1

sudo raspi-config
enable serial

sudo nano /boot/cmdline.txt
remove: 'console=serial0,115200'

sudo addgroup fhem tty

define EnOceanPI TCM ESP3 /dev/ttyAMA0@57600


Wenn du BlueTooth nutzen willst, dann musst du die seriellen Schnittstellen (S0 / S1!?) tauschen oder so...
...ich brauche BlueTooth nicht.

Achja und das ganze auf einem PI3 (ohne B), sollte aber egal sein...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

makoe88

#2
Hi,

Danke für die Antwort!

Ich bin die ganzen Dinge nochmal durchgegangen. Bluetooth habe ich deaktiviert.

In der Log-Datei erscheint nun:

2018.11.19 22:11:26 3: TCM EnOceanPI set reset
2018.11.19 22:11:28 2: TCM EnOceanPI Timeout reading response for set reset
2018.11.19 22:11:28 2: TCM EnOceanPI Attribute sendInterval 0 initialized
2018.11.19 22:11:29 3: TCM EnOceanPI get baseID
2018.11.19 22:11:31 2: TCM EnOceanPI Timeout reading response for get baseID
2018.11.19 22:11:31 3: TCM EnOceanPI get version
2018.11.19 22:11:33 2: TCM EnOceanPI Timeout reading response for get version
2018.11.19 22:11:33 3: TCM EnOceanPI set repeater 0000
2018.11.19 22:11:35 2: TCM EnOceanPI Timeout reading response for set repeater
2018.11.19 22:11:35 3: TCM EnOceanPI set smartAckMailboxMax 0
2018.11.19 22:11:37 2: TCM EnOceanPI Timeout reading response for set smartAckMailboxMax
2018.11.19 22:11:37 3: TCM EnOceanPI set mode 00
2018.11.19 22:11:39 2: TCM EnOceanPI Timeout reading response for set mode
2018.11.19 22:11:39 3: TCM EnOceanPI set maturity 01
2018.11.19 22:11:41 2: TCM EnOceanPI Timeout reading response for set maturity
2018.11.19 22:11:41 2: TCM EnOceanPI initialized


.. scheint also noch nicht so richtig zu klappen..

Also Kurzzusammenfassung, was ich bisher alles gemacht habe:

- Console über Seriell deaktiviert (remove: 'console=serial0,115200') bzw über raspi-config
- enable_uart=1 in config.txt um UART zu aktivieren
- dtoverlay=pi3-disable-bt in config.txt um Bluetooth zu deaktivieren und den ttyAMA0 auf serial0 zu linken
- core_freq=250 in config.txt
- sudo addgroup fhem tty
- define EnOceanPI TCM ESP3 /dev/ttyAMA0@57600 in der fhem-config
- systemctl stop serial-getty@ttyAMA0.service
- systemctl disable serial-getty@ttyAMA0.service
- systemctl mask serial-getty@ttyAMA0.service
-reboot

Kommunikation über UART via /dev/ttyAMA0 scheint prinzipiell zu funktionieren. (s.o.)

Leider bin ich mit meinem Latein am Ende.. Habe gerade wirklich nen defekten TCM310 in Verdacht und direkt mal nen neuen bestellt. Hoffe dass es dann mit dem geht.

MadMax-FHEM

Ich weiß nicht genau was du in welcher Reihenfolge gemacht hast.

Ist wichtig, denn wenn du etwas über raspi-config bzgl. serieller Schnittstelle gemacht hast, hast du evtl. eine andere Änderung wieder überschrieben.

Mit meinen Notizen habe ich es erst kürzlich (<6Monate) neu eingerichtet: Raspi 3 (ohne B), Stretch lite

Auch mal die verlinkten Beiträge gelesen!?

Und nicht zu viel (durcheinander) machen, meist geht das dann schief.

Hast du initialUsbCheck in fhem noch aktiv!?

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)