Nerdy Weather Station

Last year, I decided to learn something new and followed this guide to make my own IoT weather station. It turned out well!

IoT Weather Station
IoT Weather Station

However, that original project relies on IFTTT, which has suddenly decided it is going to charge for anything more than 3 applets. (I had, oh, 15 or so, one for updating the weather each hour, and one for the next day’s forecast, displayed around 9pm.) I figured there had to be another way to accomplish this simple task: check weather report, send conditions and temperature to the Adafruit IO API. I may yet end up converting this to a Python script so that it lives on my own hardware, but for now, I converted it to a Microsoft Flow. (NOTE: my company uses all Microsoft software, so I was able to use the HTTP portion of Flow without paying extra; a definite downside and another reason to convert to a Python script eventually!)

Microsoft Flow is very similar to IFTTT in that you can set up the output of one action to be the input of another. But it also ended up having the added bonus of more configurable recurrence intervals. So now, instead of updating every hour, my weather station can update every ten minutes. It also ends up using MSN weather instead of Weather Underground (which requires purchase of a real weather station to get access to their API) or Dark Sky (which closed access to their API following their purchase by Apple).

UPDATE: I just couldn’t stand it, so I decided to take a crack at converting this to a Python script, and it was super easy. I’m using the OpenWeather API, specifically the “OneCall” API, which gives me the current weather and a 7 day forecast, all in one. I wrote two scripts, which provide the forecast every night, and the current weather updated every ten minutes. My Raspberry PI uses the cron to schedule these and send the output to Adafruit IO. The best part of having my own scripts is that any new “unknown” weather conditions can easily be adapted to the conditions that the weather station code understands. (For example, the weather station understood “Sunny” and lit up the sun icon, but did not know “Partly sunny” should do the same. Easy fix now, rather than having to reprogram the weather station itself.) The OpenWeather API is free for most of its APIs, up to 60 calls/minute and 1,000,000 calls/month, way more than I should ever need. So far, the data looks decent too, at least somewhat in line with other weather apps.

This was supposed to be a fun side project to teach myself more about soldering and programming Arduino devices. As it turned out, it was a great project for figuring out how to adapt a project to use completely different services than the ones that were originally used.

Weather Station

Lately, I’ve been doing a lot more “tinkering” with little side electronics projects at home. It started when I tried to teach Evan how to solder while also learning the skill myself! We managed to put together a tiny LED flashlight kit and it all snowballed for me from there.

I managed to put together another beginner’s soldering project.

And then I even soldered the headers onto a Raspberry Pi Zero W. All forty of them! I ended up using that to put together another one of the Google AIY Speakers so I can play my music in the workshop.

Having found a bit of confidence in my tinkering ability, I moved on to a more involved project: an IoT Weather Station. I largely followed this Instructables course, but made a few changes to suit my preferences. This project was a bit trickier, as I had to solder the headers onto my Adafruit Feather Huzzah as well as the Adafruit 7-Segment FeatherWing display! Soon, I had the breadboard circuit wired up and ready to go.

Breadboard circuit

I also used four NeoPixel LEDs, which provide the color for snow, rain, clouds, and sun.

Final Weather Station
The finished product, with hand drawn logos, showing partly cloudy conditions and a temperature of 86 degrees

Every evening at 9pm, the weather station will display the forecast for the following day. The following morning, beginning at 8am, it will show the current weather conditions at the top of every hour. Pretty nifty!

I learned a lot doing this project and got to use skills in the physical world (soldering, circuit building, even drawing and building the box) as well as the virtual world (coding, IFTTT, APIs). I have a few more ideas on what my next project will be, so stay tuned!

Farewell, Office

When I started my new job in June, I was pleasantly surprised to find that I had an office of my very own, complete with actual closing door and everything.

Unfortunately, I have to move out next week as renovations begin on our floor, and they convert everything to an “open pod workspace,” which is pretty much my nightmare scenario.

Farewell, sweet private office, I will miss you, and I will probably work from home a lot more in the future whenever I can!


Burger Brackets

Oh snap! In addition to the aforementioned Beer Madness, Washingtonian magazine is kicking it up a notch with their Burger Brackets, a battle to determine the best burger in the DC area. I was appalled to see they didn’t include my current favorite, Big Buns in Ballston. The strange thing was that they did include Fuddrucker’s (my own most HATED burger joint), which isn’t even really a Washington area place.  Update: Reading back through their posts, it seems that they may have a whole second part of the bracket yet to be unveiled!  So these are only 16 of the 32 entrants.  Oh damn, it is on now!
At any rate, it should be quite a battle. I don’t know if they seeded the entrants, because somehow Five Guys and Ray’s Hell Burger are facing off in the second round, which, given both places’ rabid fans, is likely to produce the overall winner. If nothing else though, they have given me a list of places to sneak off to for Friday lunch.

My Geek Weekend: Occam’s Razor

In between two birthday parties and various football games (U-M loses to Toledo?!?! ND loses, Redskins lose, MSU wins, good weekend for football) and other stuff, I hacked away at some computer stuff too.
Last week, I spent a lot of time trying to convert videos to watch on my iPod Touch. I figured that with winter fast approaching, I’d probably be riding the bus more often on those occasions when I wimp out on riding my bike. As such, catching up on all the stuff I have on Tivo would be cool to do while passing the time. Alas, all my efforts were frustrated by the fact that every video converter I tried managed to freeze up my computer.
I initially thought the problem was with a failing hard drive, so I spent part of the week backing up everything on the hard drive. I then checked the hard drive for errors, but it came back with no problems reported.
My next thought was that it was a heat problem. This was partially confirmed when I ran a tool called SpeedFan that monitored my CPU’s temperature. During one video conversion, the computer locked up with the CPU at a temperature of 98 degrees Celsius! That’s 208 degrees Fahrenheit, 4 degrees away from boiling water. In other words, hot! So, I popped open the case to take a look, and I discovered that every outlet vent of my case was covered in a layer of dust, preventing the fans from pushing air out, and trapping the hot air inside. I cleared out the vents, and while doing so rediscovered the fact that my CPU fan had a knob I could use to crank up the speed a bit higher, thus cooling the CPU even more effectively.
After this cleaning routine, I was able to grab a show off my Tivo and encode it into an iPod-friendly format. It was a little bit jittery, but not too bad. I’m going to play with the settings a little bit more to see if I can smooth it out some, but I’m calling the geek weekend a success as a result of getting it to work once.
It just goes to show you: if your computer is freezing up, the most likely culprit is the simplest one, overheating. Occam’s Razor in action.
Oh yeah, and did I mention, I succeeded in the One Hundred Pushup Challenge! On Saturday night, I powered out 100 pushups! I am still shocked that all my hard work paid off and I accomplished my goal.

Annoyances and Triumphs

I’m going to have to take a break from this tonight, since it’s getting so frustrating, but for the past couple of evenings, I’ve been trying to convert some videos into an iPod Touch-friendly format. There are a couple of reasons for this: I could potentially catch up on Tivo viewing while riding the bus; I could get an AV cable for the iPod and hook it up to the crappy DVD player we got (it is very finicky about accepting DVDs to play) and then have stuff for the kids to watch on those long drives to Michigan for the upcoming holidays.
This is not going well. I’ve tried just about every converter in the book and every single one of them freezes up somewhere in the middle of the conversion. Of course, most of them seem to use the same encoder behind the scenes, so this doesn’t come as much of a surprise. But it’s still frustrating. I’m beginning to wonder if it’s not something where my computer is limited in what it can accomplish. I even thought I heard an ominous clicking coming from the hard drive last night (luckily I backed up all my important pictures and music, as well as our Quicken files, so I shouldn’t lose too much of importance if something craps out. Still, my project has now turned into scouring the computer for things that need to be backed up.).
The one bright side of all this is that I discovered a true gem in the App Store: Mocha VNC Lite. It’s free, and it allows you to use your iPod Touch (or iPhone) to connect to a VNC server running on your computer. That’s all geek-speak for saying that you can remotely control your computer via the iPod. That’s pretty cool for when I don’t want to sit in front of the screen watching a conversion tick through slowly. Instead, I can connect via the iPod and watch on its screen as it ticks through slowly. Once I get it set up properly, I could even connect to my computer at home while sitting at a Starbucks somewhere.
So while I still have to figure out the video conversion thing, and I’m still trying to work out a way to sync my wife’s Palm with Google Calendar, I’ve still managed to get some fun things working. Oh, and the iPod is also pretty good at playing music.

Verizon EECB works!

You may recall that a couple of weeks ago, I called Verizon to try to reduce my monthly bill for FIOS by committing to an additional year of service. Naturally, they screwed it up. The next day I found I was being charged for online storage and a security suite I never ordered. Then the following week I got a new wireless router from them in the mail, even though it was the exact model I already have! Still, the packing slip said there was no charge, but I made sure to check my bill when I got it. Oh, did I mention that since I only have internet, no home phone, they cannot send me a paper bill, and they have to bill my credit card automatically? Yeah, nice, huh? So naturally I check yesterday for this month’s bill, and it comes to a whopping $194.99!!! You guessed it, they charged me $139.99 plus tax for that router they sent me. The best part was that no one in their billing department could even see the bill that I myself could see, and that I could see was being charged to my bill paying account.
After wasting much of my day on hold with no results, I resorted to the Consumerist playbook: the executive email carpet bomb. I found a list of email addresses of Verizon executives, typed up a quick email describing my plight, and sent it away at 3pm yesterday. At 4:45pm, I had an email and voice mails on my home and work phones from Mrs. Brown, who had taken care of everything for me: the router would be removed from my bill, and my FIOS would now cost me $42.99/month. Best of all, I have her direct line in case anything goes wrong again. The only bad thing is that I still cannot get a paper bill and have to auto-pay via credit card.
The whole experience definitely makes me wary of considering them for any bundling of TV, phone and Internet, but I was lucky to get through to the right person who could actually do something about my problem.
Now, if only they could help me with the pennies that Evan managed to shove into my car’s CD player, causing it to short out….

A Weekend with the iPod Touch

Almost a year ago, I had completed my latest freebie spree. Unfortunately, it took nearly all of that year to see any results. But I finally got my $500 Best Buy gift card last week, and promptly used it to order Wii Play, an 8GB iPod Touch, and preorder Guitar Hero World Tour. I was able to pick up the Wii Play at my local Best Buy (Ellie loves the cow racing game), and hopefully the preorder of Guitar Hero will arrive not too long after it’s released at the end of October. The iPod Touch arrived on Friday, and I had a lot of fun playing with it over the weekend.
The good: I can use any open wifi hotspot to get online. This includes my house, any Starbucks, and apparently some areas around the Smithsonian. The last two came in handy for getting directions from downtown to a church in Arlington where Lisa had Daisy Scout training. The “find my location” thing is super cool and works very well. It uses known wifi hotspots to figure out your current location and give directions based on that.
The bad: My old iPod used a Firewire connector to charge via the AC adapter. The Touch only uses USB so the adapter doesn’t work, and the only way to charge is through the computer. 8GB is good enough for now, but I had to take some music off to make room for apps I downloaded.
I was also able to set up my GMail through the Mail app and used NuevaSync to feed my calendar. The one problem I’ve run across is that, not having Outlook on my computer, I have no way to get calendar data from my wife’s old Palm m100 onto Google Calendar or the Palm. Well, that’s not totally true: there is CompanionLink, but I don’t know if it’s that important to spend $30 on the software. So if anyone has a free solution for me, I’m all ears.
All told, I’m very happy with the Touch, and looking forward to playing with more apps, as I’ve only had a short time to play in the App Store so far. I’m also checking out how to convert video to the correct format to play on the Touch, so that maybe I can catch up on some stuff that’s recorded on my Tivo. So far though, that’s been a frustrating experience and the converters I’ve tried repeatedly crash before finishing the conversion.

Touch me babe

I’m having way too much fun with my new iPod touch. And I’ve hardly used it for music yet. I downloaded a bunch of apps and set up my email and calendar stuff. I’m even typing this (slowly) on the Touch. Pretty cool!