MapleCUN
MapleCUN | |
---|---|
Allgemein | |
Protokoll | diverse |
Typ | Transceiver |
Kategorie | CUL |
Technische Details | |
Kommunikation | Funk 433MHz oder 868MHz |
Kanäle | N/A |
Betriebsspannung | 3,3V nach Spannungsregler |
Leistungsaufnahme | |
Versorgung | USB |
Abmessungen | |
Sonstiges | |
Modulname | CUL |
Hersteller | Eigenbau |
Einleitung
Der MapleCUN ist neuartiges CUN oder CUL Interface zum Selbstbau, entwickelt von Telekatz.
Durch den STM32 Mikrocontroller ist die Basis sehr leistungsfähig. Der Controller ist deutlich schneller als ATMega und verfügt über mehr Flash und RAM sowie integriertes USB.
Es können 1-4 Transceiver verbaut werden.
Aufbau
Benötigt werden dazu folgende Teile:
- Maple Mini Board
- CC1101 Funkmodul
- W5100 oder W5500 Ethernet Modul (Optional)
Der Aufbau kann auf Lochraster erfolgen, fertige Platinen siehe Foto sparen jedoch Zeit, reduzieren Fehlerquellen und erhöhen die Zuverlässigkeit.
Die Module werden gemäß Schaltplan miteinander verbunden. Da alle Module mit 3,3V laufen sind keine Bauteile für eine Pegelanpassung notwendig.
Bestückung der Module
Stand 01/2017: Es sind noch nicht alle Protokolle an den zusätzlichen Transceivern verfügbar. SlowRF funktioniert nur an CC0 und CC1. Nach einem Reset der Konfiguration ist die Frequenz von CC0 auf 868MHz und CC1 auf 433MHz voreingestellt. Lässt sich dann aber auch umkonfigurieren. KOPP und MBUS funktionieren nur an CC0. Die restlichen Protokolle sind an allen Transceivern verfügbar.
Firmware / Flashen
Zum flashen wird noch ein USB/TTL Wandler benötigt. Da der UART1 Anschluss des Controllers 5V tolerant ist kann auch ein Wandler mit 5V Ausgang verwendet werden. Angeschlossen wird der Wandler an X4 (DBG).
Die Firmware ist in der a-culfw enthalten. Für den MapleCUN gibt es jetzt nur noch zwei verschiedene Firmware Dateien,je nach verwendeten Wizchip:
- MapleCUNx4_W5100.bin
- MapleCUNx4_W5500.bin
In diesen Versionen sind alle Protokolle enthalten. Für einen MapleCUL kann mein beide Versionen verwenden.
Falls kein Netzwerkmodul angeschlossen ist wird das automatisch erkannt. Auch die Anzahl der Transceivermodule wird automatisch erkannt.
Anmerkungen zur Firmware:
- Die Umschaltung zwischen den RF Protokollen wurde angepasst. Dies funktioniert mit Ausnahme von KOPP_FC mit allen Protokollen.
- Folgende Einschränkungen gibt es für den Betrieb mit mehreren Transceivern:
- SlowRF funktioniert nur an CC0 und CC1.
- MBUS funktioniert an jedem Transceiver aber insgesamt nicht an mehr als einem Transceiver gleichzeitig.
- KOPP_FC funktioniert nur an CC0.
- Die restlichen Protokolle funktionieren an allen Transceivern und auch mehrfach gleichzeitig.
Zum flashen kann entweder von ST der STM32 Flash loader demonstrator oder das Tool stm32flash benutzt werden. Flashen über den MAPLE Bootloader per USB funktioniert derzeit (noch?) nicht.
Firmware flashen:
Bootloader aktivieren:
- RX1/TX1 am Maple Mini mit einem USB/TTL Adapter mit dem PC verbinden.
- USB Kabel am Maple Mini anschließen.
- Taste but=32 am Maple Mini drücken und gedrückt halten.
- Taste reset am Maple Mini drücken.
- Tasten loslassen.
Hinweis: Der Bootloader ist Teil des STM32 und kann nicht gelöscht werden. Wenn es abbricht, Bootloader wieder wie beschrieben aktivieren und es nochmal versuchen.
STM32 Flash loader demonstrator:
Flash loader demonstrator starten.
Com Port des USB/TTL Wandler auswähle, Baud Rate 115200, Parity Even, Echo Disabled, Timeout 1. Auf Next drücken. Es sollte die Meldung erscheinen. Target is readable. Please click "Next" to proceed. Auf Next drücken. Auf Next drücken. Download to device auswählen. Datei MapleCUL.bin bzw. MapleCUN.bin öffnen. Erase necessary pages auswählen. Auf Next drücken. Warten bis Flashvorgang abgeschlossen ist. USB Kabel am Maple Mini entfernen.
Stm32flash:
stm32flash -w MapleCUN.bin -v /dev/ttyxx
Einrichtung in FHEM
define mapleCUN1 CUL 192.168.69.100:2323 1234 define mapleCUL CUL /dev/ttyACM0@38400 4444
Die zusätzlichen Transceiver werden als STACKABLE_CC angelegt.
define mapleCUN2 STACKABLE_CC mapleCUN1 define mapleCUN3 STACKABLE_CC mapleCUN2 define mapleCUN4 STACKABLE_CC mapleCUN3
Zusätzliche Serielle Schnittstellen
Über USB werden zwei weitere Schnittstellen angelegt, der Netzwerkzugriff erfolgt über die Ports 2324 und 2325.
Zur Einstellung der Baudrate über Netzwerk gibt es folgende Befehle:
- UART0 Baudrate einstellen: pb0@115200
- UART1 Baudrate einstellen: pb1@9600
- Baudrate im EEPROM speichern: ps
- Baudrate anzeigen: pi
Ein am UART0 angeschlossener HM-MOD-UART kann z.B. mit folgender Definition in FHEM eingebunden werden:
define myRemoteHmUART HMUARTLGW uart://192.168.42.23:2324
Debugging / weiteres
- Stromverbrauch der Tranceiver: Typischerweise 17 mA für RX und 34 mA für TX pro Modul.
- Auf die OUT-Leitung kann bei den meisten FastRF Protokollen verzichtet werden. MAX und HM funktionieren z.B. ohne OUT Leitung
- Beim ersten Transceiver ist der Status nicht "Initialized": Möglicherweise ist die Verdrahtung fehlerhaft
- Der MAPLE-CUN startet ständig neu (Z.B. unter linux zu sehen bei tail -f /var/log/syslog, hier taucht das selbe USB Gerät ständig neu auf): Vermutlich wurde die Firmware für LAN-Modul aufgespielt, aber kein LAN Modul erkannt
Beispiel für Meldungen am Debug-Port bei einem Transceiver und ohne LAN Chip:
-I- Getting new Started Project -- -I- MapleCUNx4 -I- Compiled: Mar 6 2017 18:53:53 -- -I- init Flash -I- init Timer -I- init EEprom -I- init Ethernet WIZCHIP Initialized success. -I- Detected CC0: PN 0x00 VER 0x14 -I- Not detected CC1: PN 0x00 VER 0x00 -I- Not detected CC2: PN 0x00 VER 0x00 -I- Not detected CC3: PN 0x00 VER 0x00 -I- Not detected ethernet -I- init USB -I- init Complete