The Spinometer measures speed, intervals, and various other properties observed from an optical pickup on my bicycle rollers. site github

The meter component of the project started when I had trouble debugging the pickup. I had a noise problem which I couldn't spot with my oscilloscope for lack of a reliable trigger.

Surplus meters with custom made scales provide direct readout of program variables.

Nor could I debug it with print statements because these interfered with the program timing.

My solution was to emit program variables on various PWM channels and watch them with my SimpsonVom.

This lead to dedicated meters in a pleasing arrangement with a few extras like a blinking light and a beeping speaker. The meters came from CascadeSurplus.

The spinometer connects to the rollers' pickup with 1/8 inch stereo patch cable. I attached the jack to the roller frame with HotMeltGlue and then ran stiff wire to the CdS photo cell which was positioned by bending so as to see light and dark flashes created by black electrical tape wrapped half-way around the roller. A little heat-shrink tubing over the cell blocks unwanted light.

I read the CdS cell with the analogRead (ADC) command. I filter this with a weighted average so as to get an adaptive threshold. The first two meters monitor this process.

meter (10, threshold, 1024); meter (9, contrast, 250);