Which came first

Ahh, the age-old question of the chicken or the egg. There’s a similar theme in my family having to do with my Dad and making stuff. He introduced me to electronics when I was too young to realize how awesome it was, I introduced him to the Raspberry Pi, then he introduced me to Adruino. I introduced him to video capture on the Pi (with the help of a 3D printed camera case) and he turned it around into a nest cam! Ahh, so there’s the bird connection, this is a post about setting up a quick and dirty (and surprisingly effective) nest cam!

Continue reading Which came first

A Vernier Go!Link package for Mathematica

The Go! Link from Vernier Software & Technology (Vernier), is a USB adapter for their proprietary sensors which also provides some basic features such as a buffer, sensor auto-identification and raw voltage reading conversion. Vernier provides a software development kit which allows programmers to use Go! devices in their own systems. Since Wolfram’s Mathematica software became available on the Raspberry Pi, I have been thinking about how one can build a flexible sensor system using Vernier’s products and based on the inexpensive computer and the powerful data analysis and visualization tools of Mathematica. This project isn’t new, and my earlier attempts were highlighted on the Raspberry Pi blog and I recently announced a previous version of this software package. What I’m presenting now is a more user-friendly system that makes data collection easy through the device driver framework incorporated into Mathematica.

Continue reading A Vernier Go!Link package for Mathematica

C2E2 – Working on my Chicago bucket list

One of the things I absolutely had to do before leaving Chicago is to attend C2E2 – the Chicago Comic & Entertainment Expo.  Every year I’ve been here, I’ve remembered I needed to get tickets a week after the event ended!  This time, with Chicago State cancelling spring break and me having to forfeit my trip to New Mexico, I was determined not to miss the event.

Turns out I don’t know much about popular culture.

Continue reading C2E2 – Working on my Chicago bucket list

Optimizing data acquisition

This is the first of a new series (tag) Dancing with Wolfram.  Occasionally, I need to work through programming strategies in Wolfram, and I need a place to store my ideas.  Perhaps they will be useful to others.

The problem

When collecting data from a sensor, one wants to generate a list of {x, y} pairs where x is typically time and y is the sensor reading.  One way of doing this is to create an empty list and then using Mathematica’s AppendTo function to add elements to the list.  The problem with this approach, however, is that it is not very efficient.  The function call makes a copy of the original list each time, and when the list of data gets very large, the time it takes to store a data point increases.  Below, I’ve plotted the average time needed to store a datapoint as a function of the list size.  For comparison, I’ve collected data (times measured on a Raspberry Pi v2)  using AppendTo with a list (blue dots) and adding key -> value pairs to an association (orange dots).

list-association-gr1

After about 1000 data points, the AppendTo a list approach starts to take increasingly longer times.  I was unable to collect any data beyond 10,000 data points since AppendTo started running into memory issues.  It is not unreasonable to expect a sensor data set to contain in excess of 1000 data points, so the performance of AppendTo is not acceptable.

Continue reading Optimizing data acquisition

GoIOLink release candidate 1

Introduction

GoIOLink is the flagship component of a project I call VernierPiLink which seeks to provide a variety of Vernier-sensor-Raspberry-Pi integration resources.  It relies on VS&T’s Go!Link USB adapter to perform the physical connection between an analog Vernier sensor and the Raspberry Pi.  On the software side, I am using the Go! I/O software development kit also from VS&T and the Wolfram Language which comes free (for non-commercial use) on the Raspberry Pi.

Continue reading GoIOLink release candidate 1

Trash to treasure in the chem lab

A few years back, I bought a whole bunch of Fisher brand pipette tips and now my lab is cluttered with a bunch of empty plastic boxes now that the tips have been used and disposed of.  I needed a quick project enclosure to build an instrument for a student and thought this might be an interesting exercise in repurposing.

Continue reading Trash to treasure in the chem lab

Using Vernier LabQuest sensors on the Raspberry Pi

In the previous iteration of my website, I had some details about installing the Vernier Go software development kit on the Raspberry Pi and then using Mathematica to visualize the results.  Here is an updated set of instructions which is a little more straightforward.

Continue reading Using Vernier LabQuest sensors on the Raspberry Pi