Light Up Juggling Ball

This project is to make a light up juggling ball.

Public Chat
Similar projects worth following
This juggling ball uses 98 high-speed sk9822 LEDs, a 9-axis WS901 accelerometer, and an m5Stamp-PICO, with USB-C charging and 2x1ah reclaimed lithium cells.

The idea is to make some kind of POV-ball with the ability to do interesting animations.  

Project status:

The hardware platform is built and functional with a few minor modifications necessary for wire pathing.  The LEDs fit reliably in the sockets with some minor surgery on the LED strips.  Lots of fiddly soldering.

Basic FastLED rainbow-wipe code works.  Research ongoing into how to do any of this, early signs indicate the answer is to bypass any sort of library and write the data directly for max speed.

Lots of thoughts about data structures, maps, quaternions, and images, too many to write here.   Found arduino libraries for quaternion math, should work.

WS901 has been configured using the Windows application for high speed serial communication.  Found example code for retrieving quaternions.  Found example code for remote wifi serial, which i think will be useful for the WS901.  

Need to research basic ESP32 code management, wifi updating, etc.

Haven't thought much about the animation strategy, I figure I'll cross that bridge when I come to it, I'm only one man!


Outer shell, holds LEDs (male)

Standard Tesselated Geometry - 590.32 kB - 06/19/2022 at 16:27



Outer shell, holds LEDs (female)

Standard Tesselated Geometry - 507.21 kB - 06/19/2022 at 16:27



Electronics carriage, holds batteries and chips.

Standard Tesselated Geometry - 651.84 kB - 06/19/2022 at 16:27


  • 1 × m5Stamp-Pico
  • 1 × WS901 9-axis IMU
  • 1 × sk9822 LED strip (144/m)
  • 1 × USB-C Lithium battery charger
  • 2 × 1ah Lithium Cells (Flum brand)

  • Connector Idea

    Cephalobod06/19/2022 at 17:11 0 comments

    Currently the strategy is to use some kind of pin/socket pair on the wiring, and leave the cable long enough to allow for the rotation, or counter-wrapping the wire around the carriage post when closing the shells.

    New connector idea: TRRS (tip, ring, ring, sleeve) connectors, aka headphone plugs, between the LED shells and the carriage.  It slides into place, cushioned by a silicone plug at the bottom of the socket, as the carriage screws into the shell.  This would weaken the carriage screw though, so maybe replace it with a short hollow threaded rod and put a short captive nut in the shell somehow.  This may also allow for another LED to be placed underneath the connector for maximum coverage.

View project log

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates