With the handful of choices for hardware and firmware that go on our quadcopters lately, there are only two normals to flash our flight controllers and ESCs with today; you can pick between a KISS flight controller and BetaFlight flight controller firmware, and you can choose between KISS ESCs and BLHeli ESC firmware. So Let’s get right into it!
Let’s start with KISS and that first point “KISS VS Firmware”, you probably noticed that little difference there.
FlyDuino (They make KISS) has made their firmware proprietary for their hardware, a lot like Apple. So there isn’t a KISS firmware you can download and put on just any flight controller, you have to buy a KISS flight controller and potentially update the firmware on it. The same is true of their ESCs. This has some great advantages, which have been proven since they were released. The KISS flight controller knows when it is using KISS ESCs, and it interfaces more directly with them than an alternative ESC. Motor timing is adjusted automatically, ESC sync is not needed with KISS setups. Basically the only thing you should have to do is solder, bridge the motor direction pads accordingly, and tune!
That’s not to say we haven’t had any pitfalls with FlyDuinos fancy-ness. Because it is so simple, it can be hard to get intimate with the configurator, which can have its impact on troubleshooting. They have made improvements since day one, but our most recent problem with motors spooling up on arm, has us scratching our heads on what to check. There’s not a lot of settings to potentially Fix issues
The most annoying problem thus far is PWM 3; after flying the KISS setup for a few days my number 3 motor started dropping on punch outs, soon after that ESC stopped powering up all together. This, oddly enough, turned out to be a firmware problem with the flight controller. It was costly to discover after replacing it a handful of times.
Do not mistake these for common problems, but just that they do exist. The KISS setup most often functions amazingly, and is the least time consuming.
Here’s a picture of the configurator
Let’s move to the BetaFlight/BLHeli side of things. First we’ll start with the flight controller;
BetaFlight represents the open source firmware that is installed on many if not most flight controllers that are not KISS, some examples include the Seriously DoDo, the MotoLabs Tornado and Cyclone, and the Seriously Pro Evo. For a long time before KISS, this firmware was the standard, and only firmware. It was originally known as CleanFlight, and BetaFlight was a fork of CleanFlight made by BorisB. Inheriently, you can still use the CleanFlight configurator on BetaFlight firmware.
Let’s get to the configuration side of this firmware. To the novice of the hobby, the configurator is probably somewhat daunting with the first tab having almost no use and over a dozen other tabs staring at you. Once you go through the paces you’ll notice how much control you have over your flight controller. You can do things like test each individual motor, change modes like Air Mode and Super Expo Rates, and turn your controller's orientation one degree at a time.
Now we have to turn to our ESC firmware; BLHeli. Besides a moment of SimonK (Some of you may know the name) BLHeli has been a constant in reliable ESC firmware. Active Damping was introduced on BLHeli, along with OneShot125, OneShot42, and MultiShot. The firmware allows you to change many aspects of how your ESC works. In BLHeli Suite (Similar to BetaFlight Configurator), you can change things like the motor direction, min/max throttle, motor timing, and several other things.
This really starts to define the overall problem and difference between KISS and the open source firmware. While solving a problem can be easier for some on BetaFlight, since you can check so many things, you may also notice More problems inherent with so many options. Most common of which for me is the lack of sync between ESC and Flight Controller. Just the other day I found myself triple checking the Min throttle on my ESC to enter the correct number in BetaFlight, only to find that the ESC had changed it’s mind and soon two of my ESCs were using two different numbers. I can’t explain that, but if BetaFlight could talk directly to my BLHeli firmware, it would eliminate Many steps that are purely associated with the current open source firmware.
Here’s a picture of the BetaFlight configurator
At the end of the day I personally prefer to run the open source firmware; it’s cheaper and my builds fly just as good as any KISS setup I’ve seen or flown.
My partner Gary, on the other hand, likes to stay in the hype train. It has worked out pretty well for him, he just builds, tunes, and flies. But I hope your pockets are deep ;)
If you have any questions or comments, please feel free to leave them below or tell us.