Lesson learned about 3DR ESCs and cold weather


Yesterday I took my new 3DR hexa outside for the first time. Weather was nice and sunny with brisk -7°c temperature. Even though everything worked well when testing, I immediately ran into problems outside. After connecting the battery all of the ESCs started beeping rapidly (two times per second) and refused to spin the motors. I took the hexa inside for a while to warm up for a while and the problem went away and everything seemed to work fine. Unfortunately as we all know, the assumption is the mother of all fuck ups.
I hovered the hexa, but each time I tried to land motors sped up suddenly and the whole thing flipped over faster than I could react. After breaking two props I started investigating further. There was a couple of helpful threads, one offering working solution to calibrate ESC at low temperature.
What I think what happened is this: Pwm value that ESC reads from APM changes a little with temperature. If we assume that lowest value in room temperature would be 1000, in -7 degrees it could be say 990. Now during calibration esc has saved value 1000 as the smallest possible value. When it reads value 990 at cold startup, it decides it’s not a valid value and refuses to start and starts to beep as a warning.
The real danger is in situation where ESC has started successfully, but the temperature goes down. At low throttle pwm value goes under the min limit and ESC turns off as a safety measure. Since not all ESCs do this at the same time, what happens during the flight is that APM tries to compensate this with other motors resulting an immediate flip.
Working solution seems to be to calibrate the ESCs at the lowest temperature you are going to fly. After doing that I had no problem flying outside. I think this would be important thing to mention in the wiki.

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones


  • @Alexsey Novik I used the tgy.hex. I'd also recommend getting the Atmel flashtool from Hobbyking: http://www.hobbyking.com/hobbyking/store/__27195__Atmel_Atmega_Sock...

    And the software I got it to work with was 'KKflashtool' 

    Happy flashing!

  • @Anders Hansen, thanks for info! BTW what hex file did you use to flash 3DR ESCs?

  • Hi,

    I had the exact same problem with the stock DIYdrones ESC's.

    After I flashed them to SimonK FW the problem has disappeared.

    Actually me and a friend was taking our hexas for a spin an hour ago.

    He has not flashed his ESC's, and had the exact same problems as you.

    I had no problems with mine, and these are both stock 3DR Hexas, except for SimonK on my ESC.

    (And the temperature was -17C, so plenty of cold to go around..)

  • Ive had similar problems with Align & Hyperion ESC's. On frosty mornings they just start beeping, warm them up in my hand for a couple of minutes, and then they'll fly fine.

  • I had exactly same issue with 3DR ESCs. My friend flies with Turnigy Plush 20A and never had any calibration problems on -5 to -20

  • This is a lucky post for me to read. I'm using the 3DR kit and my hardware is likely to see cold winters and hot summers.

  • The ESC issue is normal, I forget which component exactly is the cause but what I always do in that situation is hold my hand on the ESC until it stops beeping.. although it may be more complicated if you have more than 2. Dany is right, once you start running the motors it shouldn't drop below the cutoff temperature.

    I have been seeing that bug on the hexa as well though I haven't looked into it yet. It's very warm here so I don't think the temperature is what's causing that issue.

  • The root of this problem is that the 3DR ESC's do not have an external oscillator.  If they did, there would not exist this timing problem in cold temps.  External oscillators are more temperature stable.

    I haven't flown my 3DR quad in these cold temps, but was thinking about it. Now I'm not so sure I should bother trying.

  • Distributor

    Hi Janne, sorry for you crash, here in Canada it's also quite cold and we do fly all the time. 

    What if you would have let them "warm up" outside until the beeps stops?  

    I am using / selling the jDrones ESC, they might be different than the 3DR ones... but for me it works. 

    For the DJI Phantom I have reports that sometimes it takes 6 minutes in -6C outside to get the green light to fly while both the IMU and ESC are warming up... Once warm I don't think they will cool under zero and affect the min value (but I can be wrong!!) 

    Anyhow this is a good information, I just wonder is warming them up would have resulted in anything different. 

    Would really be nice to have APM - ESC better communication to detect these things and prevent flying when optimal conditions are not meet. 



This reply was deleted.