The HandRaiser works by listening to incoming requests over it's USB Serial connection. That allows any PC, Mac, etc. with a USB Serial (UART) connection to control the device.
For Michelle, that controlling device was her Tobii Speech Generating Device (which is based on a Windows Tablet), but it could just as easily be a Raspberry Pi, Mac, Android or anything with a USB port.
We will share details about how to connect via Windows and Linux later in the guide, but first, let's show what commands are available on the HandRaiser and what they do.
This project started with a very simple request: the ability to set her color to red, yellow, green or black. So, those names are special in this project: they simply set the color and make sure the'll stay on that color by switching out of the "wheel" mode. Other modes like "blink" and "ramp" continue to work, the color hue just changes.
If you'd like to set any other color, you can send a Hex code, just like in HTML. The Hex code starts with a hashtag, then two letters for Red, Green, and Blue in that order. Just like the standard colors, modes stay the same except for "wheel" which switches to solid.
There are many Hex Code calculators and tools out there, including this one from W3Schools.
To change the brightness of the LED without changing the mode or base color, just send a percent symbol followed by a number between 0 and 100.
Messages that start with an @ symbol trigger a change of mode. Currently there are five modes that change how the HandRaiser's colors change:
- solid - Show the target color with no variation or changes.
- blink - Alternate between the target color and black every half second (or so)
- ramp - Slowly fade between the target color and black every two seconds (or so)
- beat - Change the brightness of the target color to match that of a standard heartbeat rythm (experimental)
- wheel - Rotate the color of the LED around a color wheel.
Set the color to red, blinking, and 1/2 full brightness
Set the color to dark purple, 90% brightness and a slow ramp from black to purple and back.
Make the HandRaiser follow a heartbeat pattern in red with full brightness.