Quad Motor Balancing: Hot Glue

Error message

The spam filter installed on this site is currently unavailable. Per site policy, we are unable to accept new submissions until that problem is resolved. Please try resubmitting the form in a couple of minutes.

Today I balanced the Dead Cat drone's motors with a zip tie and a hot glue gun. Wow, this is EASY. I got the idea by searching Youtube for motor balancing videos. For those too lazy to watch a video on the subject, you don't need one. Here's the steps to go through to balance your motors.

  1. Prep: Peel any stickers from motors. Make sure motors are mounted securely (use loc-tite on all screws.) Place drone on carpet or neoprene pad, or attach soft pads to landing feet/gear.
    Stickers on motors will affect their balance and interfere with this process. If you like, you can check for vibration before removing stickers, on the assumption that the sticker might balance the motor. Putting something soft between the drone and the surface isolates it from vibrations in the surface itself.
  2. Setup: Either install accelerometer sensor graphing software on your phone and tape it to your quad (best attached to each motor arm, one at a time), attach a laser pointer to the arm of your quad and point it at a wall, or just connect to your flight controller and go to the motor test page if your flight control software has such a function (e.g. MultiWii/Cleanflight.)
    Using the motor test function is the best option if there is one available, but you can balance motors without even having a flight controller as long as you have an ESC connected by just connecting a servo tester to the ESC. You can even do it by ear, if you like.
  3. First Test: Either use a servo tester or your phone or the laser on the wall to check for vibration: spin motors up to about halfway ("1500" on motor test) and watch sensor output. Check for motors which make quad vibrate.
    If your ESCs have BEC, you won't even need to power the servo tester separately. A laser attached to the arm of the quad will draw a circle or oval on the wall, which shrinks as the motor is better balanced. Or use a seismometer or sensor app on your cellphone, with your phone securely connected to the arm of the quad which hold the motor you are currently testing.
  4. Find Light Spots: Put a zip tie around each vibrating motor, see if vibration is reduced. If not, rotate zip tie and check again until vibration is reduced. Then move zip tie just a little bit and check again, until zip tie is in the position which produces the least vibration. Mark motor with a contrasting permanent marker.
    Use the skinniest zip tie you can find that's long enough to go around your motor. I start by placing the zip tie in one position, then rotating it 90 degrees to see if going that direction makes vibration better or worse. If it's better, keep going; if it gets worse again, start going backwards. My motors are black, so I used a silver Sharpie to mark the light spots.
  5. Balance Motors: Add a little glue to the motor and test for vibration again and again until the motor runs smooth. If you think you put too much glue on, put a little bit on the opposite side and test, which is easier than trying to remove some glue from the light side gracefully.
    Hot glue will probably stick to the motors just fine no matter what you do, but cleaning them with a solvent (like 70% or stronger alcohol, acetone, etc.) will make it stick for keeps. The motor bells will suck the heat out of the glue in short order, but blow on it anyway and make sure it's cool and firm before testing again.

On Bluetooth

Connecting to your flight controller via Bluetooth is by far the most convenient option for configuring a drone, especially when the time comes to calibrate the magnetic sensor. This should be done outside, far from sources of electromagnetic interference, so using your cellphone is very convenient. It's also very nice when you're doing the motor balancing, picking the quad up and putting it down repeatedly. However, having enough serial ports free on your flight controller can be an issue. You should therefore select a flight controller with a spare UART (serial port) to which you can connect the Bluetooth adapter. I am using a SP Racing F3 Evo, and using PPM. PPM uses UART2 RX, so you must use UART 2 or 3 for Bluetooth. However, Serial RX is shared with UART3, so if you are using Spektrum (or similar) then you'll put your bluetooth on UART2. You could also use softserial, which would be fine for this purpose, but using hardware serial I am able to get a good connection with no packet loss at 115,200 bps. Other flight controller hardware has similar issues, so choose carefully.

The "HC-06" bluetooth module is very inexpensive and popular, and available with or without a carrier board. You can solder directly to the module, which might be a good option if you are building a 250 or smaller quad; larger craft should have room for the convenient carrier. The HC-06 will run on 5V and puts out 3.3V serial signals but will accept a 5V serial signal, which makes it perfect for interfacing to almost any flight controller — most of them will take a 3.3V serial input on a 5V port without any trouble. Once you've got it connected, you can pair it (using code "1234") and connect to the module. But before you can connect using Cleanflight Configurator (on your Windows, Mac or Linux system with the Chrome browser) or EZ-GUI Ground Station on Android, you're going to have to connect to your flight controller with a cable and activate "MSP" (and set the baud rate, probably to 115,200 bps) for the appropriate UART, then save and reboot.


Add new comment


  • Use [fn]...[/fn] (or <fn>...</fn>) to insert automatically numbered footnotes.
  • You may link to images on this site using a special syntax
  • Web page addresses and e-mail addresses turn into links automatically.
  • To post pieces of code, surround them with <code>...</code> tags. For PHP code, you can use <?php ... ?>, which will also colour it based on syntax.
  • Internal paths in single or double quotes, written as "internal:node/99", for example, are replaced with the appropriate absolute URL or path. Paths to files in single or double quotes, written as "files:somefile.ext", for example, are replaced with the appropriate URL that can be used to download the file.
  • Filtered words will be replaced with the filtered version of the word.
  • Lines and paragraphs break automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote> <q>


  • Lines and paragraphs break automatically.
  • To post pieces of code, surround them with <code>...</code> tags. For PHP code, you can use <?php ... ?>, which will also colour it based on syntax.
  • Allowed HTML tags: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>

Drinking Game

  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <p> <br> <pre> <h2> <h3> <h4>
  • Images may be embedded like: [image:node_id align=alignment hspace=n vspace=n border=n size=label width=n height=n nolink=(0|1) class=name style=style-data node=id] Leave off any attributes you don't want.
  • [img_assist|...] tags will be displayed, maybe. Please don't make more of them.

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
This question is for testing whether you are a human visitor and to prevent automated spam submissions.