LaCrosseGateway mit miniCUL und 2.4" Nextion Display

Begonnen von locutus, 17 Juli 2016, 20:50:42

Vorheriges Thema - Nächstes Thema

locutus

NEUE VERSION! LaCrosseGateway für Nextion Display oder als Shield für WEMOS D1 mini

Hallo zusammen,
ich habe das LaCrosseGateway Carrier Board umgestaltet und erweitert. Auf der Platine ist noch ausreichend Platz vorhanden, um den miniCUL in diskreter Bauform unterzubringen.
Entstanden ist das LaCrosseGateway mit miniCUL.

Das Herzstück bildet das NodeMCU DEVKIT 1.0.
Zum LaCrosseGateway selbst gibt es inzwischen ein ausführliches Wiki.

Zu meiner Platine ...
Die Hardware bietet an der 4-pol. Stiftleiste (I2C-Bus) folgende Erweiterungsmöglichkeiten:
- SSD1306 OLED-Display
- BMP180 oder BME280 Sensor
- MCP23008 I/O-Expander

Weitere Upgrades:
- Piezo Buzzer
- zweites RFM69CW Modul auf der Unterseite der Platine

Der miniCUL besteht in wesentlichen aus einem AVR-Mikrocontroller und einem Funkmodul:
- ATMEGA328P (8 MHz / 3,3 V)
- CC1101 Modul
- LED Indicator
- Arduino Pro or Pro Mini Bootloader
- a-culfw

Abmessungen (BxH): 50 x 50 mm

Der miniCUL kommuniziert ausschließlich über WLAN. Das LaCrosseGateway überträgt transparent die Daten der seriellen Schnittstelle an FHEM und umgekehrt. Port und Baudrate werden auf der "Setup"-Page des LaCrosseGateways festgelegt, z. B. Port 85 und 38400 Baud.

miniCUL in FHEM definieren:
define <name> CUL <IP-Adresse>:<Port> <FHTID>

Bsp.:
define CUL868 CUL 192.168.78.20:85 0000

miniCUL 868 MHz flashen:
curl --http1.0 -H "Content_Type:multipart/form-data" -F "file=@miniCUL_868MHZ.hex; filename=addon.hex" http://192.168.78.20/ota/addon.hex
Der Ablageort der hex Datei und die IP-Adresse muss angepasst werden.

Hinweis zum WLAN-Betrieb
Die Timingschwankungen des WLAN können in FHEM nicht ausgeglichen werden. Dies kann unter Umständen zu CUL STATE "disconnected" führen. Siehe dazu Forumsbeitrag.
Entsprechende Gegenmaßnahmen beschreibt auch das Wiki.

Hinweis zu a-culfw ab V. 1.21.00
Björn hat einige Änderungen an der a-culfw für miniCUL vorgenommen:
- MARK433 in board.h hinzugefügt
- make erzeugt separate hex Dateien für 433 und 868 MHz
- erweiterte Optionen im flash.sh Skript.
Für das LGW mit miniCUL bitte die oben beschriebene Methode zum flashen der 433- oder 868-Firmware verwenden.

Ergänzende Informationen zum Umgang mit a-culfw GitHub Repository
Benötigte Pakete installieren, Git Repository klonen, Firmware bauen:
apt-get install git make avrdude avr-libc gcc-avr binutils-avr dfu-programmer libftdi1
git clone https://github.com/heliflieger/a-culfw.git
cd a-culfw/culfw/Devices/miniCUL
make clean
make


Schaltplan, Platinenlayout und Stückliste
PCB V. 1.0 (grüne Platine)
- erste Veröffentlichung

PCB V. 1.1 (schwarze Platine)
- hinzugefügt: 6-pol. ISP-Anschluss am ATMEGA
- hinzugefügt: 4-pol. Anschluss vom NodeMCU DEVKIT
- ersetzt: 8 MHz Quarz durch 8 MHz Resonator
- ersetzt: 3 mm LED durch SMD LED

PCB V. 1.2 (gelbe Platine)
-  hinzugefügt: RXD und TXD Anschluss am ATMEGA

PCB V. 1.3 (grüne Platine)
- ersetzt: SMD LED durch 3 mm LED
- Schönheitskorrekturen im Layout

Bauanleitung
Siehe Antwort #21

Verfügbarkeit und Preise
Ich biete die Geräte im Marktplatz zum Kauf an.

PeMue

Hallo locutus,

wäre es nicht auch möglich, beim Atmega328P den internen 8 MHz Quarz zu verwenden, um Bauteile zu sparen (fuses müssten dann halt entsprechend angepasst werden). Oder würde da die Toleranz der Frequenz für das Dekodieren der CC1101 Messages nicht reichen?

Gruß 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

locutus

Der interne Oszillator hat Einfluss auf den UART. Laut Tabelle beträgt die Fehlerrate bei 38400 Baud 0,0%. Es sollte also funktionieren.

micky0867

Hallo,

ich bin jetzt auch stolzer Besitzer eines LGW (Danke nochmal an locutus).

Allerdings habe ich das Problem, dass die Temperatur ca. 3-4°C höher ist, als die tatsächliche Temperatur.
Ich habe auf diversen Seiten Hinweise gefunden, dass das öfter vorkommt.
Hat das noch jemand?
Liegt das am BMP280 selbst?
Oder ist das ein Problem in der Library?

Micky




Lucky2k12

Zitat von: micky0867 am 01 August 2016, 08:49:16
Allerdings habe ich das Problem, dass die Temperatur ca. 3-4°C höher ist, als die tatsächliche Temperatur.

Das ist bei mir auch so. Allerdings zeigt der BME280 nur ca. 2.2°C mehr an als mein abgeglichener LaCrosse-Sensor daneben.
Ich habs erstmal im FHEM kompensiert. Blöd ist es trotzdem, der Sensor ist ja viel genauer spezifiziert.
Er steckt bei mir mit einem Kabel dran, misst also nicht die Temperatur der LCG Platine...
HP T610, HM, Jeelink, LGW, mapleCUL868+434

Lucky2k12

Hallo locutus,

hast du einen Tipp für ein passendes Gehäuse?
Danke!
HP T610, HM, Jeelink, LGW, mapleCUL868+434

micky0867

http://www.voelkner.de/products/38968/Euro-Gehaeuse-ABS-85x56x39mm-Schwarz.html
Allerdings passt dann der USB Anschluss nicht mehr.  Ich habe 2 Drähte an VIN/GND gelötet, damit geht's.
Oder aber ein Loch reinsägen...

Micky

locutus

Kurzes Update zu PCB V. 1.1

- hinzugefügt: 6-pol. ISP-Anschluss. Programmierschnittstelle für den ATMEGA328P
- hinzugefügt: 4-pol. Anschluss. Die Pins 3V3, D3, A0 und GND vom NodeMCU DEVKIT sind direkt auf dem Carrier Board verfügbar. Anschlussmöglichkeit für DHT22 mit Datenleitung an D3 (GPIO0).
- ersetzt: 8 MHz Quarz durch 8 MHz Resonator. Vorteil der Resonatoren gegenüber Quarzen: integrierte Lastkapazitäten, dadurch Platz- und Zeitersparnis.

Bastler

Hallo ,

starkes Layout!!!

Könnte man an dem Anschluß für den DHT22 nicht auch einen Luftqualitätssensor (z.B. MQ135) betreiben?
Eventuell Pegelanpassung 5V 3,3V nötig.

Wo kriegt man die Platine her?
Hätte gerne zwei Stück davon.

Gruß
Otto
fhem5.8@VNWare ESXi 6.5 Intel_NUC6i5

HCS

Zitat von: Bastler am 29 August 2016, 10:07:38
Könnte man an dem Anschluß für den DHT22 nicht auch einen Luftqualitätssensor (z.B. MQ135) betreiben?
Das LaCrosseGateway unterstützt den nicht.

Bastler

Hallo HCS,

das ist mir schon klar. Mein Gedanke war, dass es eigentlich egal sein müsste was an dem Anschluss hängt solange es einen analogen Wert an dem Anschluss liefert. Dass das LaCrosseGateway nicht erkennt was letzendlich dranhängt ist doch meines Erachtens nicht relevant. Oder habe ich da einen Denkfehler?

Gruß
Otto
fhem5.8@VNWare ESXi 6.5 Intel_NUC6i5

HCS

Zitat von: Bastler am 29 August 2016, 10:42:42
das ist mir schon klar. Mein Gedanke war, dass es eigentlich egal sein müsste was an dem Anschluss hängt solange es einen analogen Wert an dem Anschluss liefert.
Der DHT22 liefert keinen analogen Wert. GPIO0 ist ein Digitalport und die Kommunikation mit dem DHT22 läuft über ein Protokoll ab.
Das LGW versucht zuerst, mit einem RFM69 an GPIO0 "zu sprechen", der da auch alternativ dran sein kann und falls keiner antwortet, einen DHT22 anzusprechen.
Etwas analoges geht da definitiv nicht. Und auch nichts anderes als ein RFM69 oder ein DHT22

Bastler

Hallo HCS,

hast Recht. Habe mir das gerade im Wiki noch mal angesehen in den Schaltplänen von PeMue. Dort ist der Anschluss der auf dem Bild von der Platine hier mit A0 beschriftet ist nicht belegt.

Schade.

Danke für deine Info.

Gruß
Otto
fhem5.8@VNWare ESXi 6.5 Intel_NUC6i5

locutus

Zitat von: Bastler am 29 August 2016, 10:07:38
Hallo ,

starkes Layout!!!

Wo kriegt man die Platine her?
Hätte gerne zwei Stück davon.

Gruß
Otto
Platinen sind bestellt. Die Produktion dauert ca. 1 Woche, die Lieferung bis zu 6 Wochen.

Bastler

Hallo locutus,

gut Ding will Weile haben.

Wie läuft das mit der Zahlung ab?

Gruß
Otto
fhem5.8@VNWare ESXi 6.5 Intel_NUC6i5