Skip to content


Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Pigeon Sim

Pigeon Sim simulates flight, using your arms as wings.

It links a Kinect via Simple-OpenNI, Processing, some GCSE trigonometry, WebSockets and CoffeeScript or a LeapMotion sensor to the Google Earth API and browser plugin.

It also introduces Spindlytext, a nice way to write in the sky with KML, which is used to display various kinds of live data.

There’s a brief write-up, with video clip, in New Scientist. It’s also in the Independent.

NCRM have also made a video which dives into the different parts of PigeonSim.


Pigeon Sim has been tested on Windows 7 and Mac OS 10.7. The Google Earth plugin seems somewhat more stable and less glitchy on Windows — but this may depend on your graphics card.

  • Install Simple-OpenNI, OpenNI and Processing, following the instructions provided by Simple-OpenNI. Note that on 64-bit Windows, you probably still want the 32-bit OpenNI libraries, since Processing comes with its own 32-bit Java.
  • Install the p5websocket Processing library (now included in this repo, along with the SimpleOpenNI one).
  • See instructions at the top of web_client/ to get the web client running.
  • Plug in your Kinect, run the pigeonsim Processing sketch, and fly!
  • Alternatively, if you don’t have a Kinect, run the pigeon_dummy sketch. Click and drag to bank/steer, and press [up] to flap, [down] to dive, and [space] to go home. This mainly defeats the point, though.

A .bat file is included to start PigeonSim on Windows boot, just check your own paths and username in this file. Drop it into your Startup folder located in by typing shell:startup in the Start Menu (Windows 7).

LeapMotion Support

To enable LeapMotion Support append enableLeap=1 to the query string, which will allow you to control the sim with your hand movements. There is a video with instructions and an example of how to fly with a LeapMotion.


This code is released under the GPL v3. To negotiate GPL-incompatible uses, feel free to get in touch.


Fly! Courtesy of this small project linking Kinect -> OpenNI -> Processing -> WebSockets -> CoffeeScript -> Google Earth API






No releases published


No packages published