Brushless ESC als RC (Licht)schalter

skyfreak

a freak on a leash
sodala jetza en detail.
so langsam habe ich ja die vermutung, dass der Fehler mal wieder genau vor dem screen sitzt :(

also ... und gleich sorry für die schlechten smartphone bilder :(

wie bereits mehrfach erwähnt habe ich erneut den arduino nano V3 von saintsmart mit der Anleitung von lazyzero => http://lazyzero.de/en/modellbau/kkmulticopterflashtool/arduinousblinker zu einem 'ArduinoUsbLinker' gemacht.

so sieht mein verkabelter ESC 6A vom HK aus

IMG_0376.JPG

ab in den nadelständer

IMG_0378.JPG

der USBASP der dran hängt

IMG_0377.JPG

kkflashtool

100.png

und flashen ... hier die gewünschte ausgabe

Code:
Flash the firmware from repository.

C:\Users\<...>\kkmulticopterflashtool_0.74\lib\avrdude\windows\avrdude.exe -C C:\Users\<...>\kkmulticopterflashtool_0.74\lib\avrdude\windows\avrdude.conf -p m8 -P COM16 -c usbasp -e -U lfuse:r:C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\/lfuse.hex:r -U hfuse:r:C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\/hfuse.hex:r 


avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: AVR device initialized and ready to accept instructions


Reading | ################################################## | 100% 0.02s


avrdude.exe: Device signature = 0x1e9307
avrdude.exe: erasing chip
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: reading lfuse memory:


Reading | ################################################## | 100% 0.00s


avrdude.exe: writing output file "C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\/lfuse.hex"
avrdude.exe: reading hfuse memory:


Reading | ################################################## | 100% 0.02s


avrdude.exe: writing output file "C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\/hfuse.hex"


avrdude.exe done.  Thank you.




C:\Users\<...>\kkmulticopterflashtool_0.74\lib\avrdude\windows\avrdude.exe -C C:\Users\<...>\kkmulticopterflashtool_0.74\lib\avrdude\windows\avrdude.conf -p m8 -P COM16 -c usbasp -e -U lfuse:w:174:m -U hfuse:w:202:m 


avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: AVR device initialized and ready to accept instructions


Reading | ################################################## | 100% 0.00s


avrdude.exe: Device signature = 0x1e9307
avrdude.exe: erasing chip
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: reading input file "174"
avrdude.exe: writing lfuse (1 bytes):


Writing | ################################################## | 100% 0.02s


avrdude.exe: 1 bytes of lfuse written
avrdude.exe: verifying lfuse memory against 174:
avrdude.exe: load data lfuse data from input file 174:
avrdude.exe: input file 174 contains 1 bytes
avrdude.exe: reading on-chip lfuse data:


Reading | ################################################## | 100% 0.02s


avrdude.exe: verifying ...
avrdude.exe: 1 bytes of lfuse verified
avrdude.exe: reading input file "202"
avrdude.exe: writing hfuse (1 bytes):


Writing | ################################################## | 100% 0.02s


avrdude.exe: 1 bytes of hfuse written
avrdude.exe: verifying hfuse memory against 202:
avrdude.exe: load data hfuse data from input file 202:
avrdude.exe: input file 202 contains 1 bytes
avrdude.exe: reading on-chip hfuse data:


Reading | ################################################## | 100% 0.02s


avrdude.exe: verifying ...
avrdude.exe: 1 bytes of hfuse verified


avrdude.exe done.  Thank you.


Flashing firmware from file.: C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\bs.hex


C:\Users\<...>\kkmulticopterflashtool_0.74\lib\avrdude\windows\avrdude.exe -C C:\Users\<...>\kkmulticopterflashtool_0.74\lib\avrdude\windows\avrdude.conf -p m8 -P COM16 -c usbasp -e -U flash:w:C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\bs.hex:i 


avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: AVR device initialized and ready to accept instructions


Reading | ################################################## | 100% 0.03s


avrdude.exe: Device signature = 0x1e9307
avrdude.exe: erasing chip
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: reading input file "C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\bs.hex"
avrdude.exe: writing flash (8192 bytes):


Writing | ################################################## | 100% 1.50s


avrdude.exe: 8192 bytes of flash written
avrdude.exe: verifying flash memory against C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\bs.hex:
avrdude.exe: load data flash data from input file C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\bs.hex:
avrdude.exe: input file C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\bs.hex contains 8192 bytes
avrdude.exe: reading on-chip flash data:


Reading | ################################################## | 100% 0.92s


avrdude.exe: verifying ...
avrdude.exe: 8192 bytes of flash verified


avrdude.exe done.  Thank you.


Flashing of firmware was successful.
jetzt den arduino nano
gleich vorab ich habe auch nur common GND und ESC via Netzteil befeuern versucht.

IMG_0379.JPG
IMG_0380.JPG

usb dran und dann wieder ab ins kkflashtool ... ui wohlgemerkt, an dieser stelle habe ich natürlich den USBASP vom nadelständer getrennt.

200.png

und die timeouts dazu

Code:
Flash the firmware from repository.Flashing firmware from file.: C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\esclight_strobe_acl_landing.hex


C:\Users\<...>\kkmulticopterflashtool_0.74\lib\avrdude\windows\avrdude.exe -C C:\Users\<...>\kkmulticopterflashtool_0.74\lib\avrdude\windows\avrdude.conf -p m8 -P COM16 -c arduinousblinker -e -U flash:w:C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\esclight_strobe_acl_landing.hex:i 
avrdude.exe: stk500v2_ReceiveMessage(): timeout
avrdude.exe: stk500v2_ReceiveMessage(): timeout
avrdude.exe: stk500v2_ReceiveMessage(): timeout
avrdude.exe: stk500v2_ReceiveMessage(): timeout
avrdude.exe: stk500v2_ReceiveMessage(): timeout
avrdude.exe: stk500v2_ReceiveMessage(): timeout
avrdude.exe: stk500v2_getsync(): timeout communicating with programmer


avrdude.exe: stk500v2_ReceiveMessage(): timeout
avrdude.exe: stk500v2_ReceiveMessage(): timeout
und so geht das ewig weiter :(

wie gesagt, bin mir so langsam sicher, dass es an mir liegt :(

grüsse,
sky
 
Ich glaube es ist wichtig das der Linker/Arduino VOR dem Regler mit strom versorgt wird.
Also erst Linker/Arduino an den PC, Dann Regler an den Linker, dann Spannung auf den Regler, dann flashen.
So sollte der Regler beim einschalten den angeschlossenen Linker erkennen und im Bootloader bleiben.
Wenn der Regler erstmal ins ESCLight bootet dann kann der Linker nix mehr machen.
 

skyfreak

a freak on a leash
habe es jetzt so wie von frickler vorgeschlagen gemacht, aber keine Änderung. TIMEOUT :(

was mir aber aufgefallen ist!

wenn ich den arduino nano V3 mit dem kkflashtool auf arduinousblinker flashe, dann wähle ich zuerst atmega 328, dann bitte mich das Tool den arduino anzustecken, dann kommt erkannt auf COM16 OK drücken, was ich mache, und dann wird die arduinoubslinker FW drauf geflasht.

soweit so gut.
dann steht aber automatisch im tool

300.png

also arduino auf com16 57600 ???

ok dachte ich, dann probiere ich damit mal den ESC via servokabel zu flashen.

common GND, arduino an Rechner und kurz warten, dann SIG an den ESC angeschlossen, und jetzt erst ESC mit 9V aus dem Netzteil versorgen.

wenn ich recht verstanden habe ist das fricklers Vorschlag zur Vorgehensweise.

Flash und oops kein timeout, aber:

Code:
Flash the firmware from repository.Flashing firmware from file.: C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\esclight_strobe_acl_landing.hex


C:\Users\<...>\kkmulticopterflashtool_0.74\lib\avrdude\windows\avrdude.exe -C C:\Users\<...>\kkmulticopterflashtool_0.74\lib\avrdude\windows\avrdude.conf -p m8 -P COM16 -c arduino -b 57600 -e -U flash:w:C:\Users\<...>\kkmulticopterflashtool_0.74\tmp\esclight_strobe_acl_landing.hex:i 


avrdude.exe: AVR device initialized and ready to accept instructions


Reading | ################################################## | 100% 0.02s


avrdude.exe: Device signature = 0x1e950f
avrdude.exe: Expected signature for ATmega8 is 1E 93 07
             Double check chip, or use -F to override this check.


avrdude.exe done.  Thank you.


Error during writing flash.
wähle ich hingegen mit der selben Vorgehensweise wieder den arduinoubslinker an com16 default, dann kommt der timeout.

z'fix kann doch nicht sein dass ich Depp es wieder nicht hinbekomme :(
lese überall wie die Leute schön ihre ESCs verbauen und dann die drehrichtung via servokabel ändern mit dem Reverse hex von simonK. habe übrigens auch schon versucht es nicht mit esclight hexen zu machen sondern mit simonK normal und reversed. same same ... timout wie servokabel.

gruss,
sky
 

lazyzero

... zu viel geflashdingst
Also im letzten Log hast du versucht auf den Arduino die Firmware zu installieren, das erlaubt er weil der bootloader das selbe Protokoll verwendet.

Ich hab noch mal alle schritte durch gespielt. Dazu hab ich einen HK 10A UBEC und einen Arduino UNO (hatte gerade keinen nano zur Hand). Alles unter Windows XP.

Auf dem UBEC ist die bs.hex installiert und der Bootloader aktiviert.
Dann mache ich einen ArduinoUSBlinker nach Anleitung gemacht.
Dann den Arduino an den Rechner.
Arduino GND-->Regler GND
Arduino D2 --> Regler Signal
Strom auf den Regler über Akkuanschluss.

kkflashtool auf ArduinoUSBlinker, ComX, baud default (19200)
ESClight und irgend eine firmware.

Flashen. Alles funktioniert.

LEDs an den Regler und getestet ---> geht.

Alles wieder an der Arduino und eine andere firmware geflachst.
LEDs ran ---> geht.

Ich weiß nicht was bei dir falsch läuft. Oder vielleicht doch.

Warum ist dein Signal nicht an D2?


Christian
 

skyfreak

a freak on a leash
hmhhh ok

dann versuche ich es eben noch mal so wie du es eben auch beschrieben hast, danke!
ansonsten bliebe halt noch übrig, dass jemand sich das via skype mal live anschaut, soweit ihr zeit lust und musse habt ;)

gruss und danke,
sky
 

skyfreak

a freak on a leash
habe jetzt erst deinen edit gesehen.

das sieht nur so aus, D2 ist der 5. pin von links auf der unteren reihe. und da hängt auch das gelbe Kabel dran. oder habe ich da was falsch gemacht?
 

skyfreak

a freak on a leash
nö, keine chance, bin jetzt genau nach deiner Anleitung vorgegangen ... timeouts.

:( mal sehen was der HK USBlinker sagt den mir der VikiN mitbestellt hat.
aber ich kann mir nicht vorstellen, dass es am arduino nano liegt. der ArduinoUSBLinker Sketch lässt sich ja auch ganz normal via kktool laden.

ich danke euch dennoch allen für eure Geduld mit mir.

happy landings,
sky
 

lazyzero

... zu viel geflashdingst
Ich hab das auch schon mit einem Nano gemacht. Sollte also gehen. Du hast das ja auch schon mit einem anderen Regler versucht. Deshalb tippe ich mal darauf das mit dem Arduino irgendwas nicht stimmt.

Kannst Du das blink Beispiel mal so abändern, dass der Ausgang D2 genommen wird und eine LED mit Vorwiderstand dran hängen?
 

skyfreak

a freak on a leash
Kannst Du das blink Beispiel mal so abändern, dass der Ausgang D2 genommen wird und eine LED mit Vorwiderstand dran hängen?
ui das verstehe ich nicht :(

ich habe nur die hobbyking LED streifen und keine vorwiderstände. aber die teile haben das shcond rauf meine ich und laufen ja an 3S ohne Probleme.

und was meinst du mit blink beispiel?

sorry aber dafür bin ich dann wieder zu doof :(

gruss,
sky
 

lazyzero

... zu viel geflashdingst
Kannst Du mit Arduino und dem seriellen Monitor den es darin gibt umgehen?

Wenn ja dann mal den Linker an den Rechner, Arduino Software starten und den Com port einstellen (ist aber vermutlich schon gemacht). Dann den seriellen Monitor auf machen.

Dann
$M<P20
eingeben. Das schält auf D4.
Dann
$M<W
Um zu testen ob es geklappt hat. Arduino abstecken und wieder ran. Dann
$M<

Und den output hier posten und das flashen vom Regler testen. Mit Signal an D4 statt an D2.

Christian
 

skyfreak

a freak on a leash
STRIKE !!! ich sach nur ... lazyHERO

also als erstes melde ich mal Vollzug!
es funktioniert :D

danke lazyzero!

das ist es was du sehen wolltest?

301.png

dann über D4 und so wie du es auch beschrieben hast, erst nano, dann GND dann SIG dann ESC Strom, läuft.
den output des kktool spare ich mir, lief durch und blinkt wie es soll, auch nach mehrfachem ändern der Pattern.

für mein Verständnis bitte

$M<P20 // schleift raus auf PIN D4
$M<W // saved

wenn ich es jetzt wieder retour testen wollte auf D2 wäre es dann
$M< ???

und warum geht es via D4 und nicht wie es Default sein sollte via D2?

ist mein frisches neues Arduino Nano V3 von saintsmart für teuer 13€ ;) schon im A**** ?

ihr seid hier echt die grössten so einen jeckel wie mich auch mit durchzuziehen!
dafür habe ich ein Motto ...
"es gibt so viele dinge im leben die man falsch machen kann, dass es keinen Grund gibt einen Fehler 2x zu machen."
insofern gebe ich mir mühe die Materie auch zu verstehen und zu lernen.

happy landings,
der skyfreak
 

lazyzero

... zu viel geflashdingst
Super.

Also $M<P18 ändert den Pin wieder auf D2. $M<W schreibt das ganze in den EEPROM so dass es auch erhalten bleibt.
Ich denke Du hast mal eine zu hohe Spannung an den Pin D2 gehabt und der ist jetzt kaput.

Als Ingenieur möchte man so was lösen. Und mit "schwer von Kapee" hab ich auch schon viel zu tun gehabt ;-)

Gruß Christian
 

pete1990

Erfahrener Benutzer
Hey,

meine ersten Versuche mit der Spannungsüberwachung verliefen erfolgreich! Mit dem 6A UBEC läuft das auch so wie ich es mir vorstelle. Was anderes hab ich grad nicht da zum testen, das will aber VikiN morgen übernehmen.
Große Änderungen gibt es eigentlich nicht. Die Patterns habe ich mal in Funktionen ausgelagert und in der Config gibt es noch Einstellungsmöglichkeiten für den LiPo Alarm, sollte eigentlich selbsterklärend sein, wenn nicht einfach nachfragen.

viel Spaß damit,
Pete
 

Anhänge

pete1990

Erfahrener Benutzer
@skyfreak:

schreib dir nen kleinen Arduino Sketch, der den Pin an und aussschaltet und miss mit dem Voltmeter oder häng ne LED hin. Kannst auch den Blink Sketch aus den Beispielen nehmen. Und um zu testen ob der Pin als Input noch geht, kannst du dir endweder schnell selbst was schreiben was den Pin ausliest und auf nem anderen reagiert (oder über die serielle Schnittstelle) oder du meldest dich fix bei mir.
 
FPV1

Banggood

Oben Unten