The IcosaLEDron is a programmable, rechargeable 20 sided “ball” with a tri-color LED on each face. Inside is a custom PCB equipped with the Atmega328p that is Arduino compatible allowing for easy programming of different effects. With twenty WS2812B LEDs (also known as Neopixels) positioned equally around, and a 3-axis accelerometer, the IcosaLEDron is a spherical platform for creating light effects based on accelerations applied to the ball. After doing custom MEMS inertial sensor development we decided to do a project using off the shelf MEMS accelerometers. This is our first project using 3D printing and Arduino.
Check out the Instructable as well.
The Arduino code senses Up on the ball and illuminates the top LED accordingly regardless of orientation. When the accelerometer senses freefall, the code lights all LEDs in a rainbow pattern. When no motion is sensed, the Arduino disconnects the LEDs go to sleep to conserve battery power. The electronics, 3D printed parts, and source code are open source. Other code could allow the IcosaLEDron to act as a die that when rolled will light a random number of faces, or a Simon Says like memory game where you rotate the ball to match a pattern set by the device.