wii-esc


Alternative Open Source ESC firmware designed for use with multicopter

About

This firmware designed as a replacement for many commercially available ESC designs based on the AVR MCU. It implements scalar sensor less method to drive Brushless Motor by detecting BEMF zero-crossing instants. The goal of this project is to create firmware most suitable to use in multi-rotors, using cheap and commercially available hardware.

Features:

  • Fastest possible power response.
  • Up to 4000 steps of resolution.
  • Low noise with comparatively high efficiency (Sigma-delta modulator, instead of fixed frequency PWM)
  • Linear power response. (completely no "bump" at 100%)
  • Jitter-free input PWM measurement without harware assisted input capture.
  • Accepts any PWM update rate
  • Sync recovery.
  • Safe stall detection.
  • Complimentary PWM support (AKA: active freewheeling, active rectification)
  • Fixed throttle end-points. No need to calibrate. (since version 2.0.9 it is also possible to calibrate end-points using stick programming procedure)
  • Automatic oscillator calibration.
  • Enhanced PPM filter, preventing accidental motor startup (when FC is rebooted, for example)
  • Configurable. The configuration parameters are stored in EEPROM. The Wii-ESC flash tool has visual parameters editor. No more stick programming.
  • Modularity. The high-level implementation is separated from actual hardware with HAL layer.
  • Portability. The firmware is written in C++, which means it can be easilly ported to different platform.

Supported Hardware:

For complete mapping betwen targets and real hardware, it is possible to use RapidESC Database. Currently tested targets: * bs.hex * bs_nfet.hex * bs40a.hex * kda.hex * qynx.hex * rb50a.hex * rct30nfs.hex * rct45nfs.hex * tgy.hex * tp.hex * tp_nfet.hex

Latest releases:

ESC reflashing procedure:

For simplified firmware update, it is possible to use the following tools: * KKmulticopter Flash Tool - it supports both Wii-ESC and RapidESC. This tool downloads latest revision of firmware directly from SVN * Wii-ESC Flash Tool. Simple small and portable flash tool for Win32. It also downloads latest revision from SVN and features visual EEPROM parameters editor.

FAQ:

http://code.google.com/p/wii-esc/wiki/WiiESCv20FAQ

Results

http://wii-esc.googlecode.com/svn/wiki/Media/BC-3536-11%20750KV_Wii-ESC_SimonK_HK40A-bs_12%20APC.png

http://wii-esc.googlecode.com/svn/wiki/Media/BC-3536-11%20750KV_Wii-ESC_SimonK_HK40A-bs_13%20APC.png

http://www.youtube.com/watch?feature=player_embedded&v=n_g2s1nclUM' target='_blank'>http://img.youtube.com/vi/n_g2s1nclUM/0.jpg' width='425' height=344 />

Acknowledgments:

Project Statistics:

<wiki:gadget url="http://www.ohloh.net/p/605617/widgets/project_basic_stats.xml" height="220" width="355" border="1"/>

Donations:

Wii-ESC free to use under the GNU v3.0 License. Feel free to use, copy and modify it as you wish! I have spent a lot of time to make this software as good as possible. If you feel that this software has been beneficial to you please show your support by donating. This will be greatly appreciated and will help me to continue experements.

Project Information

The project was created on Sep 23, 2011.

  • License: GNU GPL v3
  • 44 stars
  • svn-based source control

Labels:
Hardware avr esc BLDC quax multicopter quadcopter multirotor firmware Mystery MEGA8 Brushless WiiESC reflashing