Флашване на CC3D с Cleanflight чрез Ардуино
В тази статия ще ви обясня как да флашнете Cleanflight фърмуер на CC3D полетен контролер чрез Ардуино. Ще имате нужда или от FTDI адаптер или от Arduino с вграден FTDI чип, като примерно Nano v3. Свържете Ардуино платката със CC3D контролера както следва: 5V – 5V, GND – GND, TX – RX, RX на Ардуиното към MainPort/а на CC3D. Също така сложете jumper (съединителен проводник) между GND и RST пиновете на Ардуино борда.
Свалете и инсталирайте на вашия компютър STM Flash Demonstrator. Отворете станицата GitHub и свалете последната версия на Cleanflight фърмуера за CC3D. За да го инсталирате/флашнете полетния контролер трябва да е в т.н. bootloader mode. Свържете SBL и 3.3V пинове докато захрванете и пускате CC3D контролера. След като е преминал в bootloader mode може да започнете с флашването.
Пуснете STM Demonstrator и следвайте стъпките показани на снимките по долу абсолютно точно. Трябва да спомена че се наложи доста пъти да включвам и изключвам контролера (със свързани пинове при стартирането) докато софтуера STM Demonstrator го разпозна.
След като приключите с процеса на изтриване, натиснете бутона “Back” и избере сваления фърмуер за CC3D за флашването.
Това е всичко. Ако имате някакви въпроси, не се колебайте да оставите коментар под статията.
Bol2riz
Hi mate!
Thanks for this tutorial,
Could you confirm that you have to place a jumper between GND and RST?
In case yes, there may be helpful to add that info 🙂
Cheers.
Olivier
Sergey
Hi Olivier, yes it should be placed. I will add it to the tutorial. Thanks for thе note 😉
Bol2riz
Thanks to you.
Another question. Does the nano have to be flashed as arduinoISP?
Cheers.
Sergey
No. By bridging the GND and RST pins it actually work only as a FTDI adapter.
Cheers
Bol2riz
That simple ^^
Perfect !
Bol2riz
Me again sorry…
I’m trying to do the process but the software tells me that it can’t communicate with the board.
Could you confirm one thing?
My nano appears as USB_serial in under COM port in Windows. Is this the way it appears on your side ?
Thank for the help.
Sergey
No, problem Olivier. Not sure how it appeared on my PC. I cant test it now, because I bricked my Nano few months ago. I can remember, that I have connected and disconnected the board several times (with its bootloader pins bridged) several times before I succeed. But you can also flash the CC3D direct through the USB port using OpenPilot GCS. Check it here: http://dronehitech.com/flash-cc3d-cleanflight-openpilot/
Bol2riz
yes I did that way but I definitely need and want to overwrite the BL because I don’t want to have to plug the lipo anymore ;).
… Succeed ^^
## Note for others
On the Atom led should not blink at all when in BL mode.
Thanks a lot Sergey you rocks !
Sergey
Thanks 🙂
Steve
Great How-to…My question is getting the cc3d into bootloader mode. You say to Bridge the SBL and 3.3V pads while powering the CC3D….Where do I find these pads? and how are you bridging them?
Thanks,
Steve
Sergey
Hey Steve, look at this picture: In the upper right corner you will find the pads. I bridge them using a tiny wire. Cheers, Sergey
Steve
keeps saying Unrecognized device…Please, reset your device then try again. Im using the Arduino, all the connections look to be correct along with the jumper from GND to RST. I have it plugged in to the main port, I have done this over and over as you spoke of and still “Unrecognized device”
any suggestions would be greatly appreciated
Bol2riz
Does your board have flashing led?
When you’re in bootloader mode the blue led that use to blink should not blink at all and on some board should be off.
In case your board is blinking, you’re definitely not in bootloader mode.
It may be a wrong connection between the two pads.
Try to bridge them with a non tamed wire. And gently push on it with something like a pen or a small screwdriver.
Sergey
+1 to Bol2riz’s comment. You need to have the pads only bridged when powering the board. But as said, the LED is the best indicator if you are in Bootloader mode or not.
Steve
It is solid green….there were a few times when the blue light blinked, but its solid and still not being recognized by the demonstrator. I am using the demonstrator with the UART checked, Port Name is COM6, proper baud rate ect…In my research I saw something about a virtual com port or something, not sure if this is needed.
Thanks again for your help
Sergey
Port Name was COM6 on my PC, it could be another one on yours. You should check it in the Device Manager. You can find the Virtual COM Port driver here.
Bol2riz
Just for information. Did you manage to connect and use openpilot? Because some cc3d clone may come without any bootloader and you have to push it.
Bol2riz
Here is the link to do so :
http://www.southquay3d.com/index.php?route=news/article&news_id=9
Sergey
You only need the OpenPilot bootloader if you want to use both OpenPilot and Cleanflight firmware. But this is only possible with Cleanflight 1.11 or older versions. Since Cleanflight 1.12 you cant use the OpenPilot bootloader, so flashing using the STM Demonstrator is the way to do it.
Bol2riz
Yes indeed!
BTW I don’t know if a board without proper initial bootloader won’t give such problem in shorting the pins and be recognized.
Even if I doubt that it’s the case 😉
Dan
My flash demonstrator only shows options for stm8xxxxxxxx for the target. Am I missing something?
There is no stm32 anything in the drop down list.
Sergey
Hey Dan, can you confirm that you see a STM32 label on the FC chip?
Gabe Seppala
Using my Arduino Nano as an FTDI required me to leave the Vcc pin unconnected and supply the CC3D with 5v USB (from the same PC). Only then could I get STM flash to work.
And yes, I had to jumper out RST and GND on the Arduino Nano to lock it in FTDI only mode.
Cheers and thanks!
Sergey
Thanks Gabe. Yes, you need to jumper RST and GND for the Nano to be in FTDI-mode only. Cheers, Sergey
john
i bought a cc3d atom but i dont know whick are the bootloader pins. in the back theres two with +/- and other two with OK
Sergey
Hey John, can you upload a picture of both sides. I dont have CC3D Atom, so cant say for sure. Best, Sergey
John
Sure, here
https://drive.google.com/file/d/0B9vUTnY7XgClUUZhODNGUnpGNTQ/view?usp=drivesdk
https://drive.google.com/file/d/0B9vUTnY7XgClM1hOd3BWekdUZ1k/view?usp=drivesdk
Sergey
I cant access the second one, can you check the permissions.
John
Changed permission, sorry I missed that
Sergey
John, am I afraid that this board is not really an Atom FC. The are no Bootloader pins. These are SWD pins: SWDiO, SWDiK, GND and 3.3V. You will need additional hardware to flash it from my understanding, but I cant help you further.
MJ Hillmer
Thank you very much for this procedure. I am new to CC3D and the use of 3.3V FTDI, so grateful for the helping hand. Excellent clarity.
Sergey
My pleasure 🙂
Brandon
At the very beginning when you have to pick your port it says “no response from the Target, the bootloader cannot be started. Please, verify the boot mode configuration flash protection status, reset your device then try again…” but after resetting it still won’t work
Sergey
Can you provide some more information, how have you connected the board?
Philipp
Hello, I ran the procedure but now the board stays in bootloader mode. I flashed it properly and everything seems to be fine. But no after removing the soldered jumper, the LED is still green and wont recognize by usb cable. Did I miss anything?
I did this procedure twice with two cc3d board from Hobbyking 280 Drone. Same issues. Thanks for help.
Sergey
Hello Philipp, which firmware and version did you flash on the board? Cheers, Sergey
EMERSON
Hello all i’m having trouble updating FIRMWERE on CC3D I’ve done everything else CC3D DO NOT CONNECT IN MY NOT VC WILL BE WITH ARDUINO I CAN’T BOOTLOADER.
Sergey
Hello Emerson, did you bridge the SBL and 3.3V pads while powering the CC3D?