[Gelöst] Problem mit 3-fach Maple Platine Small V2.0

Begonnen von Fritz Muster, 25 Januar 2021, 11:38:47

Vorheriges Thema - Nächstes Thema

Fritz Muster

Hallo in die Runde,

ich habe die Platine von Ranseyer Small V2.0 mit einem Maple, einem CC11010 866MHZ Modul und einem W5500 aufgebaut. Nach flashen von Bootloader und Firmware wird der Maple nach einstecken am USB Port nicht erkannt. Aber mal der Reihe nach was ich gemacht habe und was genau das Problem ist:

- Maple (Baite) mit Stiftleisten bestückt
- Bootloader mit Datei maple_mini_boot20.bin via stm32flash geflasht (USB/TTL Adapter / Brücke zwischen MapleMini-boot1 & MapleMini-GND). Hier trat schon das erste Problem auf. Beim flashen kam die Meldung
dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
dfu-util: Cannot open DFU device 1eaf:0003
dfu-util: No DFU capable USB device available

mit dem Hinweis von hier habe ich die Datei "/etc/udev/rules.d/45-maple.rules" mit dem Inhalt
ATTRS{idProduct}=="1001", ATTRS{idVendor}=="0110", MODE="664", GROUP="dialout"
ATTRS{idProduct}=="1002", ATTRS{idVendor}=="0110", MODE="664", GROUP="dialout"
ATTRS{idProduct}=="0003", ATTRS{idVendor}=="1eaf", MODE="664", GROUP="dialout" SYMLINK+="maple"
ATTRS{idProduct}=="0004", ATTRS{idVendor}=="1eaf", MODE="664", GROUP="dialout" SYMLINK+="maple"
erstellt. Danach konnte ich den Bootloader flashen.

stm32flash 0.5

http://stm32flash.sourceforge.net/

Using Parser : Raw BINARY
Interface serial_posix: 57600 8E1
Version      : 0x22
Option 1     : 0x00
Option 2     : 0x00
Device ID    : 0x0410 (STM32F10xxx Medium-density)
- RAM        : 20KiB  (512b reserved by bootloader)
- Flash      : 128KiB (size first sector: 4x1024)
- Option RAM : 16b
- System RAM : 2KiB
Write to memory
Erasing memory
Wrote and verified address 0x080055a4 (100.00%) Done.


- Dann habe ich die Platine bestückt/aufgebaut.
- Im Anschluss habe ich die Firmware "MapleCUNx4_W5500_BL.bin" geflasht. Der Vorgang lief zu 100% ohne Fehler durch.
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 1eaf:0003
Run-time device DFU version 0110
Claiming USB DFU Interface...
Setting Alternate Setting #2 ...
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 0110
Device returned transfer size 1024
Copying data from PC to DFU device
Download        [=========================] 100%        66452 bytes
Download done.
Sent a total of 66452 bytes
state(8) = dfuMANIFEST-WAIT-RESET, status(0) = No error condition is present
Done!


- Maple abgezogen und wieder eingesteckt
- Maple wird nicht erkannt, LED blinkt dauerhaft mit ca. 1 Hz.fritz@fritz-OptiPlex-9010:~$ ls -l /dev/serial/by-id
ls: Zugriff auf '/dev/serial/by-id' nicht möglich: Datei oder Verzeichnis nicht gefunden
fritz@fritz-OptiPlex-9010:~$

- lsusb zeigt fritz@fritz-OptiPlex-9010:~$ lsusb
Bus 002 Device 004: ID 076b:3021 OmniKey AG CardMan 3121
Bus 002 Device 003: ID 04a9:190f Canon, Inc. CanoScan LiDE 220
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 004: ID 1eaf:0003 
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 002: ID 0480:a202 Toshiba America Inc Canvio Basics HDD
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0000:0538   USB OPTICAL MOUSE
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
fritz@fritz-OptiPlex-9010:~$

- tail -f /var/log/syslog zeigt
fritz@fritz-OptiPlex-9010:~$ tail -f /var/log/syslog
Jan 25 11:22:05 fritz-OptiPlex-9010 kernel: [ 6783.662058] usb 1-1.3: New USB device found, idVendor=1eaf, idProduct=0003, bcdDevice= 2.01
Jan 25 11:22:05 fritz-OptiPlex-9010 kernel: [ 6783.662061] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jan 25 11:22:05 fritz-OptiPlex-9010 kernel: [ 6783.662063] usb 1-1.3: Product: Maple 003
Jan 25 11:22:05 fritz-OptiPlex-9010 kernel: [ 6783.662065] usb 1-1.3: Manufacturer: LeafLabs
Jan 25 11:22:05 fritz-OptiPlex-9010 kernel: [ 6783.662066] usb 1-1.3: SerialNumber: LLM 003
Jan 25 11:22:05 fritz-OptiPlex-9010 mtp-probe: checking bus 1, device 4: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3"
Jan 25 11:22:05 fritz-OptiPlex-9010 mtp-probe: bus: 1, device: 4 was not an MTP device
Jan 25 11:22:05 fritz-OptiPlex-9010 mtp-probe: checking bus 1, device 4: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3"
Jan 25 11:22:05 fritz-OptiPlex-9010 mtp-probe: bus: 1, device: 4 was not an MTP device
Jan 25 11:25:34 fritz-OptiPlex-9010 kernel: [ 6992.959194] usb 1-1.3: USB disconnect, device number 4
Jan 25 11:25:41 fritz-OptiPlex-9010 kernel: [ 6999.999801] usb 1-1.3: new full-speed USB device number 5 using ehci-pci
Jan 25 11:25:42 fritz-OptiPlex-9010 kernel: [ 7000.109480] usb 1-1.3: New USB device found, idVendor=1eaf, idProduct=0003, bcdDevice= 2.01
Jan 25 11:25:42 fritz-OptiPlex-9010 kernel: [ 7000.109484] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jan 25 11:25:42 fritz-OptiPlex-9010 kernel: [ 7000.109486] usb 1-1.3: Product: Maple 003
Jan 25 11:25:42 fritz-OptiPlex-9010 kernel: [ 7000.109487] usb 1-1.3: Manufacturer: LeafLabs
Jan 25 11:25:42 fritz-OptiPlex-9010 kernel: [ 7000.109489] usb 1-1.3: SerialNumber: LLM 003
Jan 25 11:25:42 fritz-OptiPlex-9010 mtp-probe: checking bus 1, device 5: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3"
Jan 25 11:25:42 fritz-OptiPlex-9010 mtp-probe: bus: 1, device: 5 was not an MTP device
Jan 25 11:25:42 fritz-OptiPlex-9010 mtp-probe: checking bus 1, device 5: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3"
Jan 25 11:25:42 fritz-OptiPlex-9010 mtp-probe: bus: 1, device: 5 was not an MTP device


Ich denke der Bootloader wird nicht "sauber" beendet. Es findet kein abschließender disconnect statt und somit wird die per USB geflashte Applikation/Firmware nicht geladen.

Die Ausgabe von sudo dfu-util -d 1eaf:0003 --list ist
fritz@fritz-OptiPlex-9010:~/stm32flash$ sudo dfu-util -d 1eaf:0003 --list
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

Found DFU: [1eaf:0003] ver=0201, devnum=7, cfg=1, intf=0, path="1-1.3", alt=2, name="UNKNOWN", serial="UNKNOWN"
Found DFU: [1eaf:0003] ver=0201, devnum=7, cfg=1, intf=0, path="1-1.3", alt=1, name="UNKNOWN", serial="UNKNOWN"
Found DFU: [1eaf:0003] ver=0201, devnum=7, cfg=1, intf=0, path="1-1.3", alt=0, name="UNKNOWN", serial="UNKNOWN"

fritz@fritz-OptiPlex-9010:~/Dokumente/Haus_und_Grund/fhem/stm32flash$



Hat jemand einen Tipp für mich wie ich das Problem lösen kann?

Danke und viele Grüße
Fritz
RasPi 3B+, Stretch, Fhem 5.9, DBlog SQLite
HMLAN, mapleCUN MAX/WMBus, mapleSduino 868/433/868
HM Sensoren/Aktoren ,Technoline TX 29 DTH-IT, TFA 30.3155WD, MAX!
Hour Counter, Astro, EletricityCounter, Statistics, Charting Frontend, TabletUI, Modbus

Ranseyer

Es liest sich (bei zügigem Lesen) so als ob du nicht den zur Firmware passenden Bootloader hättest.
Auch verstehe ich nicht warum obem im Text beim Kommando stm32flash Ausgaben von DFU-Util kommen sollen...



Anleitung zum Flashen ist hier: https://github.com/heliflieger/a-culfw/blob/master/culfw/Devices/MapleCUN/README.md
Und der Bootloader geht z.B. so: stm32flash -w maple_mini_boot20.bin -v /dev/ttyxx
Dazu braucht man ledglich eine korrekte serielle Verbindung und den richtigen Bootloader. Und falls du nicht das richtige Timing findest dann kannst du ja das Script nehmen:
https://wiki.fhem.de/wiki/MapleCUN#Trick_zum_USB-Flashen_.28Code_Schnipsel_f.C3.BCr_kleines_Skript.29

Dann erst die dazu passenden Firmware mit DFU-Util flashen...+


Und ja es gibt Maples bei denen der USB Disconnect nicht funktioniert. Von Baite habe ich noch keine gesehen. Ist dein Maple grün mit Micro-USB ?
Daher verlöte ich die Teile erst wenn ich diese flashen konnte und (hoffentlich?) auch getestet habe ob die Firmware startet.
FHEM mit FTUI. Homematic-Funk für Thermostate und Licht. MySensors als Basis für eigene HW.
Zentrale ist der MAPLE-CUL mit RFM69+HModUART-AddOn.
Doku zu meinen Projekten: Github/Ranseyer. Platinen falls verfügbar gerne auf Anfrage.
Support: gerne wenn ich Zeit+Lust habe im Forum. Nicht per PN!

Fritz Muster

Zitat von: Ranseyer am 28 Januar 2021, 09:25:16
Ist dein Maple grün mit Micro-USB ?

Ja ist ein grüner von Baite (siehe Anhang).

Ich vermute ich habe den Maple "tot-geflasht" Habe jetzt noch ein paarmal versucht die Datei "maple_mini_boot20.bin" (Dateigröße 20.508) von https://github.com/ranseyer/CUN-STM32/tree/master/Firmware/bootloader via USB/FTDI Adapter zu flashen. Das Ergebnis sieht stets iO aus
Debug-Port des MAPLE per FTDI-USB2Seriell Wandler anschliessen (RX+TX gekreuzt)! , Bot-Taste halten und erst dann MAPLE mit Spannung versorgen.
[sudo] Passwort für detlef:
stm32flash 0.5

http://stm32flash.sourceforge.net/

Using Parser : Raw BINARY
Interface serial_posix: 57600 8E1
Version      : 0x22
Option 1     : 0x00
Option 2     : 0x00
Device ID    : 0x0410 (STM32F10xxx Medium-density)
- RAM        : 20KiB  (512b reserved by bootloader)
- Flash      : 128KiB (size first sector: 4x1024)
- Option RAM : 16b
- System RAM : 2KiB
Write to memory
Erasing memory
Wrote and verified address 0x0800501c (100.00%) Done.


Wenn ich dann den Maple vom USB/FTDI Adapter trenne und per USB anschließe gibt der Befehl sudo dfu-util -d 1eaf:0003 --list
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

Found DFU: [1eaf:0003] ver=0201, devnum=5, cfg=1, intf=0, path="1-1.4", alt=2, name="UNKNOWN", serial="UNKNOWN"
Found DFU: [1eaf:0003] ver=0201, devnum=5, cfg=1, intf=0, path="1-1.4", alt=1, name="UNKNOWN", serial="UNKNOWN"
Found DFU: [1eaf:0003] ver=0201, devnum=5, cfg=1, intf=0, path="1-1.4", alt=0, name="UNKNOWN", serial="UNKNOWN"


aus. Laut meiner Recherche müsste da aber folgendes stehen

dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

Found DFU: [1eaf:0003] ver=0201, devnum=5, cfg=1, intf=0, path="1-1.4", alt=2, name="STM32duino bootloader v1.0  Upload to Flash 0x8002000", serial="LLM 003"
Found DFU: [1eaf:0003] ver=0201, devnum=5, cfg=1, intf=0, path="1-1.4", alt=1, name="STM32duino bootloader v1.0  Upload to Flash 0x8005000", serial="LLM 003"
Found DFU: [1eaf:0003] ver=0201, devnum=5, cfg=1, intf=0, path="1-1.4", alt=0, name="STM32duino bootloader v1.0  ERROR. Upload to RAM not supported.", serial="LLM 003"


Vielleicht hat ja jemand eine Idee wie ich den Maple flott kriege.

Viele Grüße
Fritz
RasPi 3B+, Stretch, Fhem 5.9, DBlog SQLite
HMLAN, mapleCUN MAX/WMBus, mapleSduino 868/433/868
HM Sensoren/Aktoren ,Technoline TX 29 DTH-IT, TFA 30.3155WD, MAX!
Hour Counter, Astro, EletricityCounter, Statistics, Charting Frontend, TabletUI, Modbus

Ranseyer

ZitatJa ist ein grüner von Baite (siehe Anhang).
Dann nehme ich mal an der STM32 ist kein Fake. (Es gibt definitiv Fakes!! Das Platinenloayout des Maple soweit auf dem Fotos noch sichtbar sieht auch 1:1 aus wie bei meinen Maples...)

Hmm, wenn der Verify des geflashten Bootloaders passt, dann sollte er auch OK sein...


...für stabile 5V beim Flashen sorgen ? (falls noch nicht geschehen)
...ganz düster war da auch mal was mit den Versionen von DFU-Util ?



Ich habe dazu immer ein kurzes USB Kabel an den Rechner.
Von "USB-Wandler" (meist FTDI) habe ich nur GND, RX+TX an den Maple verbunden um den Bootloader zu flashen.
Der Maple hat zwar eine Z-Diode in Richtung USB, aber die muss man ja nicht nutzen, und mein Gefühl war dass so die Speisung besser wäre...

Wenn man inklusive LAN-Modul flashen will muss man noch mehr auf eine Stabile Spannung achten ! (Ich konnte hier manche Module im ersten Anlauf gar nicht flashen, erst mit besserem Aufbau.)




Anderer Ansatz: Juergs hatte mal den MSC Bootloader eingebracht: https://wiki.fhem.de/wiki/MapleCUN#Alternative_Bootloader

Damit erscheint der Maple wie ein USB-Laufwerk auf dem Rechner, und man kopiert die selbe Firmware (Startadresse ist unverändert) wie üblich einfach mit dem Dateimanager drauf...
FHEM mit FTUI. Homematic-Funk für Thermostate und Licht. MySensors als Basis für eigene HW.
Zentrale ist der MAPLE-CUL mit RFM69+HModUART-AddOn.
Doku zu meinen Projekten: Github/Ranseyer. Platinen falls verfügbar gerne auf Anfrage.
Support: gerne wenn ich Zeit+Lust habe im Forum. Nicht per PN!

Fritz Muster

Zitat von: Ranseyer am 29 Januar 2021, 13:15:58...für stabile 5V beim Flashen sorgen ? (falls noch nicht geschehen)

Habe jetzt 5 -10 unterschiedliche USB Netzstecker probiert. Alles ohne Erfolg.

Zitat von: Ranseyer am 29 Januar 2021, 13:15:58Ich habe dazu immer ein kurzes USB Kabel an den Rechner.
Von "USB-Wandler" (meist FTDI) habe ich nur GND, RX+TX an den Maple verbunden um den Bootloader zu flashen.

USB <=> FTDI Adapter ca. 40cm Kabellänge

Würde jetzt mal versuchen den MSC Bootloader zu flashen. Finde aber keine Infos für mich Dummy dazu. Alles was ich finde ist für mich High Level Kommunikation/Info. Habe eine .ino Datei gefunden die ich auf den Maple uploaden muss. Aber wie geht das? Habe in der Vergangenheit mal einige nanoCuls und auch Tasmotas geflasht, aber hier komme ich irgenwie nicht weiter. ICh weiß das das nicht Deine Baustelle ist, aber kannst Du mich evtl. in die richtige Richtung stupsen?

Danke und viele Grüße
Fritz
RasPi 3B+, Stretch, Fhem 5.9, DBlog SQLite
HMLAN, mapleCUN MAX/WMBus, mapleSduino 868/433/868
HM Sensoren/Aktoren ,Technoline TX 29 DTH-IT, TFA 30.3155WD, MAX!
Hour Counter, Astro, EletricityCounter, Statistics, Charting Frontend, TabletUI, Modbus

Ranseyer

Das wäre der Bootloader zum Flashen: https://forum.fhem.de/index.php/topic,101610.msg951552.html#msg951552
Mehr weiss ich auch nicht mehr.

Also einfach diesen so wie den V20 flashen. Falls der Maple Kaputt ist würde das natürlich nichts bringen. Aber schlechter kann es eh kaum werden... :'(
FHEM mit FTUI. Homematic-Funk für Thermostate und Licht. MySensors als Basis für eigene HW.
Zentrale ist der MAPLE-CUL mit RFM69+HModUART-AddOn.
Doku zu meinen Projekten: Github/Ranseyer. Platinen falls verfügbar gerne auf Anfrage.
Support: gerne wenn ich Zeit+Lust habe im Forum. Nicht per PN!

Fritz Muster

Danke, das war die Lösung!!

Habe die Datei https://forum.fhem.de/index.php/topic,101610.msg951552.html#msg951552 geflasht. Danach Maple via USB angeschlossen und es wurde ein USB Laufwerk angezeigt. Dort im obersten Verzeichnis dann die Datei "MapleCUNx4_W5500_BL.bin" kopiert. Dann USB Verbindung getrennt und wieder angesteckt. Jetzt läuft der Maple.

Vielen Dank!!
Fritz
RasPi 3B+, Stretch, Fhem 5.9, DBlog SQLite
HMLAN, mapleCUN MAX/WMBus, mapleSduino 868/433/868
HM Sensoren/Aktoren ,Technoline TX 29 DTH-IT, TFA 30.3155WD, MAX!
Hour Counter, Astro, EletricityCounter, Statistics, Charting Frontend, TabletUI, Modbus

Ranseyer

Das freut mich. Aber abgesehen von dem anderen Flashen verhalten sich die beiden Bootloader ziemlich gleich...

A) Also könnte man vermuten der Bootloader war fehlerhaft geflasht. (Ich glaube aber es gab ein korrektes "Verify" nach dem Flashen)
B) Oder es könnte der falsche Bootloader gewesen sein
C) Keine Ahnung
FHEM mit FTUI. Homematic-Funk für Thermostate und Licht. MySensors als Basis für eigene HW.
Zentrale ist der MAPLE-CUL mit RFM69+HModUART-AddOn.
Doku zu meinen Projekten: Github/Ranseyer. Platinen falls verfügbar gerne auf Anfrage.
Support: gerne wenn ich Zeit+Lust habe im Forum. Nicht per PN!