CUL blinkt nicht

Begonnen von rapi70, 21 Dezember 2015, 22:15:21

Vorheriges Thema - Nächstes Thema

rapi70

Hi,

ich habe mir vor einiger Zeit zwei Nano V3 mit ATMega328p und zwei RF1101SE-v3.1 Module bestellt.
Jetzt wollte ich in den Weihnachtstagen das ganze mal an meinem Raspberry in Betrieb nehmen und bin durch Zufall auf die Anleitung in diesem Forum gestoßen.
Ich habe mir also die culfw per svn geladen, die board.h angepasst:
/* if you have an Arduino with only 8MHz disable the next line */
/*#define HAS_16MHZ_CLOCK*/

/* if you are using a CC1101 module for 868MHz disable the next line */
/*#define HAS_CC1100_433*/


Flashen sieht auch gut aus:
avrdude: input file nanoCUL.hex contains 22034 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 4.63s

avrdude: verifying ...
avrdude: 22034 bytes of flash verified

avrdude: safemode: Fuses OK (E:00, H:00, L:00)

avrdude done.  Thank you.


Auch das lsusb sieht gut aus:
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 005: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC


Ein dmesg | grep tty gibt folgendes:
[    0.000000] Kernel command line: dma.dmachans=0x7f35 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708.boardrev=0xe bcm2708.serial=0xb0207106 smsc95xx.macaddr=B8:27:EB:20:71:06 bcm2708_fb.fbswap=1 sdhci-bcm2708.emmc_clock_freq=250000000 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000  dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
[    0.001717] console [tty1] enabled
[    0.140855] 20201000.uart: ttyAMA0 at MMIO 0x20201000 (irq = 83, base_baud = 0) is a PL011 rev2
[    0.522927] console [ttyAMA0] enabled
[    7.128655] usb 1-1.2: FTDI USB Serial Device converter now attached to ttyUSB0
[   64.748055] ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
[   76.127316] usb 1-1.2: FTDI USB Serial Device converter now attached to ttyUSB0


Die rote Power LED leuchtet ständig. Ansonsten blinkt nichts....

Starte ich minicom wird die Verbindung als offline angezeigt und ich kann nichts mehr machen. Hat jemand einen Tip?

cu

rapi70

Da ich ja noch einen nano hatte, der noch nicht geflashed war, habe ich von dem mal das flash ausgelesen und auf den anderen übertragen.
Siehe da - er blinkt wieder.

Dann habe ich aber wohl ein Problem mit der culfw, oder?

CaptainHook

Hi,
/*#define HAS_16MHZ_CLOCK*/ <<<<---- Warum??
der ArduinoNano bzw der ATMega328 läuft doch (zumindest bei allen meinen mit 16Mhz.

minicom *g* bist du sicher, dass es richtig konfiguriert ist?
versuch es mal mit screen
screen /dev/ttyUSB8 38400

Grüße,
Stephan
Lenovo M53 ThinkCentre 10DC | Docker | SolarEdge SE10K + SE5000H + Energy Bank 10KWh | EspEasy | Tasmota | Hue | Alexa | uvm.

PeMue

Zitat von: rapi70 am 22 Dezember 2015, 07:57:24
Dann habe ich aber wohl ein Problem mit der culfw, oder?
Das Blinken kannst Du an- bzw. abschalten, siehe http://www.culfw.de/commandref#cmd_l

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

rapi70

#4
Hi,

danke - das habe ich jetzt wieder aktiviert:
#define HAS_16MHZ_CLOCK

dann habe ich folgendes gemacht:
sudo make clean && sudo make && sudo make program

Das endet dann mit:

Reading | ################################################## | 100% 4.65s

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
         0x0c != 0xe7
avrdude: verification error; content mismatch

avrdude: safemode: Fuses OK (E:00, H:00, L:00)

avrdude done.  Thank you.

makefile:216: recipe for target 'program' failed
make: *** [program] Error 1


Zur Sicherheit habe ich dann noch ein -e angehängt:
avrdude -D -p atmega328p -P /dev/ttyUSB0 -b 57600 -c arduino    -U flash:w:nanoCUL.hex -e

Ein screen zeigt dann auch nur einen schwarzen Bildschirm und reagiert auf nichts. Wobei ich mir da nicht sicher bin, ob ich es richtig bediene.

PS: Hatte neu verkabelt... Kann es daran liegen?

cs-online

Hallo,

das sieht so aus, als ob das geflashte und das verglichene stellenweise nicht übereinstimmt.
Normalerweise müßte ein nackter Arduino, ohne Funkmodul auch flashbar sein (zumindest habe ich das bei meinem Signaduino so gemacht, den erst geflasht und dann erst die Funkmodule bekommen und angeschlossen), deshalb, um auszuschließen, daß Du in der Verkabelung etwas falsch gemacht hast oder das Funkmodul eine Macke hat und irgendwas z.B. "zu viel Power" zieht, würde ich mal alles abklemmen und nackt flashen.

Und nur nebenbei: Meine Arduinos blinken nur nach dem Flashen, dann einmal stromlos gemacht und neu gestartet blinkt da nichts mehr... Nur funktionieren sollte der dann schon  ;)

Grüße

Christian
FHEM auf RPI 4 4GB, HM-WLAN-Gateway, einige HM-Aktoren,2x EBUSD an Heizung+Solar, ESP8266/32 am Strom-,Gas-,Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20+S26,Shelly1/2/2.5, Lacrosse-Gateway und Sensoren,Sduino,Alexa-Fhem,Huawei PV+Speicher, alles auf einem RPI und da geht noch mehr

rapi70

Hi,

danke - alle Kabel abgezogen und neu geflashed - wieder ein verification error. Da der Fehler direkt hier passiert:
first mismatch at byte 0x0000
denke ich mal, da wird nicht wirklich was geflashed.

Kenne ich da noch nicht wirklich aus. Muss ich vielleicht den Bootloader neu flashen?

Was mir jetzt eben aufgefallen ist - an einem USB Port am Raspberry wird der Arduino nicht mehr erkannt. Komisch...

CaptainHook

hmm, der Arduino wird nicht mehr erkannt ...?
Die Serielle Schnittstelle wird durch die Firmware vom CUL beim nanoCUL nicht beeinflusst.
Hast du vielleichteinfach einen Anderen Prot bekommen ttyUSB1 2 3 4 ...
Hast du noch andere Sachen an der board.h geändert?

Ich hatte solche Probleme nur wenn ich zu viele Protokolle aktiviert hatte (#define HAS_***) und mir der Platz im Atmega aus ging
Ansosnten einfach zwei drei mal flashen ... die China-Arduinos resetten manchmal nicht richtig
Lenovo M53 ThinkCentre 10DC | Docker | SolarEdge SE10K + SE5000H + Energy Bank 10KWh | EspEasy | Tasmota | Hue | Alexa | uvm.

rapi70

#8
Hi,

nein - ist immer ttyUSB0:
[45093.068847] ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
[45980.604466] usb 1-1.3: FTDI USB Serial Device converter now attached to ttyUSB0


Nur an einem USB Port geht's halt nicht mehr. Vielleicht mal den Rapsberry booten?
Aber wie auch immer - wenn ich make program mache, dann bekomme ich immer den verification error. Also ob der Arduino nichts mehr schreiben will.[/code]

cs-online

....aaaalsoooo...

mich würden nun mal ein paar Dinge interessieren:
1) ist das das einzige USB-Gerät an dem Raspi ? Falls nicht, alle abziehen, so dass nur noch der zu flashende dran hängt.
2) Läuft FHEM noch ? Falls ja, dann mit shutdown beenden
3) ich versteh nicht ganz, was Du mit "an einem" meinst, also er wird an allen erkannt, aber an einem speziellen Anschluss nicht ? (hatte ich nach einem Blitzschlag, da hats den einen speziellen zerlegt)

Also wie ich das nach einigen Fehlschlägen machen würde:
Nur den Arduino am Raspi, Raspi vom Strom trennen, ein paar Sekunden warten, Raspi booten, FHEM beenden, Terminal -> schauen ob der Arduino unter /DEV/SERIAL/BY-ID zu sehen ist, wenn ja, dann in den Ordner, wo die zu flashende .hex drin ist, dann einfach "make program", dann wird das Dinge geflasht und verifiziert. Wenn unter /DEV/SERIAL/BY-ID nichts zu sehen ist, einmal den Arduino abziehen, wieder dran stecken (das Problem mit den Fake-FDTIs, wo die Massepins nicht verbunden sind, habe ich auch...), dann sollte der auch erkannt werden.

...Ergebnis wieder hier posten :-)

Grüße

Christian
FHEM auf RPI 4 4GB, HM-WLAN-Gateway, einige HM-Aktoren,2x EBUSD an Heizung+Solar, ESP8266/32 am Strom-,Gas-,Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20+S26,Shelly1/2/2.5, Lacrosse-Gateway und Sensoren,Sduino,Alexa-Fhem,Huawei PV+Speicher, alles auf einem RPI und da geht noch mehr

rapi70

sooooo................ ;-)

zu 1) Nein - das rennt auch sonst nur DHCP / DNS
zu 2) Der hat noch kein FHEM
zu 3) Der Raspi hat 2 USB Ports. An einem wird der Arduino sauber erkannt (DEV vorhanden), am anderen nicht.

Ich habe den Raspi jetzt stromlos gehabt und dann neu gebootet. Der Arduino war beim booten verbunden. Danach habe ich folgendes gemacht:

pi@raspberrypi ~ $ dmesg |grep tty
[    0.000000] Kernel command line: dma.dmachans=0x7f35 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708.boardrev=0xe bcm2708.serial=0xb0207106 smsc95xx.macaddr=B8:27:EB:20:71:06 bcm2708_fb.fbswap=1 sdhci-bcm2708.emmc_clock_freq=250000000 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000  dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
[    0.001715] console [tty1] enabled
[    0.140829] 20201000.uart: ttyAMA0 at MMIO 0x20201000 (irq = 83, base_baud = 0) is a PL011 rev2
[    0.522897] console [ttyAMA0] enabled


Auch ein lsusb zeigt nichts:

pi@raspberrypi ~ $ lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.



Arduino ab und wieder dran:

pi@raspberrypi ~ $ lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 008: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC


Das verhält sich am anderen USB Port identisch... (jetzt)

Was hat das mit dem Fake-FDTIs zutun?

Aber trotzdem:

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
         0x0c != 0xe7
avrdude: verification error; content mismatch

cs-online

...das mit dem Fake FTDI ist hier erklärt:

http://forum.fhem.de/index.php/topic,24651.msg218291.html#msg218291

Wenn ein Arduino sich flashen läßt und der andere die Fehler macht, fürchte ich, ist der zweite vielleicht hops gegangen...

Grüße

Christian
FHEM auf RPI 4 4GB, HM-WLAN-Gateway, einige HM-Aktoren,2x EBUSD an Heizung+Solar, ESP8266/32 am Strom-,Gas-,Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20+S26,Shelly1/2/2.5, Lacrosse-Gateway und Sensoren,Sduino,Alexa-Fhem,Huawei PV+Speicher, alles auf einem RPI und da geht noch mehr

rapi70

Mit dem zweiten Arduino habe ich noch nichts gemacht, außer die FW auszulesen.

Mein Problem ist, dass ich den Arduino zwar flashen kann, aber der verify fehlschlägt. Also gehe ich davon aus, dass zwar gelesen werden kann aber nicht geschrieben.
Ich denke ich starte mal einen Thread im Arduino Forum. Hat ja nicht direkt was mit FHEM zutun.


cs-online

also, ich würde das mit dem zweiten (es sei denn der läuft prima und Du willst "nichts kaputt" machen) auch nochmal probieren, denn:

Wenn sich beide nicht flashen und sauber verifizieren lassen, dann sind entweder beide  eher (unwahrscheinlich) bzw. das USB-Kabel (das kleine blaue war bei mir auch schon mal wackelig) defekt  oder es stimmt was mit dem System nicht, mit dem Du flashen willst.

Grüße

Christian
FHEM auf RPI 4 4GB, HM-WLAN-Gateway, einige HM-Aktoren,2x EBUSD an Heizung+Solar, ESP8266/32 am Strom-,Gas-,Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20+S26,Shelly1/2/2.5, Lacrosse-Gateway und Sensoren,Sduino,Alexa-Fhem,Huawei PV+Speicher, alles auf einem RPI und da geht noch mehr

rapi70

Kann man den Arduino nicht auch am PC flashen?
Einfach um mal das System auszuschließen. Mit dem zweiten Arduino habe ich bisher noch nichts gemacht. Den habe ich eigentlich als Notreserve....