Hi Leute, ich habe die Hardware mit einem Arduino Nano nach dieser Anleitung hier zusammengesteckt:
https://wiki.fhem.de/wiki/SIGNALduino
Ich scheitere vor dem flashen - habe ich die Kommandozeile falsch angepasst?
#ls -l /dev/serial/by-id
insgesamt 0
lrwxrwxrwx 1 root root 13 Sep 1 21:18 usb-1a86_USB2.0-Serial-if00-port0 -> ../../ttyUSB0
also lautet mein angepasste Befehlszeile:
define testsignalduino SIGNALduino /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@57600
dann kommt aber nicht status open (ist ja auch irgendwie lofisch, es ist ja noch keine SIGNALduino Software drauf auf dem Nano), sondern:
DeviceOverview
testsignalduino
closed
Information menu
Display protocollist
testsignalduino
testsignalduino
Internals
CFGFN
Clients
:IT:CUL_TCM97001:SD_RSL:OREGON:CUL_TX:SD_AS:Hideki:SD_WS07:SD_WS09: :SD_WS:RFXX10REC:Dooya:SOMFY:SD_BELL:SD_UT:SD_WS_Maverick:FLAMINGO:CUL_WS:Revolt: :FS10:CUL_FHTTK:Siro:FHT:FS20:CUL_EM:Fernotron:SD_Keeloq:SD_GT:SIGNALduino_un:
DEF
/dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@57600
DMSG
nothing
DeviceName
/dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@57600
FD
4
FUUID
5f4ea0d5-f33f-b217-63ab-3500edab2db0ced7
IDsNoDispatch
2,72.1,82
LASTDMSG
nothing
LASTDMSGID
nothing
NAME
testsignalduino
NR
19
PARTIAL
STATE
opened
TIME
1598988501
TYPE
SIGNALduino
initretry
0
sendworking
0
versionProtocols
1.20
versionmodul
v3.4.4
Readings
state
closed
2020-09-01 21:29:25
was hab ich falsch gemacht?
hier noch das log, falls es was hilft:
https://pastebin.com/t0WsbeMm
hast Du versucht zu flashen?
nein, wenn es vorher schon Fehler gibt..
kann ich auch über die Arduino IDE flashen? (ggf. wie?)
flashen hat nicht funktioniert:
avrdude: Version 6.2
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "/etc/avrdude.conf"
User configuration file is "/root/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0
Using Programmer : arduino
Overriding Baud Rate : 115200
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x50
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x6f
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x77
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x65
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x72
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x20
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x4f
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x4e
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x2e
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x0d
avrdude done. Thank you.
Ich habe diese Befehle verwendet:
attr testsignalduino hardware nano328
attr testsignalduino updateChannelFW stable
get testsignalduino availableFirmware
set testsignalduino flash ! hier kam ein syntaxfehler statt Auswahlliste
set testsignalduino flash stable (geraten)
Ich habe offenbar aus der Bastelkiste einen Nano mit einem alten Bootloader gegriffen. Werde den mal updaten und dann von Hand flashen.
ich verstehe nicht ganz was du überhaupt machen willst.
Du willst den Arduino initial mit der Firmware flashen? Schreib mal den avrdude befehl, der sollte im Log auch drin sein.
Die Fehlermeldung sagt, dass der Programmer nicht schreiben kann, falsch angeschlossen, kein Bootloader, falsche Parameter, ... alles jetzt nur raten. Anderen Arduino mal getestet, vielleicht hat der aktuelle einen Defekt ....
Am Rande, bitte nutze den Code-Tag für die langen Logs (die Raute über dem Edit-Fenster). Damit werden die Posting übersichtlicher.
Es soltte auch mit dem alten Bootloader funktionieren.
Du kannst mal folgendes versuchen
set testsignalduino flash https://github.com/RFD-FHEM/SIGNALDuino/releases/download/3.4.0/SIGNALDuino_nano3283.4.0.hex
Die Firmware ist von hier
https://github.com/RFD-FHEM/SIGNALDuino/releases/tag/3.4.0
Zitat von: Ralf9 am 02 September 2020, 09:29:15
Es soltte auch mit dem alten Bootloader funktionieren.
Bin da auch noch nicht so ganz durch, aber ist es nicht so, dass eine firmware für den ATMega32 genau zum Bootloader passen muß, so dass die denn nur entweder für den alten Bootloader ist oder für den neuen (Optiboot). Demnach dürfte die mit FHEM ausgelieferte firmware (bzw. das, was in diesem Repo liegt) immer _nur_ für den alten BL funktionieren.
@igelsucher
Vielleicht solltest du mal mit der Arduino-IDE und "blink" checken, welcher BL jetzt genau drauf ist? (In den aktuelleren Versionen gibt es eine BL-Auswahl für den Nano, damit kann man schnell hin- und herwechseln).
Wenn damit beide Varianten nicht gehen, würde ich empfehlen, den alten BL zu flashen (dazu brauchst du extra Hardware, (2., funktionierender Nano würde auch gehen)).
(Grundsätzliche Anmerkung: für alles, was direkt an den FHEM-Server angeschlossen wird, sollte man mAn. irgendeinen anderen USB-seriell-Wandler zu nehmen wie die CHG340/CHG341, die auf den verbreiteten China-Clones drauf sind. Sonst muß man "by-path" einbinden, was immer nur die zweitbeste Lösung ist).
Es wird zuerst versucht mit 57600 Baud für den alten Bootloader zu flashen, wenn das nicht funktioniert hat, dann wird versucht mit 115200 für den neuen optiboot zu flashen.
Ah, dann liegt der Unterschied gar nicht in der BL-firmware-Kombination, sondern einfach nur in der Baud-Rate!?!
War mir neu, Danke für die Info!
(Ich hatte das "Problem" nach MySensors-OTA-Experimenten; mit nRF24 klappt das nur mit einem speziellen BL, und dann war es später dann immer kniffelig rauszufinden, welcher BL denn jetzt auf welchem Pro Mini drauf ist...)
Dann dürfte wohl auf dem ATMega noch gar kein BL drauf sein, oder?
Die Zeile von Ralf9 hat funktioniert:
2020.09.02 10:26:31 3: testsignalduino: ParseHttpResponse, url https://github-production-release-asset-2e65be.s3.amazonaws.com/27504581/fcf34c80-c7b6-11ea-9a46-167d0d73a61a?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20200902%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200902T082630Z&X-Amz-Expires=300&X-Amz-Signature=fa7d782fea6737aab9afccc54c0578fb0002133750076c6bdf4f3ae09e809608&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=27504581&response-content-disposition=attachment%3B%20filename%3DSIGNALDuino_nano3283.4.0.hex&response-content-type=application%2Foctet-stream returned: 63058 bytes Data
2020.09.02 10:26:31 3: testsignalduino: ParseHttpResponse, Downloaded SIGNALDuino_nano3283.4.0.hex firmware from github-production-release-asset-2e65be.s3.amazonaws.com
2020.09.02 10:26:31 3: testsignalduino: Set_flash, filename FHEM/firmware/SIGNALDuino_nano3283.4.0.hex provided, trying to flash
2020.09.02 10:27:30 3: testsignalduino: avrdude, Firmware update was successfull
2020.09.02 10:27:30 3: Opening testsignalduino device /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0
2020.09.02 10:27:30 3: Setting testsignalduino serial parameters to 57600,8,N,1
2020.09.02 10:27:30 1: testsignalduino: DoInit, /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@57600
2020.09.02 10:27:30 3: testsignalduino device opened
2020.09.02 10:27:32 3: testsignalduino: SimpleWrite_XQ, disable receiver (XQ)
2020.09.02 10:27:32 3: testsignalduino: StartInit, get version, retry = 0
2020.09.02 10:27:32 2: testsignalduino: CheckVersionResp, initialized v3.4.4
2020.09.02 10:27:33 3: testsignalduino: CheckVersionResp, enable receiver (XE)
Das Problem war zuerst der alte Bootloader, den hab ich aktualisiert wie hier beschrieben:
https://www.thing-king.de/arduino-nano-neusten-bootloader-flashen-auf-arduino-nano-china-clone/
Das andere Problem war, das die im Wiki stehende Zeile kein Auswahlfenster geöffnet hat, sondern einen syntaxfehler:
set sduino flash <und-dann-auswaehlen>
Aber das sich ja mit der Kommandozeile mit dem vollständigen downloadpfad erledigt.
Jetzt lese ich erstmal weiter, was ich noch tun muss.. :-)
Ich glaube, jetzt bin ich mit dem SIGNALduino bauen erst mal fertig.
Im Event-Monitor steht:
Events (Filter: .*) FHEM log
2020-09-02 11:20:57 SIGNALduino testsignalduino ping: OK
Wie kann ich den einfach auf Funktion testen? Ich bräuchte wohl irgendein 433MhZ-Gerät in der Nähe, was sendet.. oder?
Irgendwo hab ich gelesen, dass der blinken soll, dass tut er aber nicht bzw. nur beim Ping alle 2 Minunten,,
Für's empfangen: Ja, es müßte irgendein Signal geben, das er auswerten könnte; ohne ist schwierig...
Dazu noch etwas, das firmware+Modul empfangen+dekodieren (bzw. erst mal grob identifizieren) kann + aktiviertes autocreate (TYPE=autocrate) in FHEM.
Senden ginge auch so, du müßtest halt wissen, welche codes und an wen ;) .
Das Thema hier ist ja gelöst / ich mach einen neuen Thread auf.