Skip to main content
Last updated March 19, 2011 07:22, by Ron Goldman

Sun SPOT Project Ideas

  • Automatic room light - When it gets dark according to one SPOT, all the LEDs come on on several others.
  • String length measurer - Hang a spot at the end of a string, let it swing as a pendulum, caluculate the period and use the simple formula period = 2 * pi * sqrt(L/g) to figure out the length. Print this on the host.
  • Earthquake detector with emergency exit pathway indicators - (LEDs blink in sequence amongst SPOTs deployed along a hallway to indicate the way out.) I guess this is like Arvind's fire alarm thing.
  • Gesture Recognition - Allow the user to interact with a computer via a set of hand gestures
  • Gait Analysis / Pedometer - Use a Sun SPOT attached to the user's leg to infer information about the speed and distance of travel
  • Delayed reporting - Record data while free-ranging & send it all back to host app whenever come in range of basestation
  • Balancing Robot - Create a robot that can balance on two wheels and navigate through a course. Two wheels could be arranged in series like a motorcycle or in parallel like a segway.
  • Transducerlib indirection modification - This enhancement to transducerlib allows SPOT-side apps to read or write the state of ANY sensor. So set the state of a switch, set the state of the accelerometer, and so on. We can already read or write the state of the LEDs. The result enables a testing harness, for playback of sensor data. This would be a generally useful contribution: this access could be enabled remotely from SPOT World or even other SPOTs. In other words, click on a screen button to control the app on a remote spot which is reading one of the switches. Tilt this SPOT here, and have the (unmodified) bouncing ball demo react accordingly on that SPOT over there.
  • Load balancing multiple Isolates - Use Isolate self-migration to allow multiple Isolates to distribute themselves amongst N nodes. Criteria could be battery level. Extra credit for a new kind of radio connection that can be torn down and reestablished transparently across migrations. Extra credit for a load balancing algorithm that is not centralized and is not subject to oscillations.
  • Port the Sun SPOT platform to a new device of your choice
  • Design and implement a REST API to control/monitor a SunSPOT, e.g. a GET on http://host:port//sensors/edemoboard/light would return the light reading on the SPOT whose IEEE address is , similarly a PUT of a JAR file on http://host:port//applications would install the application contained in the JAR on to (after converting it to a suite file). A good place to look for inspiration is the Twitter API (
  • Get JRuby, Groovy, or your favorite scripting language to run on top of Java Micro Edition (JME) - this would then allow you to write your favorite scripting language for Sun SPOTs.

Feel free to add other suggestions to this list.

Please Confirm