PanStamp: Unterschied zwischen den Versionen
K (→Voraussetzungen: Forumsverweis für ser2net ergänzt) |
K (Hinweis für neuen Footprint und Adapterplatinen während der "Übergangszeit") |
||
Zeile 21: | Zeile 21: | ||
[http://www.panstamp.com/home panStamps] sind [[Arduino]] Clones, die ein CC1101 Funkmodul beinhalten. Mit ihnen lassen sich Sensoren und Aktoren drahtlos an FHEM anbinden. Sie lassen sich genau wie Arduinos über die Arduino IDE oder mit dem ino Kommandozeilen Binary programmieren. Der [[panStamp]] Software Stack unterstützt einen stromsparenden Power-Down- oder Sleep-Modus für batteriebetriebene Sensoren, aus dem diese dann nur zur eigentlichen Messung und Übertragung "aufwachen". Zur Kommunikation in einem [[panStamp]] Netzwerk dient das ''Simple Wireless Abstract Protocol'' ([https://github.com/panStamp/panstamp/wiki/Simple%20Wireless%20Abstract%20Protocol SWAP]). Um einen [[panStamp]] in Betrieb zu nehmen muss er unbedingt mit einer Antenne oder einem Stück Draht in der [https://github.com/panStamp/panstamp/wiki/Antennae richtigen Länge] bestückt sein. Ohne Antenne funktioniert die Übertragung nicht, auch nicht auf kurze Distanzen! | [http://www.panstamp.com/home panStamps] sind [[Arduino]] Clones, die ein CC1101 Funkmodul beinhalten. Mit ihnen lassen sich Sensoren und Aktoren drahtlos an FHEM anbinden. Sie lassen sich genau wie Arduinos über die Arduino IDE oder mit dem ino Kommandozeilen Binary programmieren. Der [[panStamp]] Software Stack unterstützt einen stromsparenden Power-Down- oder Sleep-Modus für batteriebetriebene Sensoren, aus dem diese dann nur zur eigentlichen Messung und Übertragung "aufwachen". Zur Kommunikation in einem [[panStamp]] Netzwerk dient das ''Simple Wireless Abstract Protocol'' ([https://github.com/panStamp/panstamp/wiki/Simple%20Wireless%20Abstract%20Protocol SWAP]). Um einen [[panStamp]] in Betrieb zu nehmen muss er unbedingt mit einer Antenne oder einem Stück Draht in der [https://github.com/panStamp/panstamp/wiki/Antennae richtigen Länge] bestückt sein. Ohne Antenne funktioniert die Übertragung nicht, auch nicht auf kurze Distanzen! | ||
Zwischenzeitlich hat sich das Footprint der Module stark verändert. Adapterplatinen, um die Module mit neuem Footprint in Hardware mit altem zu integrieren, konnten auf Anfrage bei Daniel im Shop noch geordert werden (Stand Ende 2015) [https://forum.fhem.de/index.php/topic,12487.msg296464.html#msg296464][https://forum.fhem.de/index.php/topic,12487.msg392818.html#msg392818]. Langfristig ist davon auszugehen, dass diese nicht dauerhaft werden lieferbar sein. Von der Programmierung unterscheiden sich die Module jedoch nicht. | |||
== Allgemein == | == Allgemein == |
Version vom 1. Juni 2016, 20:41 Uhr
PanStamp | |
---|---|
Allgemein | |
Protokoll | SWAP |
Typ | Sender, Empfänger, Sensor, Interface |
Kategorie | |
Technische Details | |
Kommunikation | 868MHz (433/915MHz) |
Kanäle | |
Betriebsspannung | 3.3V (panStick: 5V USB) |
Leistungsaufnahme | |
Versorgung | Battery (panStick: USB) |
Abmessungen | 17.7 x 30.5 mm |
Sonstiges | |
Modulname | 34_panStamp.pm 34_SWAP.pm |
Ersteller | Andre / justme1968 |
Hersteller | panStamp |
Dieser Artikel, als mutmaßlicher Eingangsartikel zu dem Thema, beschreibt das FHEM Modul panStamp, was das Funkinterface zu FHEM bildet. Eine Systemübersicht ist in einem separaten Artikel beschrieben. Der Focus liegt hier natürlich auf die Integration mit FHEM. Zu der Hardware panStamp gibt es Herstellerseitig eine eigenen Community mit Forum und Wiki, sowie Downloads auf Github.
panStamps sind Arduino Clones, die ein CC1101 Funkmodul beinhalten. Mit ihnen lassen sich Sensoren und Aktoren drahtlos an FHEM anbinden. Sie lassen sich genau wie Arduinos über die Arduino IDE oder mit dem ino Kommandozeilen Binary programmieren. Der panStamp Software Stack unterstützt einen stromsparenden Power-Down- oder Sleep-Modus für batteriebetriebene Sensoren, aus dem diese dann nur zur eigentlichen Messung und Übertragung "aufwachen". Zur Kommunikation in einem panStamp Netzwerk dient das Simple Wireless Abstract Protocol (SWAP). Um einen panStamp in Betrieb zu nehmen muss er unbedingt mit einer Antenne oder einem Stück Draht in der richtigen Länge bestückt sein. Ohne Antenne funktioniert die Übertragung nicht, auch nicht auf kurze Distanzen!
Zwischenzeitlich hat sich das Footprint der Module stark verändert. Adapterplatinen, um die Module mit neuem Footprint in Hardware mit altem zu integrieren, konnten auf Anfrage bei Daniel im Shop noch geordert werden (Stand Ende 2015) [1][2]. Langfristig ist davon auszugehen, dass diese nicht dauerhaft werden lieferbar sein. Von der Programmierung unterscheiden sich die Module jedoch nicht.
Allgemein
Die Integration in FHEM erfolgt über eine Reihe von Modulen die im Folgenden und anderen Artikel genauer beschrieben sind. Das Modul panStamp erstellt dabei das IO-Device in FHEM.
Voraussetzungen
Als Schnittstelle zwischen FHEM und einem panStamp Netzwerk dient entweder ein panStick (USB Stick mit aufgestecktem panStamp) oder ein panShield mit integriertem panStamp an einem Raspberry Pi. Der so angebundene panStamp wird mit einem (bei Auslieferung des panStamps vorinstallierten) Modem-Sketch als RF-Modem verwendet und über das FHEM Modul panStamp angesprochen. Der panStick kann auch per USB an einer anderen Serverhardware angebunden werden. Die Kommunikation zu FHEM erfolgt dann z.B. über ser2net oder FHEM2FHEM über LAN.
Anwendung
Define
Das Device panStick wird derzeit (01.05.2015) nicht durch autocreate angelegt. Daher muss es manuell entsprechend folgendem Befehl angelegt werden:
define panStick panStamp /dev/ttyUSBx@38400
Die Schnittstelle (/dev/ttyUSBx) muss entsprechend der lokal verwendeten Schnittstelle angepasst werden. Für die Einrichtung des panStick innerhalb des Betriebssystem siehe hier
Dieses panStamp Device, der panStick, versucht dann alle panStamps per SWAP-Broadcast zu finden und per autocreate anzulegen, wenn dieses aktiv sind. Die weitere Funktion übernimmt das Modul SWAP, was das Funkprotokoll der panStamp Module in FHEM implementiert.
Betrieb an der Fritzbox Spezialitäten zum Betrieb an einer Fritzbox sind hier [3] und hier [4] beschrieben. Es scheint nur der hintere USB-Anschluss für die Verwendung zu laufen. Außerdem muss der USB-Fernanschluss deaktiviert sein.
Attribute
Für den panStick gibt es keine modulspezifischen Attribute.
set-Befehle
- discover?
Mit diesem Befehl wird eine Broadcast SWAP-Message abgesetzt, die alle empfangenden panStamps dazu veranlassen, sich zu melden. Batteriebetriebenen panStamps können systembedingt nur identifiziert werden, wenn diese Empfangsbereit sind und sich nicht im Schlafmodus befinden.
- raw
Ist der panStick eingerichtet und meldet "Initialized", kann über das panStick device direkt eine raw Message abgesetzt werden. Diese ist zurzeit eigentlich immer eine SWAP Nachricht wie z.B.
set panStick raw 00010000010000
In diesem Beispiel wird ein Broadcast an alle abgesetzt, damit diese ihre ID und ihren ProductCode zurück an FHEM senden. Das macht der panStick nach dem Initialisieren auch einmal automatisch um alle nicht schlafenden Devices per autocreate anlegen zu können. Mit diesem Befehl "raw" lassen sich SWAP-Messages direkt absetzten, was vor allen Dingen dann hilfreich sein kann, wenn man vermutet, dass die Kommunikation über die modulgestützten Befehle fehlschlägt.
Anwendungsbeispiele
Neue panStamps in Betrieb nehmen
Info: Das SWAP Modul unterstützt autocreate. Bei der Inbetriebnahme ist autocreate zu aktivieren!
Neue panStamps sollten nur Einer nach dem Anderen in Betrieb genommen werden, da sie zuerst mit einer eindeutigen Device-Adresse (ungleich FF
und grösser 01
) versehen werden müssen. Bei batteriebetriebenen Sensoren sollte auch das Sendeintervall auf einen sinnvollen Wert gesetzt werden:
set <device> regSet 09 <device adresse als 2 stellige hex zahl> set <device> regSet 0A <intervall in Sekunden als 4 stellige hex zahl>
Für panStamp-Hardware im Power-Down-Modus werden diese Kommandos in eine Warteschlange gestellt und übertragen, sobald die panStamp-Hardware seine Initialisierungssequenz durchläuft. Hierzu ist nach Absetzen der Kommandos aus FHEM die Reset-Taste an der panStamp-Hardware zu drücken oder die Stromquelle erneut zu verbinden.
Das SWAP-Modul versucht, panStamp-Hardware mit der Default Adresse FF
automatisch auf die erste freie Adresse im Bereich F0
-FE
zu ändern. Automatisch gesetzte Werte sollten danach manuell auf die jeweilige Installation angepasst werden.
Für batteriebetriebene panStamp-Hardware (genauer: Hardware die den Power-Down-Modus unterstützen) wird das Default Sendeintervall von FFFF
zu 0384
(900 Sekunden) geändert.
Es gibt mit bestimmten panStamp lib Versionen das Problem das ein Wert von FFFF
in Systemregister 0A
zum Überlauf führt und dann ununterbrochen SWAP Nachrichten gesendet werden. Im FHEM Modul wird versucht das abzufangen. Das funktioniert auf manchen langsamen Host-Systemen (z.B. FritzBox) nicht, weil der panStamp so schnell sendet, dass FHEM so mit dem Abarbeiten beschäftigt ist, dass es selber nicht zum Senden kommt.
Zur Abhilfe kann im Sketch in setup() ganz am Anfang ein
EEPROM.write(EEPROM_TX_INTERVAL, 0x55); EEPROM.write(EEPROM_TX_INTERVAL+1, 0x55);
eingefügt werden. Der Sketch ist dann zu flashen und wenn der Sketch einmal durchgelaufen ist, können diese beiden Zeilen wieder entfernen werden und der panStamp muss noch mal geflasht werden. Ansonsten wird die Adresse bei jedem Start erneut auf 5555
gesetzt.
Weblinks
- panStamp panStamp Hersteller
- soilmoisture sketch auf sourceforge