Eigenbau MapleCUL / MapleCUN

Begonnen von locutus, 10 Dezember 2017, 21:41:35

Vorheriges Thema - Nächstes Thema

locutus

NEUE VERSION! MapleCUx Ver. 1.1

Hallo zusammen,
ich möchte euch meine Version des MapleCUL/CUN vorstellen.

Vorteile gegenüber miniCUL/nanoCUL:
- bis zu 4 CC1101 Transceiver an einem STM32 Mikrocontroller.
- vereint alle derzeit verfügbaren a-culfw Funkprotokolle in einem Chip.
- erweiterbar zum netzwerkfähigen MapleCUN. W5500 Netzwerkmodul erforderlich.
- zwei zusätzliche serielle Schnittstellen.
- SIGNALDuino fähig ab Firmware Ver. 4.x.x

Belegung der Anschlüsse:
- CN1 Programmierschnittstelle für USB zu TTL-Wandler mit 3,3V Logik. 4-pol. RM 2,54 mm.
- CN2 serielle Schnittstelle für ESP8266-01S (S-Series). 3,3V Logik. 2x4-pol. RM 2,54 mm.
- CN3 Steckplatz für HM-MOD-UART. Erste serielle Schnittstelle UART0 mit 3,3V Logik. 6-pol. RM 2 mm.
- CN4 zweite serielle Schnittstelle UART1 mit 3,3V Logik. 4-pol. RM 2,54 mm.
- JP1 & JP2 Lötaugen/Steckplatz für USR-ES1 oder baugleiches W5500 Netzwerkmodul.

LED Funktionen:
- LED1 schnelles Blinken (4 oder 10Hz) Bootloader Modus, langsames Blinken (1Hz) CUL Modus.
- LED2 (optional) esp-link "conn" LED. WLAN Indikator. Bestückung nur bei alten ESP-01 Modulen erforderlich.


MapleCUL in FHEM:
define MapleCUL CUL /dev/ttyACM0@38400 1234
MapleCUL WLAN (ab a-culfw Version 1.26.02):
define MapleCUL CUL 192.168.4.2:23 1234
MapleCUN in FHEM:
define MapleCUN1 CUL 192.168.4.2:2323 1234
Zusätzliche Transceiver werden als STACKABLE_CC angelegt:
define MapleCUN2 STACKABLE_CC MapleCUN1
define MapleCUN3 STACKABLE_CC MapleCUN2
define MapleCUN4 STACKABLE_CC MapleCUN3


Über USB werden zwei weitere Schnittstellen angelegt.
MapleCUL über USB einrichten:
screen /dev/ttyACM0 38400
Baudrate UART0 einstellen:
pb0@115200
Baudrate UART1 einstellen:
pb1@9600
Baudrate im EEPROM speichern:
ps
Baudrate anzeigen:
pi

Ein am UART0 angeschlossener HM-MOD-UART wird mit folgender Definition in FHEM eingebunden werden:
define myHMUART HMUARTLGW /dev/ttyACM1



MapleCUN über Netzwerk einrichten:
telnet [IP-Adresse] 2323
Folgende Befehle sind verfügbar:
DHCP abschalten:
Wid00
Kontrolle ob DHCP abgeschaltet ist:
Rid
IP-Adresse setzen:
Wia192.168.4.2
IP Adresse auslesen:
Ria
Gateway setzen:
Wig192.168.4.1
Gatway auslesen:
Rig
Netmask definieren:
Win255.255.255.0
Netmask auslesen:
Rin
Zeitzonen offset setzen:
Wio01
Zeitzonen Offset lesen:
Rio
NTP-Server auslesen:
RiN


Der Netzwerkzugriff auf zusätzliche serielle Schnittstellen erfolgt über die Ports 2324 und 2325.
Ein am UART0 angeschlossener HM-MOD-UART wird mit folgender Definition in FHEM eingebunden werden:
define myHMUART HMUARTLGW uart://[IP-Adresse]:2324


Bootloader flashen:
- TX/RX/3V3/GND am MapleCUL mit einem USB zu TTL Adapter verbinden.
- USB zu TTL Adapter mit dem PC verbinden.
- Taste BOOT0 am MapleCUL drücken und gerdückt halten.
- Taste RESET am MapleCUL drücken.
- Tasten loslassen.
- STM32 Flash loader demonstrator starten.
- COM Port des USB zu TTL Wandlers auswählen, 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 maple_mini_boot20.bin öffnen.
- Erase necessary pages auswählen.
- Auf Next drücken.
- Warten bis Flashvorgang abgeschlossen ist.
- USB zu TTL Adapter vom MapleCUL entfernen.

Alternativ stm32flash:
stm32flash -w maple_mini_boot20.bin -v /dev/ttyUSBx


Firmware bauen:
apt-get install git make gcc-arm-none-eabi dfu-util
git clone https://github.com/heliflieger/a-culfw.git
cd a-culfw/culfw/Devices/MapleCUN
make clean
make



a-culfw Firmware flashen:
- USB Kabel am MapleCUL anschließen.
- Taste RESET am MapleCUL drücken.
- Taste RESET loslassen.
- Während die LED1 schnell blinkt (ca. 10Hz) Taste BOOT0 am MapleCUL drücken und gedrückt halten.
- Taste BOOT0 (nach ca. 2-3 Sek.) loslassen.
- Während die LED1 blinkt (ca. 4Hz) dfu-util starten.
dfu-util --verbose --device 1eaf:0003 --cfg 1 --alt 2 --download MapleCUNx4_W5500_BL.bin -R



Fertiggeräte sind im Marktplatz verfügbar: https://forum.fhem.de/index.php/topic,65998.0.html

Die Verwendung der Daten für kommerzielle Zwecke, Herstellung oder gewerblichen Vertrieb ist untersagt.

Vielen Dank für die Bereitstellung der Informationen an Telekatz.

locutus

Hallo zusammen,
weitere Entwicklungen auf Basis von MapleCUL/CUN ...

MapleCUL Add-On Board für NanoPi NEO
- Hardware Version 1.0 (nicht Bootloader fähig)



MapleCUL USB-Stick mit zwei CC1101 Transceivern
- Hardware Version 1.0  (nicht Bootloader fähig)
- Hardware Version 1.1 (Bootloader fähig)
- Hardware Version 1.2 (Bootloader fähig). CUL-LED zwischen die Antennen ANT1 und ANT2 verlagert.
- Hardware Version 1.3 (Bootloader fähig). Hubtaster geändert.

MapleCUL USB-Stick in FHEM:
define mapleCUL1 CUL /dev/ttyACM0@38400 1234
Der zweite Transceiver wird als STACABLE_CC angelegt:
define mapleCUL2 STACKABLE_CC mapleCUL1

Seit die Hardware Ver. 1.1 ist der USB-Stick mit der USB Disconnect Schaltung (Transistor T1 und Widerstand R9) ausgestattet. Damit ist nun der MapleCUL USB-Stick Bootloader fähig. Ein USB-zu-TTL Adapter zum Flashen der a-culfw Firmware entfällt.
Vorgehensweise beim Flashen der Firmware über USB:
- MapleCUL USB-Stick am Hostrechner anschließen.
- Taste RST am MapleCUL drücken.
- Taste RST loslassen.
- Während die Leuchtdiode D1 schnell blinkt (ca. 10Hz) Taste BOOT am MapleCUL drücken und gedrückt halten.
- Taste BOOT (nach ca. 2-3 Sek.) loslassen.
- Während die Leuchtdiode D1 blinkt (ca. 4Hz) dfu-util starten.
Code: [Auswählen]
dfu-util --verbose --device 1eaf:0003 --cfg 1 --alt 2 --download MapleCUNx4_W5500_BL.bin



WLAN Add-on Board für MapleCUL USB-Stick
Seit der a-culfw Ver. 1.26.02 ist der MapleCUL USB-Stick WLAN fähig. Der USB-Stick stellt an dem 4-pol. Lötanschluss eine serielle Schnittstelle mit 115200 Baud zur Verfügung. Hier kann ein ESP8285MOD ESP-M3 Modul mit der esp-link Firmware angeschlossen werden.
Mehr dazu siehe Forumsbeitrag: https://forum.fhem.de/index.php/topic,80872.msg786317.html#msg786317



Preis und Verfügbarkeit
MapleCUL USB-Stick ist im Marktplatz verfügbar.


PeMue

Hallo locutus,

ich habe basierend auf Deinen Gerberdaten Platinen bestellt. Von allpcb kam die Feststellung/Frage, dass bei den Antennen ANT1 - 4 für bei dem Loch für die Drahtantenne auf der Rückseite (bottom) die Freisparung für den Lötstopplack fehlt (siehe auch angehängtes Bild). Ggf. könntest Du Deine Bibliothek für die Antenne in diesem Punkt anpassen ...

Danke + 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

Das ist absichtlich, um zu verhindern, dass Zinntropfen auf der Unterseite der Platine entstehen.
Hier die Version ohne Lötstopplack.

MillyHarry

Hallo Locutus,

kannst du ein Gehause für deinen MapleCUL enpfehlen ?

Gruss
MillyHarry

Lucky2k12

#5
Ich habe mein Exemplar erhalten und mit einem HM-MOD-UART erweitert.

Ist es möglich, das HM-MOD-UART auf dem MapleCUL upzudaten?
List:

Internals:
   CNT        1
   Clients    :CUL_HM:
   DEF        /dev/ttyACM2
   DevState   1
   DevType    UART
   DeviceName /dev/ttyACM2@115200
   FD         34
   LastOpen   1515438797.21861
   NAME       myHMUART
   NR         389
   PARTIAL   
   STATE      opened
   TYPE       HMUARTLGW
   XmitOpen   0
   model      HM-MOD-UART
   owner_CCU  VCCU
   Helper:
     AckPending:
       1:
         cmd        00
         dst        0
         frame      FD00030001009E03
         resend     1
         time       1515438798.36752
     LastSendLen:
       3
     Log:
       IDs:
   MatchList:
     1:CUL_HM   ^A......................
   READINGS:
     2018-01-07 21:08:59   D-HMIdOriginal  5xxxxx
     2018-01-07 21:08:59   D-firmware      1.2.1 (outdated)
     2018-01-07 21:09:00   D-serialNr      xxxxxx
     2018-01-08 20:04:30   D-type          HM-MOD-UART
     2018-01-08 20:13:18   cond            init
     2018-01-07 21:39:54   load            0
     2018-01-08 20:04:30   loadLvl         suspended
     2018-01-08 20:13:17   state           opened
Attributes:
   hmId       5xxxxxx
   icon       hm_lan
   room       CUL

Danke!

EDIT: Das UPDATE aus fhem mit "set myHMUART updateCoPro /opt/fhem/FHEM/firmware/coprocessor_update.eq3" geht bei mir nicht. Die Datei liegt natürlich im Pfad. Das Device wechselt zwischen disconnected und init.

Edit2: meine ls /dev/serial/by-id

lrwxrwxrwx 1 root root 13 Jan  8 21:48 usb-STM32_MapleCUL_52d9a0ed-if04 -> ../../ttyACM2
lrwxrwxrwx 1 root root 13 Jan  8 21:48 usb-STM32_MapleCUL_52d9a0ed-if02 -> ../../ttyACM1
lrwxrwxrwx 1 root root 13 Jan  8 21:48 usb-STM32_MapleCUL_52d9a0ed-if00 -> ../../ttyACM0
lrwxrwxrwx 1 root root 13 Jan  8 21:48 usb-busware.de_CUL868-if00 -> ../../ttyACM3                                   <-- Busware CUL 868
lrwxrwxrwx 1 root root 13 Jan  8 21:48 usb-FTDI_FT232R_USB_UART_AL014JJZ-if00-port0 -> ../../ttyUSB1    <-- Jeelink
lrwxrwxrwx 1 root root 13 Jan  8 21:48 usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0 -> ../../ttyUSB0   <-- Nanocul 434


Der Maple ist mit 4 Radios bestückt + HM-MOD-UART

ls /dev tty*

crw-rw---- 1 root dialout 204, 64 Jan  8 21:48 /dev/ttyAMA0
crw--w---- 1 root tty       4,  1 Jan  8 21:48 /dev/tty1
crw--w---- 1 root tty       4, 64 Jan  8 21:48 /dev/ttyS0
crw-rw---- 1 root dialout 166,  3 Jan  8 21:48 /dev/ttyACM3
crw-rw---- 1 root dialout 188,  0 Jan  8 21:48 /dev/ttyUSB0
crw-rw---- 1 root dialout 166,  0 Jan  8 21:49 /dev/ttyACM0
crw-rw---- 1 root dialout 166,  2 Jan  8 21:49 /dev/ttyACM2
crw-rw---- 1 root dialout 166,  1 Jan  8 21:49 /dev/ttyACM1
crw-rw---- 1 root dialout 188,  1 Jan  8 21:54 /dev/ttyUSB1


EDIT3: Device gelöscht und neu angelegt mit ttyACM1, jetzt geht es, warum auch immer. Danke!
HP T610, HM, Jeelink, LGW, mapleCUL868+434

blueicechip

Hallo locutus,

ich hab deine Version des MapleCUL´s erfolgreich nachgebaut und letzten Samstag eingesetzt. Sonntag abend viel mir auf - alles Dunkel.

Nach dem ich den kurz abgezogen hatte, lief er wieder für einen Moment und dann wurden die LEDs wieder dunkel.

Jetzt hab ich heute gemessen das die Spannung hinter der Sicherung heftig zusammenbricht - welche SMD Sicherungen setzt du ein ?

Danke.

Maik
FHEM 5.8 auf Rpi3 / MapleCUNx4_W5500_BL von locutus / MAX! Thermostate / ESPeasy

locutus

500 mA nach USB-Standard. Wenn die PCB komplett bestückt ist, wird es kritisch.
Der Hersteller des LAN-Moduls macht sehr schwammige Angaben zum Stromverbrauch:
Zitatcurrent should be more than 200mA
Das ESP8266-Modul kann bis zu 200 mA und die HM-MOD-UART bis zu 50 mA verschlingen.
Der MapleCUL bestückt mit 4 Transceivern benötigt ca. 40-50 mA.

blueicechip

#8
Jo,

500 ma hatte ich auch drauf, aber die muss beim testen wohl nen knax bekommen haben, im kalten Zustand hatte die schon 10 Ohm.

Was mir leider beim Layout negativ aufgefallen ist: wenn man einen größeren Festspannungsregler ( ohne Pin 2 )  montier, fehlt die 3,3V Verbindung zur Kühlfahne des Reglers. Und die 3,3V Leiterbahnen im Layout sind leider sehr sehr dünn ausgelegt.

Was mir sehr gut gefällt : das ein vernünftige USB-B Anschlussbuchse verwendet wird und nicht sone sch** Mini oder Micro USB Buchse.

Was leider nicht auf Kontakten ausgeführt wurden, sind die I2C Kontakte.

Ansonsten ein sehr schönes kleines und kompaktes Design.

Danke.
FHEM 5.8 auf Rpi3 / MapleCUNx4_W5500_BL von locutus / MAX! Thermostate / ESPeasy

Omega-5

Zitat von: blueicechip am 30 Januar 2018, 23:37:24
Was mir leider beim Layout negativ aufgefallen ist: wenn man einen größeren Festspannungsregler ( ohne Pin 2 )  montier, fehlt die 3,3V Verbindung zur Kühlfahne des Reglers. Und die 3,3V Leiterbahnen im Layout sind leider sehr sehr dünn ausgelegt.

Achtung! der AMS1117 hat eine abweichende Anschlussbelegung, auf der Kühlfahne und Pin1 liegen GND.
Zu Strombelastung von Leiterbahnen sagt die IPC-2221 35u CU 0,25mm 10MIL 0,5A Temperaturerhöhung 10°K.  ;)
Ob man es immer und überall so dünn macht bleibt einem selbst überlassen.

Gruß Friedrich
RaspberryPi2, nanoCUL, 3x DS18B20, FS20: 4x Funk-Schalter ST-4, LaCrosseGW,
HomeMatic: HMLAN, HM-WDS10-TH-O, HM_MYS_RelaisBoard,
I2C: HYT221 über modifiziertes Modul I2_I2C_SHT21.pm (Q&D),

blueicechip

Ich hatte den AMS1117 durch einen AS1117 ersetzt. Der Platz schien dafür vorgesehen zu sein. Und nach dem Einschalten ging garnichts mehr. Auf die blöde hochohmige Sicherung bin ich erst viel später gekommen ( nach dem ich das Netzwerkmodul zwei mal wieder ausgelötet hatte).

Zitat von: Omega-5 am 31 Januar 2018, 17:05:42
Ob man es immer und überall so dünn macht bleibt einem selbst überlassen.

Das stimmt. Sollte auch nur ein Vorschlag fürs nächste Layout sein. Immer getreu nach dem Motto : Viel hilft viel.  :-)
FHEM 5.8 auf Rpi3 / MapleCUNx4_W5500_BL von locutus / MAX! Thermostate / ESPeasy

locutus

#11
Mit 10 Ohm ist die PTC-Sicherung hinüber. Im kalten Zustand darf sie einen kaum messbaren Widerstand aufweisen.

Die Leiterbahnen sind ausreichend dimensioniert:
- 5V spannungsführende Leiterbahnen: 10 mil
- 3,3V spannungsführende Leiterbahnen: 8 mil
- Datenleitungen: 6 mil

Das Kühlpad sollte generell Potenzialfrei bleiben. Vergleichbare SOT223 Spannungsregler weisen abweichende Belegung an der Kühlfahne auf.

Als die I2C (1-Wire) Erweiterung bekannt gegeben wurde, befand sich meine Version der MapleCUL/CUN Platine bereits in Fernost in der Produktion.

fpg

Moin,

Wie kann ich an den esp8266 erreichen ? Aktuell hängt der cul an ein raspi via USB. Ist er rein als Debugger zu nutzen oder sind auch andere Anwendungen denkbar?

Der fpg

PeMue

#13
Zitat von: fpg am 03 Februar 2018, 13:36:11
Ist er rein als Debugger zu nutzen oder sind auch andere Anwendungen denkbar?
Die serielle Schnittstelle an CN2 ist derzeit nur die Debug Schnittstelle, d.h. ESP ist als transparente Bridge geschaltet.

Gruß PeMue

Edit:
Schnittstellennummer bzw. Belegung oben korrigiert.
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

fpg

Moin,

...der esp würde ja eine nette fünfte funkschnittstelle erzeugen  :)

Der fpg