mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik JTAG-Adapter Black Magic Probe


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Luky S. (luky)
Datum:
Angehängte Dateien:

Bewertung
7 lesenswert
nicht lesenswert

Eine sehr interessante Alternative zu den bekannten kommerziellen (z.B. von Segger) und offenen (OpenOCD) JTAG Adaptern ist die Black Magic Probe.

Eine der Besonderheiten ist, dass der GDB Server direkt auf dem eingebauten STM32 Mikrocontroller läuft und man sich daher die nicht immer ganz unproblematische Einrichtung eines lokalen GDB Servers auf dem PC sparen kann. Es ergeben sich zudem Vorteile bei der Geschwindigkeit und Stabilität der Verbindung zum zu debuggenden Mikrocontroller.

Aktuell werden diverse Cortex-M0, M3 und M4 von Atmel, Nordic, NXP / Freescale, Silicon Labs, Texas Instruments und ST unterstützt, die Entwickler versprechen jedoch die Unterstützung weiterer Typen und auch von "größeren" Controllerserien wie z.B. den Broadcom-Chip auf den Raspberrys.

Hardwareseitig verfügt der Adapter über Levelshifter (1,71 bis 5V Zielspannung), kann dem Ziel aber leider nur fixe 3,3V zur Verfügung stellen.

Hardwarefiles und die Firmware sind Open Source. Nähere Informationen und Bezugsquellen gibt es auf der Projektseite.


: Bearbeitet durch Admin
Autor: Uwe B. (Firma: TU Darmstadt) (uwebonnes)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Man kann den BMP auch auf verschiedene Hardware aufspielen:
https://embdev.net/articles/STM_Discovery_as_Black_Magic_Probe

Bei den STLinks geht es allerdings nur mit V2.1 problemlos.

Bei STlink v1 und v2 ist nur ein STM32F1038B verwendet. Da die Firmware 
+ Bootloader inzwischen grosser 64 kiB ist, muss man sich auf 
ungetestetes Flash oberhalb von 64 kiB verlassen und zum Aufspielen der 
Firmware mittels DFU Werkzeug verwenden, was oberhalb des annonzierten 
Flash schreiben kann (dfu-util sourcefore head).

Autor: Baldrian (Gast)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Eine einfacher und preiswerter Weg, um zu einem JTAG-Adapter zu kommen 
führt über diese Webseite:

https://medium.com/@paramaggarwal/converting-an-stm32f103-board-to-a-black-magic-probe-c013cf2cc38c#.btn6lnwqe

Zitat:"Using the $2 (Blue Pill) STM32 board we can have a debugger that 
supports breakpoints. No need of OpenOCD server, as it runs a GDB server 
on chip directly."

Autor: Uwe B. (Firma: TU Darmstadt) (uwebonnes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auch BluePill hat nur einen STM32F103C8 und damit das Problem mit der 
Firmware > 56kiB.

Autor: W.S. (Gast)
Datum:

Bewertung
-2 lesenswert
nicht lesenswert
Baldrian schrieb:
> Eine einfacher und preiswerter Weg, um..

Der Beitrag in deinem Link ist ein ziemlicher Bockmist. Da referiert der 
Autor in der Art "drücken Sie den linken Knopf und schreiben Sie die 
folgende Kommandozeile hin.."

Ich hatte mal versucht, die Quellen zu diesem Projekt mit dem Keil zu 
übersetzen und bin von selbigem geradezu erschlagen worden mit 
Fehlermeldungen.

Soweit ich mich erinnere, war in diesen Quellen sogar ne void Funktion, 
die ein Ergebnis liefern wollte (return xyz;) - kurzum, dieses Projekt 
ist ein Pfusch, daß es einen graust. Die lapidare Bemerkung in dem Link 
"Ignore any errors that might occur." spricht Bände.

Wenn diese Eierköpfe es fertiggebracht hätten, ihr Zeug ordentlich zu 
schreiben und vielleicht sogar eine lesbare Dokumentation zu verfassen, 
dann könnte daraus was werden, so aber nicht.

W.S.

Autor: Uwe B. (Firma: TU Darmstadt) (uwebonnes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
arm-none-eabi mit "-Wall -Wextra -Werror " kompiliert ohne Spotzer. Wo 
sind die Probleme mit Keil?

Autor: Info (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>70€

Autor: A. B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist ganz nett für "ältere" Chips. Ansonsten hat man ständig das 
Problem, den Firmware-Updates hinterher zu laufen. Mal schnell die 
Unterstützung der neuesten Varianten (z. B. 32h7) einzubauen, geht auf 
dem Host doch etwas bequemer.

Und grundsätzlich hat mehr "Intelligenz" im Adapter natürlich das 
Problem, dass jede Chip-Variante die Firmware aufbläht und aufbläht und 
... bis ... na ja, halt kein Platz mehr da ist. Siehe J-Link V8 -> V9.

Das gleiche Spielchen gabs auch schon bei EPROM-, GAL- ... Programmern. 
Wenn sich viele Bausteine durch mehr oder minder generische Algorithmen 
erledigen lassen, geht's lange gut. Aber wenn jeder Chip seine 
Extrawürste haben will, wird's schnell ärgerlich.

Oder man verzichtet zunächst mal auf die ganz "exotischen" Sachen wie 
sector protection, pcrop, secure mode, otp und wie sie alle heißen. 
Solange man die nicht braucht, ist das Entwickeln mit dem BMP sicher 
ganz ok.

Autor: Guest (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
https://www.segger.com/news/segger-introduces-j-link-edu-mini-a-low-cost-j-link-for-education/

18$ (~16 Euro) für einen originalen J-Link von SEGGER. Respekt an die 
Jungs von  Black Magic Probe, die sich die Arbeit gemacht haben, aber 
wieso sollte man sich bei dem Preis noch solche Projekte antun?

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sehe ich auch so, vor allem die Hardware kostet mehr als ein J-Link EDU:
https://1bitsquared.de/products/black-magic-probe

J-Link EDU:
https://www.segger.com/purchase/pricing/jlink-related/

Fairerweise muss man natürlich sagen das der Black Magic Probe 
wahrscheinlich auch kommerziell eingesetzt werden darf...aber das 
wiederum macht wahrscheinlich auch keiner weil dann lieber 
professionelle Tools wie der normale J-Link benutzt werden.

Autor: Chris F. (chfreund) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der echte Preis von dem Teil ist dann auch genau 60€:

http://www.ak-modul-bus.de/cgi-bin/iboshop.cgi?showd0!0,703617397978247,J-Link_EDU

Autor: Michi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Chris F. schrieb:
> Der echte Preis von dem Teil ist dann auch genau 60€:

Das ist dann aber der alte normale, nicht der neue (vermutlich noch 
nicht verfügbare) MINI.

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michi schrieb:
> (vermutlich noch nicht verfügbare)

Doch, ist schon verfügbar, kann man über die Distis oder direkt im 
Online Shop kaufen: 
http://shop-us.segger.com/J_Link_EDU_mini_p/8.08.91.htm

Autor: Chris F. (chfreund) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Achso, okay. Das "MINI" stand beim Beitrag vorher nicht dabei. Ich sehe 
es jetzt auch.

Autor: Uwe B. (Firma: TU Darmstadt) (uwebonnes)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Der Steckverbinder am Segger Mini ist aber im 0.05 inch Raster. Adapter 
auf "normales" 0.1 mm Raster kosten deutlich.

Wie bringt man den den Segger auf der Kommandozeile unter Linux zum 
Laufen, um dann mit dem gdb zu arbeiten? Die Anzahl an noetigen Optionen 
erscheint mir fast unendlich.

Beim BMP, z.B. auf einem Nucleo ist das nur
- anstecken am USB
- arm-non-eabi-gdb xxx.elf
und im gdb
-- tar ext /dev/ttyACM0
-- mon s
-- att 1

Und bei den aelteren STM Disco Boards hatte man durch das Umflashen auf 
BMP auch einen seriellen Kanal, den die aelteren STLinks nicht hatten

Autor: Bernd K. (prof7bit)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guest schrieb:
> 
https://www.segger.com/news/segger-introduces-j-link-edu-mini-a-low-cost-j-link-for-education/
>
> 18$ (~16 Euro) für einen originalen J-Link von SEGGER.

Hey, bis jetzt kannte ich nur den normalen EDU (~50€), der Mini muss 
ziemlich neu sein. Danke für den Hinweis! Damit stößt der J-Link ja nun 
endgültig auch in die Preisregionen selbst des geizigsten denkbaren 
Bastlers (GDB) vor.

Auch wenn alles closed ist kann ich einen J-Link aufgrund überragender 
Nützlichkeit und Qualität nur wärmstens empfehlen. Und alles läuft 
übrigens auch problemlos unter Linux.

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gehen die billigen STLink clones aus China wirklich dafür?

Wenn Ja dann kaufe ich mir mal davon 2 Stück.
Denn Billiger geht es dann nicht mehr.

Grüsse, Peter

Autor: Bernd K. (prof7bit)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uwe B. schrieb:
> Wie bringt man den den Segger auf der Kommandozeile unter Linux zum
> Laufen, um dann mit dem gdb zu arbeiten?

Du musst erst den gdb server starten (anders als bei der BMP ist das bei 
Segger ein Stück Software auf dem PC). Es laufen also 2 Prozesse auf dem 
PC: Der J-Link gdb-Server und der eigentliche gdb.

Autor: Uwe B. (Firma: TU Darmstadt) (uwebonnes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also nochmals genauer gefragt:
Wie startet man dem J-Link gdb-Server? Mit derHilfestellung, die der gdb 
server gegeben hat, habe ich nach einigen Versuchen aufgegeben...

Autor: Uwe B. (Firma: TU Darmstadt) (uwebonnes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter schrieb:
> Gehen die billigen STLink clones aus China wirklich dafür?
>
> Wenn Ja dann kaufe ich mir mal davon 2 Stück.
> Denn Billiger geht es dann nicht mehr.
>

Die billigen Clone haben einen STM32F103C8. Aktueller BMP Bootloader + 
Firmware ist > 64 kB. Zwar habe ich noch von keinem STM32F103C8 gesehen, 
der nicht Flash bis 128 k hat, aber das macht zwei Probleme:
- Geht der Flash ueber 64 k wirklich?
- Wie laedt man den Flash ueber 64 k?

Sowohl fuer dfu-utils als auch fuer bmp/src/tools/stm32_mem.py haben da 
Probleme. Allerdings haengen in den Projekten Patches von mir, die das 
Problem bei mir behoben haben. Ruecklesen des Flashes um Fehler zu 
finden waere zwar schoen, gibt es aber noch nicht.

Man kann aber auch die Liste der unterstuetzten  Devices in makefile und 
Quellen kuerzen, und so unter der 64 k Grenze bleiben oder aeltere 
Versionen verwenden...

Autor: Axel S. (a-za-z0-9)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uwe B. schrieb:
> Also nochmals genauer gefragt:
> Wie startet man dem J-Link gdb-Server?

So wie es im Manual steht?

UM08001_JLink.pdf, Kapitel 3.3 "J-Link GDB Server"

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gut, also bestelle ich mir diese Clones.

In der Liste der unterstützten devices ist für mich sowieso vieles drin 
was ich nicht brauche. Wird somit gekürzt.

Speicher zu nutzen den es ofiziell nicht gibt, halte ich für gewargt.
Auch wenn es nur ein weiterer Debugger wird halte ich nichts davon.

Grüsse, Peter

Autor: Chris F. (chfreund) Benutzerseite
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
So eine Adapterplatine für den Atmel-Ice von 0,05 auf diverse andere 
Größen hatte ich mal gebaut. ( http://aug3.de/swd/ )Ist der kleine 
Stecker vom Ice kompatibel zum "mini"?

Autor: Gerd E. (robberknight)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter schrieb:
> Gehen die billigen STLink clones aus China wirklich dafür?

Ja, die gehen.

Siehe 
https://embdev.net/articles/STM_Discovery_as_Black_Magic_Probe#Using_cheap_STLink-clones

: Bearbeitet durch User
Autor: Johannes S. (jojos)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Gestern habe ich versucht aus einem low cost STLink Clone (Weltmarke 
'Baite') eine Black Magic Probe zu machen. Bisher erfolglos wollte ich 
schreiben und habe die Prozedur nochmal protokolliert. Ich hatte ein BMP 
USB device, aber beim Schreiben auf den COM-port für den GDB hat sich 
das Br@y Terminal aufgehängt. Bis ich jetzt auf die Idee kam das DTR zu 
setzen, und schon meldete sich BMP im Terminal. Nur in Eclipse klappt es 
noch nicht, die Verbindung mit gdb wird kurz gemacht aber kein Program 
geladen und gdb wird wieder beendet.

Aber da ich die Prozedur jetzt schon aufgeschrieben hatte:

Dazu gibt es verschiedene Anleitungen, ich habe letzendlich das Tool 
stm32flash und die binaries von Uwe aus dem hier verlinkten Artikel 
benutzt. Das stm32flash war nötig weil der Baite die SWD Pins nicht 
beschaltet hat, für den seriellen Bootloader sind Pads vorhanden und 
über einen seriellen USB Adapter lässt sich der STM32F103C8 auf der 
probe flashen.
Das 64 k Problem ist mir bekannt, stm32flash meldet aber auch das ich 
ein device mit 128 kB habe und kann >64 kB brennen. Die übersetzten 
Binärfiles in dem Artikel sind allerdings noch releases von 2016 und mit 
Bootloader knapp unter 64k.
Mit dem stm32flash putze ich also zunächst den Speicher und brenne dann 
die beiden Binärdateien.
stm32flash.exe -k COM6
stm32flash 0.5

http://stm32flash.sourceforge.net/

Interface serial_w32: 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
Read-UnProtecting flash
Done.

stm32flash.exe -u COM6
stm32flash.exe -o COM6
// Ausgaben melden ok, weggelassen

stm32flash.exe -w Blackmagic_dfu-v1.6-rc0-213-gdf7ad91.bin -v COM6
stm32flash 0.5

http://stm32flash.sourceforge.net/

Using Parser : Raw BINARY
Interface serial_w32: 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 0x08001a54 (100.00%) Done.

stm32flash.exe -e 0 -S 0x08002000 -w Blackmagic-v1.6-rc0-213-gdf7ad91.bin -v COM6
stm32flash 0.5

http://stm32flash.sourceforge.net/

Using Parser : Raw BINARY
Interface serial_w32: 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
Wrote and verified address 0x0800f604 (100.00%) Done.

: Bearbeitet durch User
Autor: soundso (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich habe mich vor Jahren(so um 2010 herum) mit OpenOCD und GDB 
beschäftigt und bin damals zum Schluss gekommen, dass GDB einfach 
furchtbar und unstabil ist. Liegt evtl auch an Eclipse das man damals 
noch selbst für die ARM Cortex mit CDT-Plugin usw. fit machen musste.

Seit jener Zeit setzte ich Keil und ST-Link ein und hatte nie 
irgendwelche Probleme mit Verbindungen oder Instabilitäten.

Wie schaut das Heute aus? Kann mir jemand GDB schmackhaft machen? Oder 
soll ich einfach weiter bei Keil bleiben. Die Litzenzkosten sind halt 
schon ein Argument dagegen ...

Autor: Johannes S. (jojos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hier in diesem Thread geht es ja um die BMP, also auch eine Alternative 
zu OpenOCD, mit einer schlauen Debug Probe + gdb anstelle von OOCD+dumme 
debug probe+gdb. Ich habe es gerade zum Laufen bekommen und es tut was 
es soll, download ist schnell und stepping reagiert auch sehr zügig.
Die Launch Configuration hat mich einiges an rumprobieren gekostet, aber 
da BMP ja weniger Konfiguration braucht ist es letzendlich einfacher.
Bis jetzt gefällt es mir, der 3$ ST-Link ist jetzt ein universeller 
Debugger.

Autor: Uwe B. (Firma: TU Darmstadt) (uwebonnes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
https://github.com/blacksphere/blackmagic/pull/318 macht SWD mit der BMP 
schneller.

Autor: Johannes S. (jojos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hier ist noch eine Anleitung für den Baite: 
https://wiki.cuvoodoo.info/doku.php?id=jtag

Da gibt es einen PR für eine angepasste Belegung der UART Signale. Den 
Fork von 'tsaitgaist' bekomme ich kompiliert und geladen, aber damit 
bekomme ich keine Verbindung mehr zum Target ('monitor target' listet 
keine Verfügbaren auf) und der UART als Nullmodem tut auch nix.
Hat hier jemand zufällig diese Version laufen?

Autor: Johannes S. (jojos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uwe B. schrieb:
> https://github.com/blacksphere/blackmagic/pull/318 macht SWD mit der BMP
> schneller.

das habe ich jetzt mal in meine Kopie reinkompiliert und wollte es per 
DFU Update laden. Das stm32_mem.py hatte zunächst gemeckert weil ich 
kein 'usb' Modul hatte, mit 'pip install pyusb' habe ich hoffentlich das 
richtige installiert.

Das Update bricht aber mit einem nicht abgefangenen Fehler ab, die 
Meldung sagt mir erstmal nix, was läuft da schief?
D:\Projects\Sn\ARM\STM32\BlackMagicProbe\blackmagic\src>c:\Python27\python.exe ..\scripts\stm32_mem.py blackmagic.bin

USB Device Firmware Upgrade - Host Utility -- version 1.2
Copyright (C) 2011  Black Sphere Technologies
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

Device ID:       1d50:6018
Manufacturer:    Black Sphere Technologies
Product:         Black Magic Firmware Upgrade (Baite)
Serial:          E1E7D0DA
Failed to read device state! Assuming APP_IDLE
Traceback (most recent call last):
  File "..\scripts\stm32_mem.py", line 155, in <module>
    dfudev.detach()
  File "D:\Projects\Sn\ARM\STM32\BlackMagicProbe\blackmagic\scripts\dfu.py", line 92, in detach
    None, value=wTimeout, index=self.index)
  File "c:\Python27\lib\site-packages\usb\legacy.py", line 211, in controlMsg
    timeout = timeout)
  File "c:\Python27\lib\site-packages\usb\core.py", line 1043, in ctrl_transfer
    self.__get_timeout(timeout))
  File "c:\Python27\lib\site-packages\usb\backend\libusb0.py", line 593, in ctrl_transfer
    timeout
  File "c:\Python27\lib\site-packages\usb\backend\libusb0.py", line 431, in _check
    raise USBError(errmsg, ret)
usb.core.USBError: [Errno None] libusb0-dll:err [control_msg] sending control message failed, win error: Ein an das System angeschlossenes Gerõt funktioniert nicht.

Autor: Uwe B. (Firma: TU Darmstadt) (uwebonnes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Johannes,

mehr Kontext!
Ging es vorher?
Ist das normales Windows oder Windows in einer VM? BMP/ STlink als BMP/ 
Bluepill/Baite?
Nach dem Crash sollte der BMP im Bootlaoder sein. Geht der naechste 
Versuch?

Kannst Du das mal unter Linux probieren?

Autor: Johannes S. (jojos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke,
das war der erste Versuch mit dem DFU Bootloader. HW ist wie in Posts 
zuvor ein Baite ST-Link Clone, platform SW ist dieser PR: 
https://github.com/blacksphere/blackmagic/pull/274/files

Das Protokoll war schon vom zweiten Versuch, der erste sah ähnlich aus:
USB Device Firmware Upgrade - Host Utility -- version 1.2
Copyright (C) 2011  Black Sphere Technologies
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

Device ID:       1d50:6018
Manufacturer:    Black Sphere Technologies
Product:         Black Magic Firmware Upgrade (Baite)
Serial:          E1E7D0DA
Failed to read device state! Assuming APP_IDLE
Invoking DFU Device
Device ID:       1d50:6018
Manufacturer:    Black Sphere Technologies
Product:         Black Magic Firmware Upgrade (Baite)
Serial:          E1E7D0DA
Traceback (most recent call last):
  File "..\scripts\stm32_mem.py", line 171, in <module>
    dfudev.make_idle()

Getestet im native Win7, ich habe eine Ubuntu VM, da ist aber nicht 
alles installiert. Kompiliert hatte ich das in einer MinGW Umgebung 
unter Windows.
Initial habe ich BMP per stm32flash übertragen, aber dazu müssen Kabel 
an den Adapter gelötet werden, DFU Update ist natürlich bequemer.

Beitrag #5299770 wurde vom Autor gelöscht.
Autor: Johannes S. (jojos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nach einer kleinen istall und update Orgie meines ungepflegten Ubuntus:
USB Device Firmware Upgrade - Host Utility -- version 1.2
Copyright (C) 2011  Black Sphere Technologies
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

Device ID:   1d50:6018
Manufacturer:   Black Sphere Technologies
Product:   Black Magic Probe (Baite)
Serial:     E1E7D0DA
Failed to read device state! Assuming APP_IDLE
Traceback (most recent call last):
  File "../scripts/stm32_mem.py", line 155, in <module>
    dfudev.detach()
  File "/home/jojo/Documents/blackmagic/scripts/dfu.py", line 92, in detach
    None, value=wTimeout, index=self.index)
  File "/home/jojo/.local/lib/python2.7/site-packages/usb/legacy.py", line 211, in controlMsg
    timeout = timeout)
  File "/home/jojo/.local/lib/python2.7/site-packages/usb/core.py", line 1043, in ctrl_transfer
    self.__get_timeout(timeout))
  File "/home/jojo/.local/lib/python2.7/site-packages/usb/backend/libusb1.py", line 883, in ctrl_transfer
    timeout))
  File "/home/jojo/.local/lib/python2.7/site-packages/usb/backend/libusb1.py", line 595, in _check
    raise USBError(_strerror(ret), ret, _libusb_errno[ret])
usb.core.USBError: [Errno 5] Input/Output Error
jojo@ubuntu:~/Documents/blackmagic/src$ 

sieht ähnlich aus. Ist das usbdfu.c in dem baite branch nicht mehr 
aktuell?
Der BMP selber funktioniert auch in der Ubuntu VM.

: Bearbeitet durch User
Autor: Uwe B. (Firma: TU Darmstadt) (uwebonnes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nach installationsorgie unter Virtualbox Win10 (python3, pyusb, zadig) 
und Anpassungen von dfu.py/stm32_mem an python 3 
(https://github.com/UweBonnes/blackmagic/tree/python3) konnte ich einen 
BMP/STLINK unter win10 flashen.

Vermutlich hat der "baite branch" (Url?) die Aenderungen am Bootloader 
nicht nachgezogen. Da ich keinen " Baite" habe, kann ich hier nicht 
testen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.