2) Early twin wheel self balancing skateboard

This machine is closer to how I see this idea developed as a usable device. A toy for the technically minded.
It will never be faster than a standard electric skateboard with a big motor on one of the back wheels, nor will it be better over rough ground.
The features are that it is technically interesting as it "shouldn't work" and it is very controllable at slow speed or even when stationary, meaning you can use it where there are pedestrians about (if laws allow).
Not as much brute power as my monowheel version so best suited to reasonably level surfaces. Can also be carried in one hand, unlike my monowheel which you could hardly pick up at all.
Latest control system: A wireless Wii Nunchuck. 
 Earlier WIRED Nunchuck controlled version
 I have tidied it up visually here. Still not happy with it. Battery pack ugly. Ideally would have a flat deck filled with small batteries.
Original hard wired hand controller using Wii Nunchuck potentiometers to steer.
Wii Nunchuck hacked and used as a hand controller. It is perfect for this task. Potentiometers on self-centering joystick can be used to control voltage to the microcontroller board. The button on the end can be configured as a motor kill switch if you let go of it.
To disassemble you have to buy a special 3 lobed screwdriver (available on ebay)
 Here are my wires soldered on. Green is +5V, Black is ground and red is the wiper which send voltage selected by thumb controller to the microcontroller board.
Here it is almost reassembled.
I have decided to use another free channel on the microcontroller to act as a "fine control" of the balance point of the board so you can get it exactly level as you ride it, or nose-up if you want when going up a slope for example. By turning this potentiometer I can add or subtract a value of up to 10 from the balance point value in the algorithms (usually about 512 on the scale of 0 - 1023).
Here I have crammed it into the Wii Nunchuck moulding.
The board is charged up via the socket.
The Lithium Iron Phosphate battery comes with a circuit board attached that balances the cells. This is hidden in all the photos on this page but is there under the wooden structure on the non-wheeled end.
Green switch is master on/off.
Row of green/red LEDs is the battery level indicator as on my monowheel.
Latest control system Nov 09 : Using Arduino board to read data from an unmodified Wii Nunchuck - wired initially then I used a wireless 'chuck.
Arduino is a low cost prototyping open-source system that is programmed in a simplified version of "C" with loads of examples of code on the net. Here I am using an Arduino to read an unmodified Nunchuck to steer the skateboard by either tilting Nunchuck left or right, or using the joystick. See links on left for link to the code.


I have just (finally) managed to achieve control of the board using a Wireless Wii Nunchuck (November 09). See links on left for a page on this.
First attepmt at twin-wheel skateboard.
Intended to be lighter than my original monowheel which as well as being heavy was a very awkward shape to carry:
- Can turn on the spot when stationary
- Side carrying handle
- Light enough to carry in one hand (about 30 lb)
- Lithium Iron Phosphate e-bike battery, 10-20 miles range in theory.
- battery life indicator and charge socket at one end
- Looks more like skateboard
- Red footswitch has to be depressed for it to work AND button on hand     controller has to be pressed, if you release either the motors will stop
- Now controlled by wireless Wii Nunchuck hand controller.

YouTube Video

Video of first outdoor test. In this video I am using a remote control garage door unit to turn left and right. After this I decided to go back to a hand controller and the Wii Nunchuck was ideal for this. Performance improving all the time as I improve the software.

YouTube Video

First indoor test of the new twin wheel version.
Headlock Gyro
The motors have slightly different internal friction. This means that when the controller is telling them both to rotate at the same speed, in fact they don't. This means the board turns slowly to one side.
This is only a problem at slow speed especially when slowing and about to stop, one wheel stops first and the board turns left or right at the last moment tipping you off.
You can live with this and set up a slight offset in the software between L and R signals to the controller. However in the end I read up on how they keep radio controlled helicopters pointing in a steady direction: they use a "headlock gyro."
These can be complex and maintain a fixed heading no matter what, or quite simple and just "resist" sudden changes in direction - the method I decided to use.
I have used another gyro to produce more power to one motor if the rate of turn of the board from dead-ahead exceeds a certain value. This is disabled when joystick is not in neutral position (i.e. we deliberately want to turn).
The effect of this is that this software kicks in whenever board starts to turn left or right suddenly when it is supposed to be going straight ahead. The faster the rate of turn the more power dumped into the inner wheel motor to resist the change (the other wheel gets a corresponding reduction in torque signal). The great thing about the Sabertooth is that it does this for you, there is a voltage input that affects the differential torque to send to each wheel: 2.5V means both the same, less and it turns one way, more and it turns the other way. The other voltage input controls direction of both motors: 2.5V stationary, <2.5V both reverse, >2.5V both go forwards. These are all the inputs from the microcontroller it needs to do its job.
A down side is that if a wire breaks on one of the voltage inputs from the microcontroller (so suddenly zero volts to one of the Sabertooth inputs) it could either race away on you or spin rapidly.
The headlock gyro also helps a lot if one wheel hits a small bump while the other is moving freely, again stops you suddenly spinning left or right.
If building it again I would have used a board with an accelerometer and a 2 axis gyro all in the one package - one gyro for balancing and one for use as the heading lock device - they are almost the same price as a single gyro.
The other way to do this that many people use on Segway clones and robots is to fit optical encoders on each wheel to "check" the speed they are actually turning at with corrections as required.
 Rollers on left are from airport baggage (very light and do the job).
 Battery on right.
Sabertooth controller lower left, microcontroller and sensors upper left.
Central welded structure does several things in a very small space without much weight: 
i) Motors bolt to plates on each side of structure. 
ii) Central vertical box section is the point at which inner end of each wheel axle bolts to.
iii) The plates (motor mounts) brace this and it takes all lateral (side to side) forces in the axles.
iv) This is why outer axle mounting can then be a thin steel plate without it bending side-to-side.
v) This allows everything to be fitted under the board in a relatively small space. Board bolts to flat top of this central welded assembly with 4 bolts.
This structure is the key factor in getting everything else to fit under the board.
Upper: Microcontroller and sensors.
Lower: Sabertooth motor controller.
Left: A 24V to 12V DC converter from a car shop supplies the micro with a 12V input. the micro board has its own regulator which takes the input down again to a stable 5V.
Sabertooth. Note the small capacitors on the voltage inputs from the microcontroller. These smooth out the Pulse Width Modulated signal into a steady ripple free voltage. Without these the motor/motorcontroller "buzzes" as it tries to accurately keep up with each pulse of the PWM signal. Have to experiment, if caps too high a value the motor controller will not respond fast enough to changes in the PWM signal - need just enough to smooth the ripple off the signal and absolutely no more.
Alloy cover painted black protects all the electronics. Very odd shape to make and took some time to create.
 There are small wheels at one end only. There is a reason for this. If you have small wheels both ends, then, when you start off (one end on ground) it rolls down a slope as you stand on it if not on level ground.
Secondly, if the end on the ground as you step onto it does NOT have wheels, this has safety value: (i) you don't roll away, (ii) if the motor goes into full power as you energise your system due to a software fault, you will not be thrown off as your weight as you get onto the board will still all be on the non-wheeled end....the central wheels may spin but the board will stay where it is. See video of how the board initially starts up and you will see what I mean.
January 2010:
If you turn sharply on the board, the balance "set" point seems to change. I think this may be due to the fact that the balance accelerometer is mounted towards one end of the board rather than near the centre. As board spins it should ideally not affect the balance accelerometer reading at all.
I have moved the accelerometer/gyro balance pair plus the heading gyro (that resists sudden changes of direction) to a small box mounted almost at centre of the board between the wheels.
Subjectively this seems to improve the above problem!