NanoCul keine funktion; Flashen nicht möglich

Begonnen von hugo, 30 November 2023, 18:25:36

Vorheriges Thema - Nächstes Thema

hugo

Hallo zusammen, bräuchte wieder mal eure Hilfe oder Ideen.
Mein selbst gebauter NanoCul funktioniert nicht mehr.
Welche Möglichkeiten gibt es zu testen an was das liegen könnte. Die Parameter der Steckdose passen.

Auszug aus dem Logfile:
2023.11.30 18:21:30 3: Setting nanoCUL serial parameters to 38400,8,N,1
2023.11.30 18:21:31 5: DevIo_SimpleWrite nanoCUL: V
2023.11.30 18:21:31 5: CUL_ReadAnswer nanoCUL: V 1.67 nanoCUL433

2023.11.30 18:21:31 5: DevIo_SimpleWrite nanoCUL: ?
2023.11.30 18:21:31 5: CUL_ReadAnswer nanoCUL: ? (? is unknown) Use one of A B
2023.11.30 18:21:31 5: CUL_ReadAnswer nanoCUL: C E e F f G h i K k l M m R T t
2023.11.30 18:21:31 5: CUL_ReadAnswer nanoCUL: U V W X x Y Z z

2023.11.30 18:21:31 3: nanoCUL: Possible commands: ABCEeFfGhiKklMmRTtUVWXxYZz
2023.11.30 18:21:31 5: DevIo_SimpleWrite nanoCUL: X21
2023.11.30 18:21:31 5: DevIo_SimpleWrite nanoCUL: T01
2023.11.30 18:21:31 5: CUL_ReadAnswer nanoCUL: 1234

2023.11.30 18:21:31 5: GOT CUL fhtid: 1234
2023.11.30 18:21:31 1: /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0 reappeared (nanoCUL)

2023.11.30 18:23:23 5: DevIo_SimpleWrite nanoCUL: isFF0FF0FFFF0F
2023.11.30 18:23:24 5: CUL_ReadAnswer nanoCUL: isFF0FF0FFFF0F

2023.11.30 18:23:24 5: DevIo_SimpleWrite nanoCUL: isr6
2023.11.30 18:23:24 5: CUL_ReadAnswer nanoCUL: 6

2023.11.30 18:23:24 3: IT set ITrepetition back: isr6 for nanoCUL
2023.11.30 18:23:30 3: nanoCUL IT_set: ST3.A off
2023.11.30 18:23:30 5: DevIo_SimpleWrite nanoCUL: isr15
2023.11.30 18:23:30 5: CUL_ReadAnswer nanoCUL: 15

2023.11.30 18:23:30 5: DevIo_SimpleWrite nanoCUL: isFF0FF0FFFFF0
2023.11.30 18:23:31 5: CUL_ReadAnswer nanoCUL: isFF0FF0FFFFF0

2023.11.30 18:23:31 5: DevIo_SimpleWrite nanoCUL: isr6
2023.11.30 18:23:31 5: CUL_ReadAnswer nanoCUL: 6

2023.11.30 18:23:31 3: IT set ITrepetition back: isr6 for nanoCUL


define nanoCUL CUL /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@38400 1234
attr nanoCUL group CUL
attr nanoCUL icon cul_cul@blue
attr nanoCUL rfmode SlowRF
attr nanoCUL room Zentrale
attr nanoCUL verbose 5
#   CMDS       ABCEeFfGhiKklMmRTtUVWXxYZz
#   Clients    :FS20:FHT.*:KS300:USF1000:BS:HMS:FS20V: :CUL_EM:CUL_WS:CUL_FHTTK:CUL_HOERMANN: :ESA2000:CUL_IR:CUL_TX:Revolt:IT:UNIRoll:SOMFY: :STACKABLE_CC:TSSTACKED:STACKABLE:CUL_RFR::CUL_TCM97001:CUL_REDIRECT:
#   DEF        /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@38400 1234
#   DeviceName /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@38400
#   FD         19
#   FHTID      1234
#   FUUID      5c8231e0-f33f-07c9-a38f-c98f3c4b48360c52
#   NAME       nanoCUL
#   NR         88
#   PARTIAL   
#   STATE      Initialized
#   TYPE       CUL
#   VERSION    V 1.67 nanoCUL433
#   devioNoSTATE 1
#   eventCount 4
#   initString X21
#   MatchList:
#     0:FS20V    ^81..(04|0c)..0101a001......00[89a-f]...
#     1:USF1000  ^81..(04|0c)..0101a001a5ceaa00....
#     2:BS       ^81..(04|0c)..0101a001a5cf
#     3:FS20     ^81..(04|0c)..0101a001
#     4:FHT      ^81..(04|09|0d)..(0909a001|83098301|c409c401)..
#     5:KS300    ^810d04..4027a001
#     6:CUL_WS   ^K.....
#     7:CUL_EM   ^E0.................$
#     8:HMS      ^810e04......a001
#     9:CUL_FHTTK ^T[A-F0-9]{8}
#     A:CUL_RFR  ^[0-9A-F]{4}U.
#     B:CUL_HOERMANN ^R..........
#     C:ESA2000  ^S................................$
#     D:CUL_IR   ^I............
#     E:CUL_TX   ^TX[A-F0-9]{10}
#     F:Revolt   ^r......................$
#     G:IT       ^i......
#     H:STACKABLE_CC ^\*
#     I:UNIRoll  ^[0-9A-F]{5}(B|D|E)
#     J:SOMFY    ^Y[r|t|s]:?[A-F0-9]+
#     K:CUL_TCM97001 ^s[A-F0-9]+
#     L:CUL_REDIRECT ^o+
#     M:TSSTACKED ^\*
#     N:STACKABLE ^\*
#   READINGS:
#     2021-06-20 16:07:09   ccconf          freq:433.921MHz bWidth:325KHz rAmpl:42dB sens:4dB
#     2023-11-30 17:27:04   cmds             A B C E e F f G h i K k l M m R T t U V W X x Y Z z
#     2023-11-30 18:15:26   raw             6
#     2023-11-30 17:27:04   state           Initialized
#     2023-11-30 13:17:48   uptime          0 00:01:27
#     2023-11-30 13:17:42   version         V 1.67 nanoCUL433
#
setstate nanoCUL 2021-06-20 16:07:09 ccconf freq:433.921MHz bWidth:325KHz rAmpl:42dB sens:4dB
setstate nanoCUL 2023-11-30 17:27:04 cmds  A B C E e F f G h i K k l M m R T t U V W X x Y Z z
setstate nanoCUL 2023-11-30 18:15:26 raw 6
setstate nanoCUL 2023-11-30 17:27:04 state Initialized
setstate nanoCUL 2023-11-30 13:17:48 uptime 0 00:01:27
setstate nanoCUL 2023-11-30 13:17:42 version V 1.67 nanoCUL433


Danke für die Tips

Gruß Josef
Raspi 3 mit CUL HM-MOD-UART; nanoCUL
Homematic: HM-SEC-SCo 5x;HM-LC-SW1-BA-PCB 3x;HM-Dis-EP-WM55; HM-LC-SW4-PCB; ARLO;
Somfy RTS Rollo 14x; Alexa; GardenaSmartDevice; Stromzähler(GPIO); shelly1; shelly2.5;Wasserzähler(GPIO);Brennerstuhlsteckdosen;

Otto123

Was hat dazu geführt? Hast Du "update" gemacht, System umgezogen ...?
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

hugo

#2
Habe den nanocul von Steckverbinder auf gelötet geändert. Anschlüsse passen.

Habe auch einen Update durchgeführt. System läuft in allen funktionen außer dieser nanoCul.

Darum die Frage kann ich irgendwie sehen on der Sender wirklich was sendet oder neu flashen? Kann ich den nanoCul auch unter Windows flaschen?
Raspi 3 mit CUL HM-MOD-UART; nanoCUL
Homematic: HM-SEC-SCo 5x;HM-LC-SW1-BA-PCB 3x;HM-Dis-EP-WM55; HM-LC-SW4-PCB; ARLO;
Somfy RTS Rollo 14x; Alexa; GardenaSmartDevice; Stromzähler(GPIO); shelly1; shelly2.5;Wasserzähler(GPIO);Brennerstuhlsteckdosen;

Otto123

Ok vielleicht Hintergrund meiner Frage, auf Systemebene:
ls -lha /dev/serial/by-id/
Es gab in letzter Zeit Fälle, wo nach einem Systemumzug / update - die Verbindung zu "/dev/serial" nicht mehr da war.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

RalfRog

Aus dem Log würde ich interpretieren, dass der CUL auf Anfragen antwortet und der Microcontroller arbeitet.
Also eher Probleme im Funkteil?

Stimmen die Lötverbindungen - immerhin ein "wesentlicher Eingriff".

Als Idee Gruß Ralf
FHEM auf Proxmox VM Bookworm (Futro S740) - nanoCUL, HM-MOD-RPI-PCB und MAX!Cube über LAN
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder sowie Shelly 3EM, 1PM, PlugS und IT Schaltsteckdosen

hugo

Also die lotverbindungen habe ich 3x überprüft.
Darum die Frage kann das funkmodul irgendwie überprüft werden.

Der LS Befehl liefert den Port zurück.
Raspi 3 mit CUL HM-MOD-UART; nanoCUL
Homematic: HM-SEC-SCo 5x;HM-LC-SW1-BA-PCB 3x;HM-Dis-EP-WM55; HM-LC-SW4-PCB; ARLO;
Somfy RTS Rollo 14x; Alexa; GardenaSmartDevice; Stromzähler(GPIO); shelly1; shelly2.5;Wasserzähler(GPIO);Brennerstuhlsteckdosen;

RalfRog

#6
Als nächster Schritt würde mir einfallen, die Kommunikation des Controllers mit dem CC1100 zu testen.
Referenz http://culfw.de/commandref.html

In der Weboberfläche in den Devicedetails des CUL in der GET-Zeile Register auslesen:
get <name> raw C35  (Antwort bei mir: raw => C35 = 0D / 13 im Popup, auch slowRF)
oder
get <name> raw C99  (Antwort bei mir: raw => 0D2E2D07D3913D04 im Popup, auch slowRF)

Wenn Du zu den Steckdosen ne Fernbedienung hast, müssten die ON/OFF Kommandos der FB vom CUL gesehen werden. Wäre dann schon mal die Empfangsseite.

Gruß Ralf

Edit:
Machst du eine Pegelanpassungen 5V -> 3,3V zwischen Arduino und CC1100?


FHEM auf Proxmox VM Bookworm (Futro S740) - nanoCUL, HM-MOD-RPI-PCB und MAX!Cube über LAN
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder sowie Shelly 3EM, 1PM, PlugS und IT Schaltsteckdosen

hugo

nanoCUL raw => C35 = 00 /  0
nanoCUL raw => 0000000000000000

Keine Rückgabe bei der Fernbedienung on/off

NanoCul bleibt immer auf Initialized.

Habe den CC1100 auf 3,3V angeschlossen.

Scheint doch das Funkmodul defekt zu sein.


Raspi 3 mit CUL HM-MOD-UART; nanoCUL
Homematic: HM-SEC-SCo 5x;HM-LC-SW1-BA-PCB 3x;HM-Dis-EP-WM55; HM-LC-SW4-PCB; ARLO;
Somfy RTS Rollo 14x; Alexa; GardenaSmartDevice; Stromzähler(GPIO); shelly1; shelly2.5;Wasserzähler(GPIO);Brennerstuhlsteckdosen;

RalfRog

#8
Ja vermutlich, zumindest liest der Controller die Register vom CC1100 nicht aus (und beschreibt sie wahrscheinlich auch nicht).
Damit kommen auch keine (Funk)Daten vom CC1100 zum Controller.

Wenn die Verdrahtung stimmt scheint es defekt zu sein.

Je nach dem welche Möglichkeiten man hat, kann man versuchen die 6 Leitungen zu messen. Kann ja auch ein IO vom Controller defekt sein.
Kann da aber nichts zu sagen - also wann an welchem PIN was anliegt bzw. Datenübertragung stattfindet.

Gruß Ralf

Edit
ZitatHabe den CC1100 auf 3,3V angeschlossen
Auch die Signalleitungen MOSI, SCK, CSN?

FHEM auf Proxmox VM Bookworm (Futro S740) - nanoCUL, HM-MOD-RPI-PCB und MAX!Cube über LAN
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder sowie Shelly 3EM, 1PM, PlugS und IT Schaltsteckdosen

hugo

#9
Hallo nochmal,
jetzt habe ich versucht den nanocul nochmal neu zu flashen. Habe die Firmware r571 runtergeladen und nach Anleitung vorgegangen.
Bei make program erhalte ich am Schluss einen Fehler.
Welche Möglichkeiten habe ich dass dies doch funktioniert?

make program
Compiling C: nanoCUL.c
Compiling C: ../../clib/cc1100.c
Compiling C: ../../clib/cc1101_pllcheck.c
Compiling C: ../../clib/clock.c
Compiling C: ../../clib/delay.c
Compiling C: ../../clib/display.c
Compiling C: ../../clib/stringfunc.c
Compiling C: ../../clib/fncollection.c
Compiling C: ../../clib/ringbuffer.c
Compiling C: ../../clib/fht.c
Compiling C: ../../clib/rf_send.c
Compiling C: ../../clib/rf_receive.c
Compiling C: ../../clib/rf_asksin.c
Compiling C: ../../clib/rf_moritz.c
Compiling C: ../../clib/rf_rwe.c
Compiling C: ../../clib/somfy_rts.c
Compiling C: ../../clib/fastrf.c
Compiling C: ../../clib/rf_zwave.c
Compiling C: ../../clib/intertechno.c
Compiling C: ../../clib/kopp-fc.c
Compiling C: ../../clib/memory.c
Compiling C: ../../clib/serial.c
Compiling C: ../../clib/ttydata.c
Compiling C: ../../clib/spi.c
Compiling C: ../../clib/rf_mbus.c
Compiling C: ../../clib/mbus/manchester.c
Compiling C: ../../clib/mbus/3outof6.c
Compiling C: ../../clib/mbus/mbus_packet.c
Compiling C: ../../clib/mbus/crc.c
Linking: nanoCUL.elf
Creating load file for Flash: nanoCUL.hex
#@if test ! -d /sys/class/gpio/gpio17; then echo 17 > /sys/class/gpio/export; fi
#@if test ! -d /sys/class/gpio/gpio18; then echo 18 > /sys/class/gpio/export; fi
#echo out > /sys/class/gpio/gpio17/direction
#echo out > /sys/class/gpio/gpio18/direction
#echo 0 > /sys/class/gpio/gpio17/value
#echo 0 > /sys/class/gpio/gpio18/value
#sleep 1
#echo 1 > /sys/class/gpio/gpio17/value
#sleep 1
#echo 1 > /sys/class/gpio/gpio18/value
avrdude -D -p atmega328p -P /dev/ttyUSB0 -b 57600 -c arduino    -U flash:w:nanoCUL.hex
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x30
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x20
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x7c
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xb8
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x10
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x30
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x78
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x7e
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x7c
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x06

avrdude done.  Thank you.

make: *** [makefile:228: program] Fehler 1
Raspi 3 mit CUL HM-MOD-UART; nanoCUL
Homematic: HM-SEC-SCo 5x;HM-LC-SW1-BA-PCB 3x;HM-Dis-EP-WM55; HM-LC-SW4-PCB; ARLO;
Somfy RTS Rollo 14x; Alexa; GardenaSmartDevice; Stromzähler(GPIO); shelly1; shelly2.5;Wasserzähler(GPIO);Brennerstuhlsteckdosen;

betateilchen

Zitat von: hugo am 07 Dezember 2023, 12:57:04Bei make program erhalte ich am Schluss einen Fehler.

Naja, die Fehlermeldung bekommst Du, weil das Flashen aus dem Makefile aufgerufen wird und nicht funktioniert hat. Das Kompilieren der Firmware selbst hat aber funktioniert.

Du musst Dich auf die Suche machen, warum das Flashen nicht klappt.
Den Befehl avrdude... siehst Du ja in der Ausgabe, den kannst Du natürlich auch manuell so ausführen. Du musst nur schauen, dass Du das aus dem Verzeichnis heraus machst, in dem die hex Datei liegt.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

hugo


Stehe im richtigen Verzeichnis mit dem Hex-File.

Bekomme die Meldung trotzdem not in sync:

Kann sein dass der Arduino Nano defekt ist?


:~/culfw-code-r571-trunk/culfw/Devices/nanoCUL $ ls *
board.h  board.h.wmbus  makefile  nanoCUL.c  nanoCUL.elf  nanoCUL.hex  nanoCUL.lst  nanoCUL.map  nanoCUL.o  README


:~/culfw-code-r571-trunk/culfw/Devices/nanoCUL $ avrdude -D -p atmega328p -P /dev/ttyUSB0 -b 57600 -c arduino    -U flash:w:nanoCUL.hex
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x7f
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x7e
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x7e
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x7e
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x7e
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x7e
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x7e
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x7e
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x7e

avrdude done.  Thank you.
Raspi 3 mit CUL HM-MOD-UART; nanoCUL
Homematic: HM-SEC-SCo 5x;HM-LC-SW1-BA-PCB 3x;HM-Dis-EP-WM55; HM-LC-SW4-PCB; ARLO;
Somfy RTS Rollo 14x; Alexa; GardenaSmartDevice; Stromzähler(GPIO); shelly1; shelly2.5;Wasserzähler(GPIO);Brennerstuhlsteckdosen;

betateilchen

so tief stecke ich in der Hardware dieser Teile nicht drin.
Verschieb doch Deinen Thread (Button dazu unten links) mal in die Bastelecke und frage dort nach, warum das Flashen nicht funktioniert. Da sitzen Spezialisten, die das im Schlaf können.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Otto123

mir fallen noch zwei Dinge auf: /dev/ttyUSB0 -b 57600
Steckt der denn wirklich an USB0 bzw. gibt es diese Schnittstelle? oben in #1 war es ja serial/by-id/ ....
57600 ist das ne "gute" Geschwindigkeit? oben in #1 war es ja 38400

Ich habe mal vor ewigen Zeiten einen CUL geflashed, das habe ich mit 9600 gemacht.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

yersinia

Zitat von: Otto123 am 07 Dezember 2023, 15:06:45Ich habe mal vor ewigen Zeiten einen CUL geflashed, das habe ich mit 9600 gemacht.
nanoCUL flashe ich mit 115200, nach einem update auf den optiboot-bootloader (vorher mit 57600):
avrdude -p atmega328p -c arduino -P /dev/ttyUSB1 -b 115200 -D -Uflash:w:./file.hex:i
Einen hardware/Lötstellen-Defekt kann man ausschließen? Port ist richtig?
viele Grüße, yersinia
----
FHEM 6.4 (SVN) on RPi 4B with RasPi OS Bookworm (perl 5.36.0) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl