Testing testing testing.

Getting the balls into shape.

For this test, I created 4 working balls: two gyroscope bals and 2 accelerometer balls. Unfortunately, the battery for one of the gyroscope balls went bad just before I started testing, so I was only able to use 3. Here’s some info gleaned about each type of ball.

What went into each of the balls.

The fridge demon watching over my batteries.

Accelerometer Control Ball

One of the most important things I got out of this round of testing was that balls that greatly affect other balls should not necessarily make sounds themselves. One of the accelerometer balls controls the pitch of the gyroscope balls, but this connection was almost completely lost because the accelerometer ball also made sound as it was moved. Even when people did understand the connection, it was difficult to control the other ball, when the accelerometer ball was also making noise. Simply turning the volume off for that ball had a good affect.

Attempting to play a scale using the accelerometer ball to control the other.

I like the sound it made, though, so I may try to incorporate this into the other Accelerometer Ball.

Gyro Balls

These balls are the meat of the whole toy. They make sound as they move and make a chime on impact. I have gotten the collision checking quite a bit better, and they are fairly reliable when it comes to having them roll into things. They cannot for the life of them detect collisions if they are being held and pushed into something or dropped, though. I’m not sure if this is something I can overcome with a gyroscope.

Although the sound seems fairly good for each ball individually, they are not different enough. I had them occupy different ranges, but users could barely tell the difference. As was suggested by a few people, I’m simply going to try making their ranges more extreme, with one ball’s pitch covering the very low end and the other existing much higher.

Singing Bowl Ball
One of the new balls I introduced was a singing bowl. It can be applied to either the gyroscope ball or the accelerometer ball (although the code is slightly different depending on which ball is being used. As the Singing Bowl Ball is moved around, a droning chord slowly plays louder and louder, with each note coming in over time. Once the ball is stopped, the chord bursts and begins to repeat. The ball has a memory for what was done to it and will play the sound over and over until it is shaken.

I really liked the sound, as did most testers. However, because the ball takes some time to really be heard, most people ignored it in favor of the balls that provide immediate feedback.

Yuri pointed out that although the sound is good, singing bowls do not exist with other instruments. Instead they are meant to be played by themselves. One solution that could be a lot of fun would be to have a mode shift that turns all of the balls into singing bowl balls until they are set back.


The idea of capturing gestures came up a lot. Things like spinning the ball or scratching it against a surface were done a lot, and while they did make sounds with the code already running on the ball, it could be interesting to have them make different sounds when these event occur.

This could also be a great way to transition to singing bowl mode. I worked on a bit of code and can pick up on when the accelerometer balls are spun, so at least for now, I am using that as the cue to switch modes.

This goes with something Yuri said about having some rules for playing with the balls. Nothing too constraining, just some basic actions people do to start or stop so that there is some understanding of what is going on.


I had previously been regulating the current going into my ardweenys, but I found that this seemed to be causing them to be less reliable, so I am now only regulating the flow coming out of them in order to avoid frying my xBee and to keep a constant value going to the sensors.

I had to work very hard to get my system to be responsive to all four balls. Two were handled just fine, but using all 4 caused problems. One huge issue was that I was never flushing the serial port, which was causing backups. That was the easy fix. More hard was figuring out why things were still going somewhat slow. The ball units were sending out a signal every 20ms, but the OF app was not checking nearly that often, so I dropped the frequency there and for now the problem is solved. I would like to reduced the delay, though, so this is an issue I will have to revisit. On the plus side, the data seems to all be getting between the balls and my computer in one piece. I’m not getting any noise of junk data as far as I can tell.

Cutting Boards

Although I have several Ardweenies, I would like to be able to use a few of the atmega chips I already have sitting around. Leif helped me cut a few custom boards using the machine in the PComp lab. I have not had a chance to solder them together yet, but if they work, they will be significantly smaller than even the Ardweenies I’m using now.

Playing with LEDs

Unfortunately, when I tested some LEDs out with the foam I am using now, they completely failed to penetrate the foam, even without the resin on. The new foam really is a lot better in terms of keeping the innards from being jostled too much, so I think I a going to have to sacrifice having the balls glow. This was never a big part of my project, so I don’t mind, really.

Potential Look of the Balls

I want to keep the look fairly simple, with each ball just having a solid color. I may want to include some little graphic indicating how the ball could be used (for instance, rolling the gyro ball). And on the balls that control other balls, stripes indicating which other balls are being affected. One user suggested having the striped go along the axis that the accelerometer uses for that ball to make it more clear and I like that idea a lot.

Moving Forward

This weekend I am working on integrating the Singing Bowls as I described, and adjusting the sounds to actually sound different from eachother, as well as playing with ways of sealing the balls in a semi permanent way.

Testing Videos!