BLHeli Tool Probleme

#1
Hi Leute,

ich hab heute mal versucht mich an meinem MultiWii Pro 2.0 von Hobbyking zu vergehen ;)

Dazu hab ich mit owsilprog einen OlliW Programmer aus meinem FC gemacht. Sah auch im Log sehr vielversprechend aus . Siehe Screenshot.

Dann hab ich die Kabel angelötet und eine Stiftleiste an den ISP Port des 2560 angelötet. Siehe auch wieder Screenshot.
Pinbelegung hab ich mir hier abgeschaut : http://letsmakerobots.com/node/35649

Wenn ich jetzt aber versuche mit dem BLHeliTool den ESC zu flashen, bekomm ich immer einen

Flash hex file... Please wait!
Opening port COM4 FAILED!

als Fehlermedung. Schließe ich dann das BLHeliTool und öffne AVRBurn kann ich mich ganz normal mit COM4 verbinden.

Hier mal noch meine BLHeliTool.ini

;---------------------------------
; THIS FILE MUST NOT BE CHANGED! ;
;---------------------------------
[PORT]
Port=COM4
Baudrate=38400

[SYSTEM]
XPos=871
YPos=275
AvrBurnToolFile=AvrBurnTool_v101.exe
HelpXPos=150
HelpYPos=100
HelpWidth=500
HelpHeight=500
TerminalFile=BrayTerminal.exe

[TIMING]
ReadIntervalTimeout=4294967295
ReadTotalTimeoutMultiplier=0
ReadTotalTimeoutConstant=0
SilExecuteCmdTimeOut=30
SilOpenPortDelay=10
FastFlash=1

[DIALOG]
OptionInvalidColor=0xaaaaff
OptionValidColor=0xbbffbb
OptionModifiedColor=0xffbbbb

[TARGET]
MotorPole=6
Pinion=9
MainPinion=64

[BESC]
Revison=
Layout=
Mode=

[MULTIPLEESC]
CloneMode=default

[FLASH]
HexFileDir=BLHeliHexFiles
BESC=TURNIGY_PLUSH_12A
REV=10_4
MODE=MULTI
Hat dazu jemand von euch ne Idee, bin für jede Hilfe Dankbar ?

Gruß

Marcus

2560.JPG
avrburn.jpg
blheli.jpg
 
Zuletzt bearbeitet:
#2
Ein wenig mehr suchen hat mich dann darauf gebracht, das man den owsilprog eventuell abfragen kann. Also hab ich mein Terminalprogramm auf COM4 zugreifen lassen und mal ein "v" und ein "d" abgesetzt.

Kommunikation mit dem F330 scheint möglich zu sein. Allerdings sagt das BLHeliTool immer noch " opening COM4 failed"

strange

terminal.jpg terminal2.jpg
 

stars112

Fortgeschritten :-)
#5
Du hast nur geschrieben dass Du Kabel an den 2560 gelötet hast. Nicht aber dass Du auch die Progsoftware hochgeladen hast.
ist ja eigentlich selbstverständlich aber ich habe ja auch schon komische Dinge vor der Apotheke gesehen.
 

OlliW

Erfahrener Benutzer
#7
Hallo mcblack

ja, das ist ja mal wirklich seltsam

auf den ersten und zweiten Blick sieht alles absolut richtig aus... und als Drittes muss ich gestehen das ich nicht wirklich ein Win-Programmierprofi bin, also keineswegs alle Tricks und Fallstricke kenne, gerade wenn es an Geräte etc geht...

wenn du auf den Pfeil rechts neben dem PortFeld gehst öffnet sich ein dropdown-Fenster, was wird da angezeigt??

ich kann nur raten/vermuten, dass aus irgendeinem mir nicht sofort ersichtlichen Grund die Routinen für die serielle Schnittstelle nicht mit dem CP2102-Treiber zusammenarbeiten...

Olli

PS: nur um es gefragt zu haben, während du BLHeliTool benutzt ist Com4 nicht etwa anderweitig in Benutzung?
 
#8
Hi Olli,

ja sehr seltsam das ganze. Ich dachte auch das es eventuell was mit dem 2102 zu tun hat, aber wenn ich den ESC weg lasse bekomme ich nach einem "d" in der Konsole ein "derr" zurück. Also geh ich jetzt mal davon aus, das die Kommunikation mit dem ESC, wenn er angeschlossen ist passt.

Hattest Du das Programm mal unter Win7 64Bit getestet ? Oder soll ich mal XP versuchen ?

wenn du auf den Pfeil rechts neben dem PortFeld gehst öffnet sich ein dropdown-Fenster, was wird da angezeigt??

ich kann nur raten/vermuten, dass aus irgendeinem mir nicht sofort ersichtlichen Grund die Routinen für die serielle Schnittstelle nicht mit dem CP2102-Treiber zusammenarbeiten...

Olli

PS: nur um es gefragt zu haben, während du BLHeliTool benutzt ist Com4 nicht etwa anderweitig in Benutzung?
blheli-2.jpg

Siehe Screenshot. Und nein mein Terminalprogramm hab ich beendet bevor ich BLHeliTool überhaupt gestartet habe. Ich dachte eigentlich ich wäre am Ziel nachdem ich das ganze auf den Flightcontroller aufspielen konnte und er auf der seriellen dann auch noch korrekt geantwortet hat ;)

Anbei noch ein Screenshot meines Windows Gerätemanagers :

geraete.jpg

Gruß

Marcus
 
Zuletzt bearbeitet:

OlliW

Erfahrener Benutzer
#9
Hallo Marcus,
Danke für die guten Zusatzinfos
ja, ich denke auch das die Kommunikation mit dem ESC soweit funktioniert, ein dok ist zumindestens immer gut
BLHeliTool läuft bei mir auf Win7 64 bit (und XP)
allerdings habe ich es tatsächlich nie mit nem silabs usb Treiber benutzt, habe nur Teile mit FTDI's... ob's daran liegt? (habe bisher allerdings keinerlei Rückmeldungen erhalten dass es mit Silabs nicht gehen würde)...
Sorry, aber ich bin im Moment einigermassen ratlos was da schief gehen könnte (vielleicht doch etwas mit den Rechten bei Win7? also vielleicht ist XP ein Versuch wert?)
Olli
 
#10
Hi Olli,

leider ist auch unter XP nix zu wollen. Gleiches Resultat.

Gibt es denn noch mehr Möglichkeiten per Serial Werte des ESCs abzufragen, so das man sicher sein kann kein Problem in der Kommunikation zu haben ?

Kann man womöglich sogar über serial den Flash Prozess starten ? Oder ist das sogar per x- oder z-modem gemacht ?

Gruß

Marcus
 

OlliW

Erfahrener Benutzer
#11
leider ist auch unter XP nix zu wollen
schade

du kannst im Prinzip per Serial ALLES machen was BLHeliTool auch macht... auch den flash... es ist halt nur mühseliger...
(wenn ich so nachdenke, müsste es eigentlich gehen alles in eine ASCII-Datei zu schreiben und die per Serial zu schicken)

der nächste Schritt nach dem dok wäre ein erase (also e) durchzuführen, wenn du eok bekommst sollte (erfahrungsgemäss) wirklich alles klappen... allerdings ist der Chip dann wirklich gelöscht, wird also erst wieder funktionieren wenn du die BLHeli-Hex (irgendwie) aufgespielt hast (und deswegen hätte ich mich nicht getraut dir das vorzuschlagen das zu machen).

du könntest auch das "Konkurenz"-Produkt von Achim/4712 ausprobieren (BLHeli-Setup)... (Achim ist bzgl Win-Programierung fitter als ich)...
 
#12
Hi Olli,

danke für die ganzen Antworten und die Zeit die Du dir nimmst. Das BLHeli-Setup werd ich mir mal anschauen.

Gibt es eigentlich ein Command zum auslesen des verbundenen Chips ? Also kann man irgendwie sicherstellen das die Commands am F330 des ESC und nicht am 2102 des Flightcontrollers ankommen ?

Oder hast Du vielleicht ne Kommandoreferenz für OWSilProg ?

Gruss

Marcus
 

OlliW

Erfahrener Benutzer
#13
Gibt es eigentlich ein Command zum auslesen des verbundenen Chips ? Also kann man irgendwie sicherstellen das die Commands am F330 des ESC und nicht am 2102 des Flightcontrollers ankommen ?
die Frage verstehe ich nicht genau wie sie gemeint ist... man kann checken welcher Chip dran hängt (d), und man kann den Inhalt des Flashs auslesen (br) (wenn es der Chip erlaubt, er kann nämlich gesichert werden, was Hersteller natürlich machen), jedes Commando liefert eine Rückmeldung, und wenn die sinnvoll ist darf man davon ausgehen dass die Commandos am ESC ankommen

Oder hast Du vielleicht ne Kommandoreferenz für OWSilProg ?
ja... alle Basic-Kommandos habe ich auf meiner Web-Seite gelistet und beschrieben. Es gibt noch ein paar wenige weitere, z.B. um das Multiple-ESC-Feature zu ermöglichen, welche nicht "dokumentiert" sind (ist kein Geheimnis, war ich nur zu faul zu)
 
#14
Hi Olli,

ich hoffe ich nerv Dich mit dem Thema hier nicht allzusehr. Wenn es nicht geht, dann eben nicht, dann besorg ich mir noch die notwendigen Teile für eine deiner Beispiel BLHeli Boxen.
Trotzdem bin ich neugierig und würde das gerne zum laufen bringen, vielleicht bringt es ja interessante Erkenntnisse.



die Frage verstehe ich nicht genau wie sie gemeint ist... man kann checken welcher Chip dran hängt (d), und man kann den Inhalt des Flashs auslesen (br) (wenn es der Chip erlaubt, er kann nämlich gesichert werden, was Hersteller natürlich machen), jedes Commando liefert eine Rückmeldung, und wenn die sinnvoll ist darf man davon ausgehen dass die Commandos am ESC ankommen
Ich dachte man bekommt vielleicht eine Modellnummer und Firmware Stand. Ähnlich wie "v" auf dem Terminal die Version des OWSilProgs zurückgibt. Aber in deiner Doku hab ich dazu auch was gefunden. Siehe unten.


ja... alle Basic-Kommandos habe ich auf meiner Web-Seite gelistet und beschrieben. Es gibt noch ein paar wenige weitere, z.B. um das Multiple-ESC-Feature zu ermöglichen, welche nicht "dokumentiert" sind (ist kein Geheimnis, war ich nur zu faul zu)
Ah jetzt ja, eine Insel ähhhhh Doku. Die hab ich irgendwie die ganze Zeit übersehen, sorry.
Ich werd damit mal heute Abend was versuchen, denn komischerweise bekomm ich ja einen "dokFF" zurück, laut deiner Beschreibung sollta aber ein "dok0A" bei einem F330 zurückkommen (ist rin Turnigy Plush 12A). Irgend eine Idee was das bedeuten könnte ?

Gruß

Marcus
 

OlliW

Erfahrener Benutzer
#15
ich hoffe ich nerv Dich mit dem Thema hier nicht allzusehr.
mach dir keinen Kopf... wenn ich keine Lust gehabt hätte zu Antworten dann hätte ich nicht geantwortet.. LOL
Trotzdem bin ich neugierig und würde das gerne zum laufen bringen, vielleicht bringt es ja interessante Erkenntnisse.
geht mir genauso... ist schon sehr komisch
ohhh... da habe ich dann nicht richtig aufgepasst... FF is nicht so gut... das sagt eigentlich dass die Kommunikation mit dem ESC nicht funktioniert... (z.B. wenn die ESC gar nicht angeschlossen ist)...
das hätte übrigens aber nichts mit deinem Wii Board zu tun, wäre auch mit ner Box so, deutet an dass z.B. die Anschlüsse nicht richtig sind, oder die ESC nicht richtig versorgt wird, oder die GND Leitung "schlecht" ist etc. pp

PS: ich habe die Doku gerade noch geringfügig erweitert
 

sceak

Kaltverformer
#16
Ich hatte das selbe Problem mit einem Arduino Pro Mini und FTDI. Ich habe festgestellt dass genau diese Kombination nicht funktioniert, mit dem selben Fehlerbild wie bei dir. Nach langer Fehlersuche bin ich zu der Erkenntnis gekommen dass es wohl am FTDI liegen muss. Vielleicht sogar speziell mit meinem Modell (Flyduino).

Ich habe mir dann einfach einen UNO bestellt und alles ging auf Anhieb.

Sorry wenns fehl am Platz ist, ich habe nicht alles aus diesem Thread gelesen, bei mir wars aber auch so, übern Serial alles ok, mit dem Tool kein Connect.
 
Zuletzt bearbeitet:
#17
Hi Olli,

jetzt wird's langsam kurios. ;)

Ich versuch über mein Terminalprogramm auf den ESC über den OWSilprog zuzugreifen. Schick ich ein "v" bekomm ich die Version des OWSilprog. Schick ich ein "d" bekomm ich "dokFF". Soweit so schlecht.

Schick ich jetzt ein "i" bekomm ich "iok". Schick ich jetzt wieder ein "d" bekomm ich "dok0A". Somit sollte die Kommunikation zum F330 jetzt bestehen.

Was macht denn das BLHeli Tool wenn man auf "Flash" klickt ? Denn irgend einen Unterschied muss es ja zu meinem Terminalprogramm geben.

Die Setting die ich in meinem Terminalprogramm benutze sind folgende :

Speed : 38400
Databits : 8
Parity : none
Stopbit : 1
No-Flow-Control


Kannst Du mir vielleicht mit dem "bw" command ein wenig helfen ? Wie muss ich das benutzen ? Wo bekomm ich die Adresse her und wie übermittle ich die Daten ?

Gruß

Marcus
 

OlliW

Erfahrener Benutzer
#18
das ist nicht kurios das man noch ein Komando vor dem d ausführen muss (siehe erste Anmerkung auf der Webseite)... v kommuniziert nur über die serielle mit dem AVR, die Kommunikation mit dem ESC läuft über die sogenannte C2 Schnittstelle, und die muss erst aufgesetzt werden damit das funktioniert... es hätte allerdings ein r vor dem d kommen müssen, also vrd, damit die e oder bw funktionieren muss noch ein i kommen, also z.B. vrdi

bei "Flash" passiert viel, was damit zu tun hat dass das chip erase manchmal bei Einigen Probleme macht und deswegen einige verschiedene Varianten und Protokolle abgefahren werden falls es nicht sofort klappt. In der einfachsten Variante (die eigentlich klappen soll) passiert
v
r
d
r
i
e
bw für alle Daten Zeilen des Hex Files

bw ist fürchterlich einfach da ide Daten-Zeilen aus dm Hex File direkt übernommen werden können, steht in der Hex also z.B. die Zeile :1000800002030406080C10182030406080020304AC drinnen, muss nur der Befehl bw:1000800002030406080C10182030406080020304AC abgesetzt wedren um die entsprechenden Daten zu schreiben.
 
#19
Hi Olli,

danke nochmal für die Hilfe. Leider hab ich das ganze mit dem MultiWii Controller nicht ohne Stress zum laufen bekommen. Ich konnte zwar auf der Shell den Controller flashen, aber nicht aus dem BLHeliTool.
Hab mir jetzt nen Arduino Uno mit Display besorgt und ne BLHeliBox gebaut. Das hat auf Anhieb funktioniert.

Wenn Du Interesse an einer Lösung hast und mich dazu als verlängerte Augen und Arm benutzen willst, sag bescheid. Ansonsten bleibt mir nur zu sagen

RESPEKT

Gruß

Marcus
 
FPV1

Banggood

Oben Unten