ARM Investigations

image

My cat has been telling me she wants to get more into 32 bit ARM processors. So when ST started freely offering their discovery development board for their new Corex M4, I jumped at the chance. My luck was in and the board arrived today! The STM32F4 on the board has a full meg of flash and a single precision floating point unit! Oh and like a bazzilion hardware timers and lots more. The board itself has a number of sensors and a big LED on it.

My cat is looking forward to spinning up a compiler and putting the device through its paces. She is especially looking forward to the demo app where the board pretends to be a mouse.

Tie Pin Prototype.

image

This is the prototype of the tie pin we plan to make for our own little Learn-to-Solder sessions. It’s inspired by the Makershed tie-pin. We don’t have any RGB flasher LEDs at the moment, and won’t in time forb BarCamp. But the red LEDs still look pretty cool.

At some point we’ll put an order out to a real PCB shop and get a circuit board with red solder mask and black silk screen. But these boards are plenty of fun for now.

Carrie tests the GyroBelt

Tonight, at the Bayview Bash, Carrie tested out the GyroBelt to live Salsa music. As you may remember from previous posts, the GyroBelt is a prototype device for what will eventually become an eFashion skirt. The prototype and the skirt both try to avoid the Christmas tree effect by only illuminating the LEDs under certain conditions. Namely a high speed dance spin as detected by a MEMs gyroscope.

Gyro Belt Driver PCB

Pictured above is the driver board of the GyroBelt. In the lower right you can see the red SparkFun Gyro breakout board. Immediatly above that are the four transistors that lead out to the bus for the LEDs. (In addition to mono chromatic LEDs the driver board also supports RGB leds.) To the left of the Gyro you can see an ATmega168 running an Arduino sketch. Above that are a couple trim pots that I use to adjust variables within the sketch. Continue reading

Gyro graph of double spin.

Graph of Gyro output from Carrie doing a Double Spin in SalsaA quick graph of a double spin. This time it was to music instead of just counting.

I think for a first pass we’ll try a combo of intensity and color change.  I’ll add a Teensy to the belt and wire up half RGB leds and half Blue leds. The RGBs and blues will both be off in between 450 and 350 since the zero rotation value seems to be 400, ignoring the filter’s charge/discharge curves. Once the rate of spin exceed these values, on either side I will begin ramping up the intensity of the blue leds proportionately to rate of spin. The RGBs in contrast will have (relatively) constant intensity but will change color proportionately to the rate of spin and the spin direction. The color at 450 and 350 will be yellow-green. However, as the rate of spin increases toward zero, the color will shift to the red. As the rate of spin increases above 450 the color will shift toward violet.

I’ll put switches on the belt to allow me to select between RGBs and the Blues so that we can see what looks best.

GyroBelt Reading

Gyro sensor graph of spin plus head roll

Relative Rate of Spin vs. Time

Today my wife and I tested out the Gyro Belt. We recorded once specific dance move, what we call the Alex head roll. (We don’t know its real name, the dance teacher who taught us was named Alex) The flat part of the graph, you’ll notice, starts pretty flat and then begins to pick up some noise. After that the large pulses come in. Although were not able to take video, the move entailed a moment of standing still while I counted beats in preparation, two complete Salsa basics followed at last by the multi-turn head roll move.

As you can see the move registered quite nicely on the graph. But this is a simple move in isolation. Later we’ll test the reading inside of an entire dance routine. I would expect the signal to noise ratio to drop substantially, but we’ll see.

Once thing I do notice, that is curious, is that the resting level at the end of the chart is different than the resting level at the beginning of the chart.  That may give some trouble later depending on how much that zero rate level drifts. We’ll see.

Gyro Belt

image

Carrie wears a logging Gyro Belt! This is a little contraption I put together out of a surplus Li-ion cell phone battery, Sparkfun’s uLog “The Lil’est Logger”, and Sparkfun’s 1500 deg/s gyro breakout board. The logger simply begins recording the gyro’s output as soon as it is switched on.

The immediate intent is to have several Salsa dancers wear the belt and record the gyro over the course of a dance performance while I record them on video. Later I will examine the log files and video files together to see if I am able to isolate high rate spins from other types of manuvers. In the end my whole detection logic may just boil down to a threshold, but it will be nice to have the data to back that up.

The ultimate intent is to have the gyro detect dance spins only and have an eTextile react, in real time, to that spin in some way. Lighting up some LEDs for the duration the spin for example.