I have two Lego RCX units sitting around as part of a large Lego collection. When I first got them about four years ago I played with them intensely. I would look at other people's designs online and then spend hours building cool things with them. This was about six months before I started college, where I didn't have access to them at all. Since I graduated, I have my Lego collection again, but I haven't really had time to do anything with them. Until now.
Four years is a long time when you're talking about technology. While I though my RCX units were the coolest thing ever four years ago, they've now lost some of their appeal (due to Lego releasing their second generation NXT based robotics kit, and me getting older among other things). Four years is also enough time to make the serial port virtually obsolete (try finding a modern-day laptop that has one, mine certainly doesn't). Of course, a serial port is exactly what I needed to connect the IR tower, which communicates with the RCX, to a computer. Luckily, I was able to find a USB to Serial adapter at Fry's for $25.
After hooking everything up and installing the Lego software, I was reminded of how outdated it was when I saw the unskippable intro movie with the terrible compression and the lame 3D graphics that was considered cool back in the day. Even four years ago, I felt Lego's programming language and IDE was overly simplistic, meant more for the 8-14 age group. Now, after three years of school to get a CS degree and half a year of working in the industry, there was no way I was going to program my RCX by dragging brightly colored blocks around, listening to a voice guide me through the tutorials, and watching that cheesy intro movie every time I wanted to edit my program!
Thankfully people have made several of their own languages for programming the RCX. NQC or Not Quite C is one such language based on a simplified version of C. I was surprised to find that the nqc binary not only lets you compile and download programs to the RCX, it also lets you sent raw commands via IR, which basically allows to remotely control everything about the RCX if you know the right opcodes! Good thing someone has compiled a list of opcodes.
As an added bonus, nqc is a command line program, so it can easily be called from other programming languages, like Java, my language of choice. This definitely opens up a whole slew of interesting possibilities.
So I really wanted to listen to the latest episodes of my favorite podcasts on the road without having to burn them to a CD. In an earlier post, I lamented how the stock Sonata stereo doesn't even have a line-in jack, which I could hook up my iPhone to.
Well, the days of podcast-less driving are over. I bought an after-market head unit and mounting kit for about $150 from Car Toys (it was the cheapest one with a line-in jack). Installing the unit myself was easier than expected since I already had experience removing the existing unit. The most annoying part of the process would be having to solder about 20 wires together.
Opening the little storage compartment door makes a good tray that I can put the iPhone dock on. The dock is then connected to power and the head unit. It looks a bit messy with the wires, but it gets the job done.
Controlling the iPhone while driving is actually harder than I thought it would be. Since it's a touch screen, I have to actually look at the iPhone to make sure that I'm pressing the right button. Also, it's very easy to mess up and hit the wrong part of the screen. I think I could get used to it with practice though.
Okay, all the things I said earlier about Verizon having good customer service are hugely offset by this. I just looked at my credit card statement and discovered that they charged me $158.88 for the FIOS in the month of November. It should be $49.99 like all the previous months. I have no idea why I was charged an extra $108.89. This has been irritating me all morning and I haven't gotten any answers.
My FIOS information doesn't show up when I log into my account at verizon.com, probably because they did something screwy when I canceled my landline with them a few months ago. I've been on hold with their customer service number for a good half hour. I guess they don't have anyone to work on the weekends.