Last Spring, we had a balloon launch up at Dine College on the Navajo Reservation.  I arrived two days prior to launch, and met the rep for the college there, as well as a few other members of our balloon group.  After introductions, we met with several students that were working on their individual payloads for the flight.

Dine College Location

At some point, it became clear that the students were having some problems getting their payloads ready.  The problem was associated with getting their Arduino programs to compile.  The teacher that was sponsoring the group had little experience with programming.  Someone asked if I had any experience.  This was totally unexpected, and caught me a little off guard.  But I was a programmer/analyst for 10 years at my job, so I knew C & C++ pretty well.  I had done a couple of projects at home with the Arduino, so I offered to help where I could.  My primary function was to support the setup and operation of the ground station, but it made more sense to get the payloads ready.

It seemed that most of the problems had to do with installing the correct libraries to support their hardware.  I worked until school let out for the day in helping them find and download appropriate libraries.

The next day, having solved the library problems with the students I had worked with, we continued on with the next problem…  Getting the hardware to work with their programs.  The main problem here was that most of the demo sketches that they were basing their projects on were written for the Arduino Uno platform.

Arduino Uno

But they were using an array of other types of Arduinos, including the Mega 2560, the Due, and maybe more, I can’t remember…

Arduino Due

 

Arduino Mega

 

Arduino Duemilanove

Well the different flavors of Arduino use different input/output pins for the same functions, and some have very specific sets of pins that they will only work with (Due).  In addition, some Arduinos (Due, for instance) use 3.3 volt logic, while others use 5.0 volt logic.  The peripheral devices also had to match the voltages on the Arduinos.  It was becoming apparent that this was going to be a much bigger job than I had anticipated.  It seems that since the balloon project was extracurricular, they had nobody pushing them to make progress through the semester, so when they couldn’t finish the first step, they made little progress on to the next steps.

Long story short, we had very little success in straightening out all of the problems with just 1-1/2 days to work with all of the students.

I hope to do better this year by being more prepared with knowledge specific to their projects.  I have purchased several varieties of Arduinos, along with some of the peripheral hardware that they were trying to use last year.  It is my intention to get these devices to work with all of the different Arduinos that I have accumulated, and to document what it takes to get them working on the various platforms.

I started with getting the SD Card Reader to work with the Arduino Uno.  I will detail this process in my next post.

Cheap SD Card Reader

 

Adafruit SD Card Reader

When I have those working well with an array of Arduino types, I will move on to the BMP280 pressure/temperature module.

BMP280 Pressure Temperature Module

After that, I hope to find a CO2 monitor like the one they were using last year, but so far haven’t been able to locate one.

Then, who knows???