Thrifting Brainstorms

I went to Goodwill this evening with Lindsey and Meredith. I had wanted to go for a while, and after not finding much in the clothing, I turned towards the assorted gadgets in the back to hunt for some cool toys for this assignment.

As luck would have it, there was a great old exercise bike there.

It even had a working pressure dial and speedometer on it.

I bought a Raspberry Pi for the course and I've already started working on a project coding in Python and using my telescope. There is a ton you can do with some cheap switches and circuit boards, so I thought it would be cool if my classroom (someday) had a way to introduce graphing using a manipulative. I have to admit I was in a frame of mind for graphing for a couple of reasons.

First, Dan Meyer had a blog post rounding up some great classroom action he saw in the blogs this week. One was referencing novel ways to introduce students to graphing. Dan posted a quote from the original, which I am reposting here:

...a comment laced with negativity that resonated with Lauren and me was an outburst that “graphing used to be so easy, and this just made it hard.”

The second reason I was thinking about graphing this evening was because of a link from Ramsey Musallam to an interactive graphing game by David Wees. I spent a good time playing the game, learning, experimenting, and working to connect the physical act of moving the stick figure to the way the line was being drawn.

So, I came to this idea: Students could ride the bike, which has a controller hooked to the Rasperry Pi, to create a graph velocity for the time bike is pedaled.

In order to get the tachometer on the bike to talk with the computer, you'd need some kind of controller.


  • Take the backing off the exercise bike tachometer to mount the electric switch.
  • The switch will need to mount inside the casing somehow. You would want it to make contact each time the gear rotated once. This could be done by mounting a trigger arm on the gear to contact the switch to complete the circuit.
  • Run the lead from the switch to the Raspberry Pi. I'm not sure if you would need some kind of intermediate step here before it feeds to the computer. I'm still researching.
  • A simple Python script on the computer would count the number of times the switch is activated for a given period of time to calculate the RPM value.
  • The value would be given in a graph vs time as long as the bike is running.

I'm still learning python, but you could start with this snippet of code to get the momentary velocity.:

r = raw_input('Radius [meters]> ') RPM = raw_input('RPM> ') rad = float(0.10472)

v = float(RPM) * float(r) * rad

print v," m/s"

By wrapping this function in a while loop, you could probably create a pretty nice graph for the time the student was riding the bike. You could then even take it into an experiment where they measure the change in velocity as more resistance is applied to the wheel.


Yenca, C. (2013, October 31). Giving a go. mathycathy. Retrieved from

One thought on “Thrifting Brainstorms

  1. […] week, I wrote about a potential activity using an old exercise bike and a Raspberry Pi hacked together. (It even had a super-fancy animated GIF as a bonus.) In short, the idea was to […]

Leave a Reply

Your email address will not be published. Required fields are marked *