In this tutorial, we’ll guide you through the process of flashing the Bluejay firmware to your BLHeli_S ESCs. Bluejay is a free open-source firmware that enhances ESC performance, offering additional features and options, turning your BLHeli_S ESCs into a powerful alternative to more expensive BLHeli_32 ESCs.
Table of Contents
Advantages of Bluejay Firmware
Bluejay firmware offers numerous benefits, including:
- Enhanced flight performance through Bi-directional DShot and RPM filtering capability with Betaflight. Learn more about RPM filters in our tutorial: https://oscarliang.com/rpm-filter/
- Fixed PWM Frequency options (24KHz, 48KHz, and 96KHz) to improve efficiency, potentially increasing flight time by up to 30%. However, higher PWM frequencies reduce motor braking force. Learn more about PWM frequencies here: https://oscarliang.com/best-blheli-32-settings/#PWM-Frequency
- Customizable start-up melodies for a personalized touch.
While there are alternative firmware options such as JESC and JazzMaverick (BLHeli_M), these have limitations. JESC requires a paid license for each ESC, and JazzMaverick (BLHeli_M) is no longer being updated (last update in 2020). As a result, BlueJay has become the most popular firmware for BLHeli_S ESCs, thanks to its free availability and active support.
Software Required
There are two methods for flashing BlueJay to BLHeli_S ESCs: using a standalone configurator (which requires installation, download here) or a browser-based configurator (https://esc-configurator.com).
We recommend the web configurator for its ease of use and reliability, which we’ll use in this tutorial. Please note that only Chrome-based browsers support the ESC Configurator. You can also use it to configure and flash normal BLHeli_S firmware ESCs, it’s a very handy and versatile tool.
Steps to Flash BlueJay
If you’ve used BLHeli Configurator before, the interface and steps will be familiar.
Connect your ESC to your drone’s flight controller (FC) and plug in the USB cable to the FC. Power the ESC by connecting the LiPo battery.
Click “Select Serial Port” and choose your FC’s COM port (your browser may request permission to access the COM port).
Click “Connect” to display all available ESCs.
To flash Bluejay, click “Flash All” and configure the following options:
- Firmware: Select “BlueJay”
- ESC: Leave as-is (the ESC type should be chosen automatically)
- Version: Choose the latest official release
- PWM Frequency: Higher values yield smoother and more efficient motors, especially in smaller aircraft like tiny whoops. However, this comes at the cost of reduced torque and snappiness. Refer to our PWM frequency article for more information. As a general guideline, select 96KHz for tiny whoops, 24KHz for 5″ FPV drones, and 48KHz for intermediate sizes. For 5″ freestyle quads, try 48KHz if 24KHz causes rough motor sounds. Experiment with different values to find the best fit for your setup.
Click “Flash” to complete the process.
Configuring BlueJay
To enhance your drone’s performance, enable RPM filters in Betaflight, as explained in our tutorial: https://oscarliang.com/rpm-filter/
Next, configure your ESC settings by connecting to the configurator and clicking “Read Setup” to populate all the ESC settings.
For first-time BlueJay users, you’ll notice additional options in the configurator. While the default options suit most users, consult our article explaining these settings for further customization: https://oscarliang.com/best-blheli-32-settings/
Create Custom Startup Melody
BlueJay allows you to personalize your quad’s startup melody, which plays when you plug in the battery. Here’s how:
Click “Open Melody Editor” to access the melody editing interface for each ESC.
Choose from a variety of pre-made melodies in the drop-down menu or create your own custom melody if you’re familiar with the process.
After selecting your desired melody, click the “Accept” button for each ESC and then click “Write Melodies” to save your changes.
Your custom startup melody is now ready to greet you every time you power on your quad.
Conclusion
In conclusion, flashing BlueJay firmware to your BLHeli_S ESC provides numerous benefits, such as improved performance, enhanced efficiency, and custom startup melodies. Following this tutorial and making necessary adjustments can significantly elevate your FPV drone experience, ensuring smooth and enjoyable flights for both beginners and intermediate enthusiasts.
Edit History
- Mar 2022 – tutorial created
- Apr 2023 – instructions updated
24 comments
I have Bluejay 96khz on a couple of 1s FCs and it does work fine. They were set up with ESC Configurator, which was also fine. However I’m not keen on a web based configurator – not everyone has web access all the time wherever they are, and will it always be there? I see there is a downloadable equivalent, but it seems it may not get updated.
Thank you so much Oscar. As always, your blog is the safest source for information. With this upgrade to BlueJay, I made my tinywhoop to fly again.
The bidirectional dshot and dynamic idle completely fixes my zero idle desync issue. Honestly this setup should be default for all newer drones that support it.
Hi I updated to BF 4.3 on a Tinyhawk 2 freestyle (new fc old one died) put blueJay 48khz on and the motor order is wrong what’s the best way to fix it
Hi found the solution there is a motor reordering button in the motor tab 😇
Go to the motor tab in Betaflight, there is a “motor order” button, click that it will walk you through fixing your motor orders.
Oscar,
New to drones and love your videos – learning a lot. Wish I had read more before I bought and installed my AIO FC, with is a JEMCUF405PRO AIO and unfortunately is BLHELI_S. Can I flash the ESCs to bluejay and not brick the FC? If I manage to brick the ESCs is there a “easy” way to get them back to life so I can just wait until I can find a better AIO and do some surgery but still fly?
Thanks
Is there any known report of those ESC bricking when flashing bluejay? I’ve flashed a of lot BLHeli_S ESC and only ever bricked one or two and it’s extremely rare. If they get bricked you can ‘revive’ them following this post.
I haven’t seen anything, but I am concerned as its an AIO (FC + ESC) and didnt know if that would change things. While I want to get this on the best possible solution for software, I really want to fly too….
Thanks – again – learning a lot from your videos!
It changes nothing being aio or not. Even with non aio you are still going through fc to flash the esc.
It happens mostly on highly integrated elrs aios when people leave the radio on during flashing. New esc-configurator.com tool detects when radio is on and disables flashing, BF 4.4 also has a fix to prevent this.
PD. This may be interesting to you:
https://discord.com/channels/822952715944460368/1049663729308008488/1075483880582299759
Bonjour, merci pour ces excellents tutoriels ! J’ai une question : j ‘ai un quad 3 pouces 6S, crossfire, Vista, sur lequel j’ai voulu flasher les ESC (en BLHeli s) sous blue Jay avec esc-configurator pour avoir accès au RPM filter et bi directional Dshot. Bref, je flashe, c’est ok sauf qu’en reconnectant à BF j’ai un taux d’erreurs qui monte anormalement sur un moteur. alors je fais la procédure inverse : je flashe à nouveau en BLHeli S et là c’est la catastrophe : les moteurs 2 et 4 ne sont plus reconnus du tout ! Et pourtant dans BF, chaque moteur tourne normalement et dans le bon sens… je ne sais plus quoi faire. Aurais-tu une astuce à tout hasard ? Merci par avance. Martial
Hi Oscar! is every BLHeli_s ESC compatible with this thing? I have a F4 1S AIO FC and… while all the process was correct (I even put the X-files tune on it 🥰) Back on betaflight it gives me some error when trying to activate Bidirectional D-shot (something like, you need 4 ESC and the current value is 0)
Also, when checking the motors, only 1 starts up, so no luck for me so far. Can you think of any cause for this?
Thx in advance, I am so new into this lovely Hobby and mate, your posts really make everything easier.
Sorry i am not sure, maybe contact the developer and see if there’s a known issue for your particular ESC? Can you flash it back to BLHeli_S firmware using the same tool?
try it
https://github.com/mathiasvr/bluejay/issues/36
Thank you Oscar! This is a great tutorial!
I was able to get one of my quad flashed and working well!!
Unfortunately, this bricked my second quad’s ESC – it has a Diatone Mamba F30 Mini 30A
going to rescue it with BLHeliSuite.
Is there a way to flash bluejay with BLHeliSuite?
I manually downloaded C_H_40_96_v0.16.hex firmware but BLHeliSuite seemed to refused flashing one of the unbricked ESCs, saying:
”
Flash file is of rev 0.16
and cannot be flashed over a bootloader
”
I’ll get C2 interface connected and try rescue later…
If it’s bricked then your only option is to flash it via C2 interface, regardless what firmware you are flashing.
Thank you! that answered my question. I was successful in flashing (all of the 4 ESCs) via C2, and now they’re all running bluejay. YAY!
It wasn’t immediatly successful though, some of the 4 ESCs needed me to flash them twice before they come back to life.
Hi Oscar, I’m currently flying my QQ190 (circa 2017) on BF 3.1.7 and still have the appropriate configurator. It runs the following ESC’s:
• Silabs Busy Bee Processors
• Dedicated PWM Driver
• BLHeli-S enabled
• Fast 8-Bit processing
• Over-Current protection
• 25A Constant, 35A burst
• Multishot Protocol enabled- The Multishot protocol uses a 5-25μs signal that allows refresh rates of up to 32 KHz, while maintaining 240 steps of resolution.
• Active/regenerative braking
• Lost model/inactivity alarm
• Passthrough programmable
• 3-Phase brushless motor output
I want to flash them to Bluejay so I can get the benefits before I go up to BF 4.3.
My question, my quad flies pretty well now – if I flash to Bluejay will it affect the way my quad behaves (without going into BF3.1.7 to change anything). i.e. will I need me to re-tune my craft to behave as it does now? I’m not concerned about the benefits just yet, simply want to know if the ESC’s will still behave as they do now.?
Hoping you can shed some light on this.
Cheers
just make a note of what version your ESC is on now, and if you don’t like it after upgrading you can always downgrade.
I assume your haven’t updated your ESC since you got the quad in 2017? then in that case it should fly better in the new version there’s been so much changes and improvements since. If you keep the settings the same you probably can’t tell much a difference anyway
Hi, Oscar,
I have an MCU F405 flight controler useing omnibusF4SD right now i still have Betaflight 3,5.7. I want to go to the newer Betaflight version so to have bi directional D shot, but my ESC still has BlHeli-S A-H-30. Will flashing the Bluejay to my ESC work for me or is my ESC and FC board too old to do so. I hear how some people get their ESC messed up when trying to do it.
I followed the flash steps exactly on my iFlight Alpha A75 and I seem to have a dead drone. The process stalled on ESC 2 and now nothing happens when I plug in the USB port. When I connect a battery I get a weak and broken startup tone with no lights or other functionality. Am I screwed or are there any recovery options?
The bootloader on your ESC might be corrupted. It rarely happens, but I found this can happen in some badly designed/manufactured hardware when flashing firmware.
You can try recover it following this guide: https://oscarliang.com/flash-blheli-c2-interface/
Thank you so much for responding! I did find that article shortly after crying for help and now have an arduino nano on the way. My C2 interface is soldered up and ready. Hopefully this works, thank you for the great information!!