Raspberry Pi: CSM: Unterschied zwischen den Versionen

Aus FHEMWiki
(Hinweis auf zentralen PI-Artikel aufgenommen)
 
(2 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Auf Grund der Tatsache, dass neben diversen GPIO, I2C und SPI Ports auch ein UART-Port vorhanden ist, lassen sich Raspberry PI und das "CC1101 based UART" Modul ([http://www.busware.de/tiki-index.php?page=CSM CSM von busware.de]) perfekt auf kleinstem Raum kombinieren.
Auf Grund der Tatsache, dass neben diversen GPIO, I2C und SPI Ports auch ein UART-Port vorhanden ist, lassen sich [[Raspberry Pi]] und das "CC1101 based UART" Modul ([http://www.busware.de/tiki-index.php?page=CSM CSM von busware.de]) perfekt auf kleinstem Raum kombinieren.
 
== Hardware Setup ==
== Hardware Setup ==
[[File:RaspberryPi_CSM_Wiring.png|180px|thumb]]
[[File:RaspberryPi_CSM_Wiring.png|180px|thumb]]
Das CSM kann komplett vom Raspberry Pi mit Spannung (3V3) versorgt werden. Der 3V3-Pin des Moduls muss dazu mit dem 3V3-Pin des Raspberry Pi's (P1-01) verbunden werden, das gleiche gilt für den Ground (P1-06). Als nächstes müssen nur die TXD- und RXD-Pins des Moduls mit den entsprechenden UART-Pins des Raspberry Pi's verbunden werden (TXD [P1-08], RXD [P1-10]) - '''Wichtig:'''Hier muss die umgekehrte Reihenfolge beachtet werden, also TXD an RXD und RXD an TXD. Zu letzt muss die Antenne an das Modul angeschlossen werden (ANT), hier funktioniert für den Anfang auch erstmal eine einfache Drahtantenne mit einer λ/4-Länge (~86,25mm) ganz gut.
Das CSM kann komplett vom Raspberry Pi mit Spannung (3V3) versorgt werden. Der 3V3-Pin des Moduls muss dazu mit dem 3V3-Pin des Raspberry Pi (P1-01) verbunden werden, das gleiche gilt für den Ground (P1-06). Als nächstes müssen nur die TXD- und RXD-Pins des Moduls mit den entsprechenden UART-Pins des Raspberry Pi verbunden werden (TXD [P1-08], RXD [P1-10]) - '''Wichtig:''' Hier muss die umgekehrte Reihenfolge beachtet werden, also TXD an RXD und RXD an TXD. Zum Schluss muss die Antenne an das Modul angeschlossen werden (ANT), hier funktioniert für den Anfang auch erstmal eine einfache Drahtantenne mit einer λ/4-Länge (ca. 86,25mm) ganz gut.


== Software Setup ==
== Software Setup ==
{{Hinweis|Die Installation von FHEM sowie die vorbereitung der UART-Schnittstelle ist in [[Raspberry Pi]] beschrieben. Hier sollten zukünftig nur Besonderheiten und Abweichungen stehen!}}
Nachdem das Modul mit dem Raspberry Pi verbunden worden ist, muss der UART-Port (/dev/ttyAMA0) softwareseitig freigeschaltet werden. Per Default ist dieser mit der seriellen Linux Konsole (Getty) verbunden und daher erstmal nicht in der Lage, mit dem CSM zu kommunizieren.
Nachdem das Modul mit dem Raspberry Pi verbunden worden ist, muss der UART-Port (/dev/ttyAMA0) softwareseitig freigeschaltet werden. Per Default ist dieser mit der seriellen Linux Konsole (Getty) verbunden und daher erstmal nicht in der Lage, mit dem CSM zu kommunizieren.


Zeile 12: Zeile 14:
# Referenzen entfernen (durchgestrichen)
# Referenzen entfernen (durchgestrichen)
dwc_otg.lpm_enable=0 <strike>console=ttyAMA0,115200 kgdboc=ttyAMA0,115200</strike> console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait</nowiki>
dwc_otg.lpm_enable=0 <strike>console=ttyAMA0,115200 kgdboc=ttyAMA0,115200</strike> console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait</nowiki>
<nowiki>sudo nano /etc/inittab
<nowiki>sudo nano /etc/inittab
# Getty-Referenz auskommentieren
# Getty-Referenz auskommentieren
#Spawn a getty on Raspberry Pi serial line
#Spawn a getty on Raspberry Pi serial line
#T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100</nowiki>
#T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100</nowiki>
<nowiki>sudo reboot</nowiki>
<nowiki>sudo reboot</nowiki>
Nach den Änderungen muss das System rebootet werden - Sobald er wieder hochgefahren ist, kann die generelle Kommunikation/Funktionsweise mit einem Terminal-Programm (z.B. minicom) getestet werden. Es ist zu beachten, dass die Baudrate des CSM-Moduls 38,4k beträgt:
Nach den Änderungen muss das System rebootet werden - Sobald er wieder hochgefahren ist, kann die generelle Kommunikation/Funktionsweise mit einem Terminal-Programm (z.B. minicom) getestet werden. Es ist zu beachten, dass die Baudrate des CSM-Moduls 38,4k beträgt:


Zeile 23: Zeile 25:
# Befehl "V" (get version) senden um eine ähnliche Antwort wie unten zu erhalten:
# Befehl "V" (get version) senden um eine ähnliche Antwort wie unten zu erhalten:
# "V 1.44 CSM8682</nowiki>
# "V 1.44 CSM8682</nowiki>
== FHEM Konfiguration ==
== FHEM Konfiguration ==
Da das Modul auf der CUL-Firmware basiert, kann es in FHEM wie gewohnt hinzugefügt werden:
Da das Modul auf der CUL-Firmware basiert, kann es in FHEM wie gewohnt hinzugefügt werden:
Zeile 28: Zeile 31:
  <nowiki>define CSM1 CUL /dev/ttyAMA0@38400 [Hauscode]</nowiki>
  <nowiki>define CSM1 CUL /dev/ttyAMA0@38400 [Hauscode]</nowiki>
Getestet werden kann es dann mit z.B.: "get CSM1 version" oder "get CSM1 ccconf". Ansonsten kann es ganz normal wie ein CUL-Device gehandelt und genutzt werden.
Getestet werden kann es dann mit z.B.: "get CSM1 version" oder "get CSM1 ccconf". Ansonsten kann es ganz normal wie ein CUL-Device gehandelt und genutzt werden.
== Firmware-Update ==
Für ein Update der CSM-Firmware ist zu beachten, dass der Pin6 (PD3) auf Masse gelegt werden muss.


== Externe Links ==
== Externe Links ==
[http://elinux.org/RPi_Low-level_peripherals http://elinux.org/RPi_Low-level_peripherals]
* [http://elinux.org/RPi_Low-level_peripherals http://elinux.org/RPi_Low-level_peripherals]
* Beschreibung des CSM-Moduls (http://busware.de/tiki-index.php?page=CSM)
[[Kategorie:HOWTOS]]
[[Kategorie:HOWTOS]]
[[Kategorie:Raspberry Pi]]

Aktuelle Version vom 8. Juni 2018, 09:28 Uhr

Auf Grund der Tatsache, dass neben diversen GPIO, I2C und SPI Ports auch ein UART-Port vorhanden ist, lassen sich Raspberry Pi und das "CC1101 based UART" Modul (CSM von busware.de) perfekt auf kleinstem Raum kombinieren.

Hardware Setup

RaspberryPi CSM Wiring.png

Das CSM kann komplett vom Raspberry Pi mit Spannung (3V3) versorgt werden. Der 3V3-Pin des Moduls muss dazu mit dem 3V3-Pin des Raspberry Pi (P1-01) verbunden werden, das gleiche gilt für den Ground (P1-06). Als nächstes müssen nur die TXD- und RXD-Pins des Moduls mit den entsprechenden UART-Pins des Raspberry Pi verbunden werden (TXD [P1-08], RXD [P1-10]) - Wichtig: Hier muss die umgekehrte Reihenfolge beachtet werden, also TXD an RXD und RXD an TXD. Zum Schluss muss die Antenne an das Modul angeschlossen werden (ANT), hier funktioniert für den Anfang auch erstmal eine einfache Drahtantenne mit einer λ/4-Länge (ca. 86,25mm) ganz gut.

Software Setup

Info blue.png
Die Installation von FHEM sowie die vorbereitung der UART-Schnittstelle ist in Raspberry Pi beschrieben. Hier sollten zukünftig nur Besonderheiten und Abweichungen stehen!


Nachdem das Modul mit dem Raspberry Pi verbunden worden ist, muss der UART-Port (/dev/ttyAMA0) softwareseitig freigeschaltet werden. Per Default ist dieser mit der seriellen Linux Konsole (Getty) verbunden und daher erstmal nicht in der Lage, mit dem CSM zu kommunizieren.

Dazu müssen sämtliche Getty-Referenzen zum UART-Port entfernt werden: Zum einen muss die Datei "/boot/cmdline.txt" bearbeitet werden und zum anderen die Datei "/etc/inittab":

sudo nano /boot/cmdline.txt
# Referenzen entfernen (durchgestrichen)
dwc_otg.lpm_enable=0 <strike>console=ttyAMA0,115200 kgdboc=ttyAMA0,115200</strike> console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
sudo nano /etc/inittab
# Getty-Referenz auskommentieren
#Spawn a getty on Raspberry Pi serial line
#T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
sudo reboot

Nach den Änderungen muss das System rebootet werden - Sobald er wieder hochgefahren ist, kann die generelle Kommunikation/Funktionsweise mit einem Terminal-Programm (z.B. minicom) getestet werden. Es ist zu beachten, dass die Baudrate des CSM-Moduls 38,4k beträgt:

sudo apt-get install minicom
minicom -b 38400 -o -D /dev/ttyAMA0
# Befehl "V" (get version) senden um eine ähnliche Antwort wie unten zu erhalten:
# "V 1.44 CSM8682

FHEM Konfiguration

Da das Modul auf der CUL-Firmware basiert, kann es in FHEM wie gewohnt hinzugefügt werden:

define CSM1 CUL /dev/ttyAMA0@38400 [Hauscode]

Getestet werden kann es dann mit z.B.: "get CSM1 version" oder "get CSM1 ccconf". Ansonsten kann es ganz normal wie ein CUL-Device gehandelt und genutzt werden.

Firmware-Update

Für ein Update der CSM-Firmware ist zu beachten, dass der Pin6 (PD3) auf Masse gelegt werden muss.

Externe Links