The “Halfway” – A Self-Balancing Scooter

Ready to take the "Halfway" for a test drive. Bike helmet essential for safety.
Ready to test drive the “Halfway”. Bike helmet essential for safety.

This latest project is the longest and most complicated so far.  Over the last several months I’ve been working to put together a Segway-like self-balancing scooter, aka the “Halfway”.  Many people have written up and posted similar projects online.  Google “DIY self balancing scooter” to see some examples.  Other people’s work provided a lot of inspiration and help during the design and execution of the Halfway scooter.  If you’d like to see how it turned out, skip to the end of this blog post for a video of the Halfway in action.

This particular project was appealing to me because it utilized elements from my earlier blog posts, such as obtaining angle data from an IMU and integrating a Wii nunchuck with an Arduino.  I also got to learn some new skills, including welding metal, CAD with Google Sketchup and programming with PID control loops.

Read moreThe “Halfway” – A Self-Balancing Scooter

Wii-Nunchuck Controlled Servo Motors


WiiChuck with header pins connected to the Wii Nunchuck cable.

My previous project explored the accelerometer and gyroscope sensors in an MPU-6050 IMU chip, and showed how the data from both sensors could be combined for greater overall accuracy.  While the project was interesting, the programming and data processing was too far above my kids’ heads for me to share with them.

I wanted to do a similar but simpler project that my kids would find interesting.  It turns out that the Wii Nunchuck controller contains an accelerometer and the Wii Motion Plus controller contains a gyroscope sensor, both of which communicate over the I2C bus.  I thought that it would be a fun, kid-friendly project to hack these controllers to manipulate some object in the real world.  Fortunately, others have had this idea before me, and there are some well-documented projects online.

We decided to use a Wii controller to control a couple of servo motors.  The components we used for this project were:

  • a WiiChuck Adapter – this allows easy communication between a Wii controller and an Arduino
  • Arduino Uno microcontroller and USB A-B cable for programming
  • Two small servo motors (small enough to be powered by the output of an Arduino Uno)
  • Breadboard and jumper cables
  • A Wii Nunchuck controller

    Read moreWii-Nunchuck Controlled Servo Motors