How to Fix Bricked Flight Controller

by Oscar

It’s possible that you can brick your flight controllers due to human error (where FC doesn’t talk to computer anymore, just timeout or says connection fail). You might still be able to fly using that FC as normal, but there is no way you can connect the board to Cleanflight or Betaflight configurator.

Some of the links on this page are affiliate links. I receive a commission (at no extra cost to you) if you make a purchase after clicking on one of these affiliate links. This helps support the free content for the community on this website. Please read our Affiliate Link Policy for more information.

Reasons for Bricked FC

Actually the word “brick” is a wrong choice, you can’t technically brick a flight controller. The issues we have are more like “locking ourselves out”.

95% of the causes are:

  • Flashed wrong firmware target to the flight controller, e.g. flash CC3D firmware to a Naze32 board
  • On some boards where USB port is shared with UART1, and if you disabled MSP Data on UART1, you won’t be able to connect to the computer using USB again; Most modern FC has resolved this issue by separating USB and UART’s by using “USB VCP – virtual com port”

How to Recover Locked Flight Controllers

Solution is simple, short the bootloader pins and re-flash firmware. If it was a Data port settings that causes the flight controller to stop talking to Betaflight/Cleanflight, you will have to erase all settings on the board too.

Some boards might have a “boot” button, some have solder pads, it depends. For example, here are the bootloader pins on the Naze32 you need to short before flashing firmware.


And here are the settings in Betaflight or Cleanflight Firmware Flasher. Here are the steps:

  • Load the correct firmware online
  • Select “Flash on Connect”, if you have trouble with flashing: your FC board will be flashed automatically when you connect it to your computer
  • Select “Full Chip Erase” to erase – it will restore the MSP setting for UART1


After the flash you should be able to connect it to the configurator again.

If you have trouble flashing firmware, play around with the settings, maybe the baud rate is wrong (some boards need 256000), maybe it’s a driver issue.

If this method doesn’t work for you, check with the seller or manufacturer for support. That’s what you are paying them for after all :) Happy flying.

Cannot flash FC?

If you are having problem flashing firmware on your flight controller, it could be a driver issue. Here is how to fix FC driver issues.

Edit History

  • Aug 2015 – Article created
  • May 2017 – Generalized for all FC’s

Leave a Comment

By using this form, you agree with the storage and handling of your data by this website. Note that all comments are held for moderation before appearing.


Doug Groves 6th December 2023 - 2:50 am

Do you think you could help me install betaflight 3.2.5 onto my hyperion vengeance? I installed it but motors 3 and 4 wont turn. I did a cli dump and motors 1 and 2 say their for a gimbal which i dont have. The vengeance come in two versions,,gimbal and non. I got the 2.0 lite version without. Not sure what to do

Franky Nathanael 6th May 2020 - 6:13 pm

Hi Oscar Liang,

I just bought iFlight DC2 with DJI Air Unit recently,
I connect with my RX FrSky XM Plus with 3 wire (Signal White, V-in Red and GND Black) wiring to FC as in the manual.
When I run betaflight configurator, in the RECEIVER tab, there are no signal from my transmitter, I tried a lot of option like UART and all settings seems to be good and same as instructed but still can not connect, I am very sure that my TX and RX works normally because previously working normal on my other Quad with SBUS connection.

So I decide to flash the firmware on my iFlight TITAN DC2 as in the betaflight written = STM32F405 with the newest one version 4.1.6, the default version is 4.1.2,but unfortunatelly after flashing the firmware there is no status light on the FC board and when I connected to betaflight, still can connect but there is no accelerometer and ports only detected one.

What went wrong? is the firmware is correct? or should I go with FC/ESC: SucceX AIO (target IFF4_AIO) ?
 where I can the firmware, because not listed in the Betaflight Configurator.
Any comment would be much appreciated to my email [email protected]

Jakru 19th February 2020 - 3:10 pm

I tried to flash sp f3 fc using betaflight to 4.0.6 fw.
The original fw was 3.0.6

When i connect the fc for the 1st time, the led will be solid blue, without pinching the boot pins.
But the flash failed On verify the firmware session.
So i tried to pinch the pins, and got solid blue, then tried again.

Flash failed again on verify session.

Tried several times with the same result.

And then i installed cleaflight. And have no problem to connect. And then i realized, the firmware version has been changed to the 4.0.6. Checked using CLI, it stated 4.0.6

And i tried to check with betaflight, and it stated 4.0.6

The question is, did i success updating my FC ? Or this FC is installed with broken firmware ? Since i never got the flashes done completely. The flashes always failed on verify session.

Please help me out


Update :
I tried to flash using cleanflight, with the same result, failed when verify, but the fw version updated.

Going back to betaflight to flashing, the result still the same. And i tried to look around to see the feature, and it seems there are a lot of new feature showed up in betaflight. I dont know if this is the configurator feature, or this is the new feature that came along with the new firmware.

Sergio Nayar 11th June 2019 - 4:54 am

After all is done, I still can’t connect, no activity light even when I power it up with a battery connected normally. I only see one steady light, no flashes.

Jackson 24th November 2018 - 11:01 pm


I tried this several times on both PC and MAC. I was about to toss my hands up when all of a sudden it worked.

I had tried this several times before but this is what I did:

Naze32 Rev6 (Afroflight .32)
CLFL_v2.4.0 – NAZE – 07-08-2018 08:24 (stable)
No reboot sequence
Flash on connect
Full chip erase
Manual baud rate – 115200

I held my tweezers down on the boot pads while I plugged the usb cable in. I looked over at cleanflight and saw progress. I took my tweezers off and after the flash finished I restarted clean flight and reloaded the same firmware with every option disabled.

I kept reflashing the software with the flash-on-connect option enabled and I noticed that only SOME software would result in a blinking GREEN light. Only when I saw that light could I connect. Something still seems off with this board but at least I can use it again.

Cristian Gutierrez 26th August 2018 - 7:41 pm

Dear Oscar and friendas
I have the flight controller matek f722 … I assigned by softserial the pad pwm for smart port telemetry. Then in ports I gave him save and reboot and after that the controller card is not recognized by the pc. I have reinstalled the drivers multiple times without success. In the device manager, it appears as an unknown serial device and the controller card turns on, initially turns on a red LED, then blinks the blue and red LED and ends up with the red led on permanently without recognizing the controller PC. What do I have to do to restore the controller or for the PC to recognize it? Many thanks. Best regards

Michael E Hoffman 31st January 2018 - 1:00 pm

Sprf3 connects, saves changes, allows for the Blheli passthrough, etc yet I have no activity lights whatsoever

Ben 27th June 2017 - 9:45 pm

Another option if you’re having problems with the COM port is to flash the firmware using an ST-LINK USB adapter. If your controller has a connector called SWM, that’s an option. It’ll have 4 pins – 3v 3, ground, SWMIO, and SWCLK.

You also don’t have to touch the boot pads, which is handy when they aren’t easily accessible.

With the ST-LINK software, you just need to feed it the .hex file for your particular board.

BigT 7th April 2017 - 4:37 pm

So I have been trying this for 4 hours and no joy. Just ordered another board, life is just too short!

Oscar 14th April 2017 - 5:51 pm

i agree! :) I normally just get new stuff when they stop working.

ed 11th February 2017 - 8:12 pm

Thank You!

Ozzy 26th June 2022 - 10:33 am

This is how I ended up with 2 none working tricopters and a Versacopter also not working, I bought a Mavic, it worked…. i didnt like it :( Fixed the kk2 tricopter and Naze32 quad during the first lockdown, and now im trying to get the other Tricopter working. I can just about spell, im no computer type of person.

George 21st January 2017 - 10:02 pm

Hi i have a tarrot
130 i am a newbie and i have disabled the communications port so my board will not talk to clean flight i would be grateful if you have any ideas about the bootloader pins for the button because i can’t find one hope you can help thanks george

ankit anand 26th March 2016 - 10:22 am

reflashed the right firmware.. but still not able to connect.. any help?

yann 4th January 2016 - 6:01 pm

hi , i have the same issue with the change of MSP port … but now when i try to flash . my board is not detected by my computer and there is no com port for it.
need help :(

Xavi 29th August 2015 - 10:46 am

but, what is the procedure? it has to connect the USB naze with pins attached boot?

[email protected] 26th September 2015 - 12:24 am

Hi Oscar

I had to do this today. There is a special order to make it work.

Firstly, disconnect the USB from your PC but leave connected to the Naze32. Then short the bootloader pins.

Whilst keeping the pins shorted, plug the USB into the PC.

Still with the bootloader pins shorted, in Cleanflight,
Check the box for no reboot sequence and full chip erase.

Hold the short on the pins until it has flashed. After, remove the short and disconnect the Naxe32.

The connect and your board will be OK.

II had to do this after trying for hours following the incorrect instructions of just shorting the bootloader pins on startup.

Matt Hauer 12th February 2017 - 10:10 pm

I did the same on a Naze32 board (Eachine) and it flashed successfully after about 50 tries. In the one “lucky” try, it was when I pulled the USB cable from one physical port to another. It didn’t work (wouldn’t connect) anyway, and I tried for another hour.