A while back I built my own thermostat using an Arduino, nodejs, and Google Calendar. It worked really well, but when I moved to a new apartment last year I couldn’t use it (because I now have window units instead of centralized heating/AC). I finally got around to putting it back together this weekend, but I had to rip out the (now unused) thermostat code. What was a Google-Calendar-controlled thermostat is now just a thermometer. Not nearly as cool, but I’m at least glad to have the portion that makes sense back up. You can see it here.
Arduino is awesome, but using their IDE is uncomfortable for people that would prefer vim or emacs. There is an option in the IDE to allow you to use an external editor, but you still need to use the GUI to get access to the compile & upload tools. Here’s my setup, for a vim-only setup (would be similar for emacs).
As prep for future projects, I’ve built a simple 2D array of individually addressable LEDs. This canvas will ultimately serve as the platform for some games (snake, pong, etc), but I’m hopeful that other people will find this useful and come up with some cool applications.
I picked up a telegraph sounder on ebay this week. I don’t know much about its heritage, but it definitely looks vintage. I wrote some code (see below) to get my Arduino to clack away on it. In the video, the sounder is tapping out the Gettysburg Address, which is the example text in the code.
LED strips are growing in popularity and ease of use. I’ve been playing around with them lately (with my Arduino), and, for the uninitiated, here’s an overview of what’s available, and how much it costs.
At Braintree, the developers get every other Friday to work on non-work-related projects of their choosing. Collaboration is encouraged, but even if you end up working on something alone, it’s a great way to spread your excitement about whatever interests you at the moment (and it’s a nice perk to the job).
This week, my project was to get some LED strips unboxed and working. The strips are flexible circuit boards, with full-color LEDs dotting one side. Each “LED” is actually three LEDs clustered together (one red, one green, one blue), and with 21 control bits, they can display more colors than the human eye can distinguish. I bought a variety of strips, with different features, and I don’t know exactly what I’m going to do with them, but step 1 is to learn how to use them.
I’ve completed the first pass of what seems to be a popular electronics self-education project: a home thermostat. I’ve already written about some of the software, and now I’d like to share some of the hardware details.
I finished my first significant electronics project in a while: Power Hungry. The idea is that I use sensors to monitor the actual voltage & amperage usage of various devices in my apartment, and I wirelessly transmit that to a base station, which calculates various statistics. The results are then beamed to my linode server, where I have some graphs of the data. The ultimate goal is to use this data to reduce my overall energy usage, but for now I’m just working on establishing a baseline, so I can best judge the effectiveness of whatever changes I make. The results so far, though, are fairly interesting.
I recently picked up a graphic LCD display and a clear touchscreen panel for a project I’m starting. They’re a lot of fun (and pretty cheap), but there are a lot of wires needed to get it hooked up, which means it’s somewhat fragile to move around.
If (like me) you like to move around when you code (couch/coffeeshop/bed/etc), then you’ll want to build a breakout board for your setup.