What I want to do
I came across the existing DustDuino project and thought it would be a great item to build as an introduction to both environmental monitoring and hardware prototyping. I will use this page to document my progress, as someone who is new to the hardware realm.
My attempt and results
First order of business was to order the appropriate supplies, as outlined here. Since I am starting from scratch, I had no supplies of my own such as a soldering iron, so this inflated the cost. Some things I probably had lying around (e.g., USB cord, power supply), but decided to buy a dedicated set for prototyping.
*Project cost is close $100 if you already have basic hardware supplies.
Amazon ($148.51 w/ tax and shipping)
* $4.67: AmazonBasics USB 2.0 Cable - A-Male to B-Male - 6 Feet (1.8 Meters)
* $96.72: Hakko FX888D-23BY Digital Soldering Station FX-888D FX-888 (blue & yellow)
* $5.49: Wall Adapter Power Supply - 9V DC 650mA
* $10.45: MG Chemicals 8341 No Clean Flux Paste, 10 ml Syringe
* $22.95: Arduino A000064 Wireless Proto Shield for Arduino
EpicTinker ($22.00 w/ tax and shipping)
* $15.00: Grove - Dust Sensor
* $5.99: 2.5 oz 60/40 Rosin-Core solder
All the supplies gathered together ready to go
Step 1: Downloads
Since I haven't worked on an Arduino project in aeons, I didn't have any of the necessary software. Luckily, the IDE is readily available on the Arduino website. I downloaded the Arduino 1.6.6 IDE (which is open source) for Mac OS X 10.7 or newer. Dragged and dropped into my Applications folder without any issues.
I also downloaded the zipped repository for the DustDuino project from Github, which contains background literature and Arduino sketches. From this and Googling, I learned that an Arduino sketch is the same thing as a program. Lingo and language are important, kids. The more you know.
Step 2: Program the RN-XV WiFi Module
Here's how to set one up, using the SD Wireless Shield and the Arduino IDE:
- Plug in your Arduino UNO using a Type B USB cable to your computer like so. A green light should come on.
- Open up the Arduino IDE.
- With no shield attached, load a bare minimum sketch onto Arduino UNO. (How to Upload a Sketch)
- Attach the RN-XV to the shield.
- Attach the shield to the Arduino UNO.
- Switch serial select on the shield to "USB".
- In the Arduino IDE, and Tools > Serial Monitor.
- Select "no line ending" in the Serial Monitor.
- Enter "$$$".
- RN-XV will respond with "CMD".
- Change serial monitor to "carriage return".
- Enter "set wlan ssid \<id>" (when entering your network's ID here, substitute any spaces with the character "$").
- Enter "set wlan phrase \<phrase>".
- Enter "set wlan join 1". (This is a new step that I had to add to the original instructions after troubleshooting. The RN-XV disables auto-joining networks after firmware version 4.0, so you have to enable it. Here's the manual in case you also run into trouble.)
- Enter "save".
- Enter "reboot".
- If you successfully connect to the internet, the only light blinking on your RN-XV should be green, which should be blinking slowly.
- Next, follow the instructions here for updating your shield, which worked perfectly.
Step 3: Fun with wires Most of my experience with soldering was helping my father on plumbing jobs when I was a kid, so suffice it to say, those skills aren't supremely transferrable here. Since I expect to be doing a fair amount of prototyping, I did want to get a decent soldering iron, so I invested in the Hakko FX888, which gets great reviews as a mid-level station. Originally, I actually also purchased lead-free solder because I wanted to make something that is friendlier, healthier, and generally more compliant with regulations, but after doing some reading and messing around, I discovered the lead-free solder was more difficult to work with -- this proved to be problematic since the soldering required (as described below) was a bit fiddly, so I ended up grabbing some basic 60/40 Rosin-Core solder from Radio Shack instead. MUCH EASIER.
I also originally planned on stripping and using 22 AWG wire for the whole project, but after a separate order from Adafruit arrived, I ended up using male-to-male jumper cables for everything, since they just were less of a pain.
Questions and next steps
Xively Account setup
Why I'm interested
Long term, I'm interested in building stylish, usable wearable environmental monitoring hardware. But, I have what can be described as "complete noob" hardware skills, so I want to get myself some basic skills in both hardware and environmental monitoring before I try something truly cutting edge.