[gelöst] SIGNALduino bauen nach Anleitung klappt nicht (vor flash)

Begonnen von igelsucher, 01 September 2020, 21:37:20

Vorheriges Thema - Nächstes Thema

igelsucher

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


Ralf9

FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

igelsucher

nein, wenn es vorher schon Fehler gibt..

kann ich auch über die Arduino IDE flashen? (ggf. wie?)

igelsucher

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.

kadettilac89

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.

Ralf9

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
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Beta-User

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).
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Ralf9

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.
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Beta-User

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?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

igelsucher

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.. :-)

igelsucher

#10
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,,

Beta-User

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 ;) .
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

igelsucher

Das Thema hier ist ja gelöst / ich mach einen neuen Thread auf.