At the beginning

As a juggler, I first used commercial programmable glowing club. But I encountered some limits : no multi platform, no radio communication, no flexibility, no 9-Axis, but above all no possible communication with developers to improve clubs.

Also I realized that it would be more fun and effective to make my own hardware : the clubs of my dreams ! or almost :),

I called them Rastello Club ( a glance at the famous Enrico Rastelli ).

To begin I will focus on 4 firmwares ( maybe the 1 & 2 can be merged) :

  1. You can select pre programmed sequences.
  2. The use of a simple grammar to allow you make your own program.
  3. Implement micro python, and let the user be free to deal with Python power.
  4. It is not really a firmware but a C-Api with drivers already implemented. Demanding developers would feel totally free to use them or bare metal program.


Communication overview

You maybe wonder :

Why did I choose a RFM75 2.4GHz radio module and not Bluetooth ?
Because most of the time Bluetooth is used in a piconet and a master can communicate with a maximum of seven devices. The other solution ( scatternets) is less documented for a juggler who doesn't know very well Bluetooth. Also the data rate of Bluetooth low energy is 1 Mbit/s ( according to wikipedia ) while my little, low-cost radio module is supposed to go up to 2 Mbit/s.
So why not Zigbee solution ?

I like XBee module and I often use it when I need to implement quickly a wireless communication. But finding a very small module that could hold on my thin pcb was difficult, and all the more as I looking for a cheap one ! So quickly, I abandoned this idea.
And a WiFi module ?

I think this could be a good idea, mainly because of the famous ESP8266. It's really cheap and exists in versions that were small enough. Moreover, it seemed that the community had done a remarkable job. In terms of data rate, I couldn't find any information. According to a guy on IRC, it would be better than radio modules he used. The wrong side for our application is that it uses much more current. Finally, I preferred keeping the RFM75, but kept the ESP8266 in the back of my mind, in case there would be no more solution. It would be also possible to replace the ARM cortex M by the ESP8266, but for this project, I prefer a mature, well documented, and comfortable microcontroller.



A note on the Raspberry pi bridge and softwares

This page focuses on the hardware, so I'll not go into details, but I must talk a little about the bridge and soft. As we use a radio module in the club, we can't communicate directly with a smartphone, a tablet or a computer without adding a radio transceiver too. But smartphones, tablets and computers can easily use WIFI or Ethernet. For this task, I used a Raspberry Pi, with Ethernet and a USB WIFI dongle ( for now it suits me), who acts as a bridge between WIFI / Ethernet and 2.4GHz Radio. Thanks to freakone, I could quickly have communications with a smartphone, and have a minimal web app in Node.js ( also a little of python for the UDP/TCP server) to change club's colors.

Nodes.js, HTML5... allows having easily a multi platform solution accessible in a simple browser. I think this is a perfect solution to make an app with configuration tools, survival tools and daily tools.

However, I don't intend to make "the big one" app ( with GUI, multitrack, audio... ) as a web app, for 2 reasons :

I have already started a preparatory work with QT5 and C++, but I remain open in case a HTML5 ninja would join the project. But it would be also cool, to have other applications dedicated to new tasks.

Early link to Rastello bridge : https://hackaday.io/project/11053-rastello-bridge



About the hardware

21 WS2812 RGB/RGBW LEDs( 3X6 led strip for the body and 3 on a custom pcb for the handle ).

MPU 9250, Nine-Axis( Gyro + Accelerometer + Compass).

STM32F411CE a 32-bit ARM CORTEX M4 with FPU running up to 100 MHz with 512 Kbytes of Flash and all we need...

USB Connector used to charge the 3.7 Volt Lithium Ion 14650 Battery,
but also used as a USB CDC ACM ( a serial port emulation) essential to set wireless. and also as USB DFU ( USB Device Firmware Upgrade ) used in the microcontroller bootloader to easily upgrade firmware.

32Mb to 128Mb Serial NOR FLASH Memory to store user program.

A 2.4 GHz Radio module Transceiver.

There is an SWD ( Serial Wire Debug) footprint on the pcb, that allow you to debug, and flash a new firmware ( significant if you break your bootloader).

A voltage supervisor ( thanks to Yann Guidon ), shut the the buck boost in case of voltage drops below the threshold voltage to protect battery.

A simple Battery monitoring.

Low-power consumption in mind.

you could take a look at the schematic...



About mechanics and plastic

Made very quickly to show inside body, ( I must order white heat shrink to the proper diameter ) :

PCB Rastello Ring V0.0 with 3 LEDs :

Inside overview:

For the inside of the proto, I used 12mm PVC rod for the handle and 20mm PVC tubing for the body. The central part and fixation are expanded PVC sheet. milled for now.

3d printing of the top with nylon :

This is not the right material, we need something which can absorb shocks, certainly an elastomer. A professional way would be injection molding, but price is professional too. So I would like to try to make a 3D printed mold, or a silicone mold of my part first.

For knob, body and handle we can find it easily as spare part in a juggling store.

Another way I would like to explore using recycled materials ( more info here ) :



The tools

I use as much as possible open source tools.
I apologize for missing software, I list mostly those who are significant for hardware collaborative work.

Design :

Code :

Development can be done on GNU/Linux, Window and OS X.
Later, propose a pre-configured GNU/Linux virtual machine, with all the tools and more... Could be pretty cool. Yes, like Crazyflie !



Where you'll find all about this project

For now here.
And soon on GitHub.
Later, I could set up a mailing list, if needed.



Some things to think about

being edited...


Early planning overview

It'll be adapted when needed.

In parallel, improve the housing ( Club, and RPI bridge). And start a search works ( artistic, music , computer science, mathematics, pedagogical...) with other interested people.



About license

For Software I like GPL ( GNU General Public License ).
For Hardware, open source but I still need to read about existing possibilities.
Pending, I put a Creative Commons Attribution-ShareAlike. See below.



Resources, reference and interesting links

Juggling

Electronic

LEDS

IMU

Code

Mechanics


Creative Commons License
Rastello Club by BARATTERO Laurent is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.