1984

In a moment (well, several hours) of extreme geekery I hooked up my GPS, my cell phone and a few hundred lines of software to my car to update my website with my current position and speed while I am on the road. If I am actually driving you’ll see a little map on the left showing where I am and how fast I’m going. If I’m not driving I hide the map.

Since I wasn’t able to watch myself drive around on the map I made it so that the data is all recorded into a database and then I wrote this to play back the data. It’s being played back at about 3x normal speed but the speedometer at the bottom is real data. Right now this plays back everything I’ve recorded. I’ll be changing it soon so I can pick start and end times to playback. It takes about 20 seconds to get going cause I was sitting in my driveway setting stuff up.

Pretty fun, huh?

And for the more curious among you, here’s how it all works:
As I’ve written before, I recently installed a Mac Mini in my car to play music. That’s the base of the system. Additional hardware is my Garmin eTrex Vista GPS, GPS data cable, my cell phone and a cell phone data cable.

The data path goes something like this:
GPS sends NMEA formatted updates every second to the Mac Mini over the data cable. gpsd receives the data from the GPS, parses it and makes it available to the rest of the system. My car controller software that I’ve written reads the latitude, longitude and speed from gpsd every second and uses the cell phone’s Internet connection to make a GET request to a special page on my website, passing along those three values. The page records the values in MySQL (database) along with a timestamp and then it writes the values out to a XML file on the filesystem. The map on this site is using the Google Maps API along with AJAX to request that XML file every second and update the displayed map.

Since I don’t want the cell phone dialed up all the time and I’d like to be able t turn off the mapping when i want to I added some new voice menu commands to my system. I can say “Connect To Internet” and the Mac will dial up and I can “Disconnect From Internet”

Future plans involve a dedicated GPS (with an external antenna) and a dedicated cell phone or data card. I’d prefer a data card but I would need a USB one, or a USB to PCMCIA adapter and I can’t find either. With that and an EVDO account my car will be online all the time and I’ll be able to add more stuff like streaming Internet radio stations and live webcam from the front of the car.

This project has really been a blast. I can just keep adding to it and there’s all kinds of unique problems to solve to get things going. I’m having a lot of fun.

Shut Up, Shut Up, Shut Up!

So, as I mentioned last night I got my Mac Mini installed in my car. Voice control works, usually. I need a much better microphone, and I need it mounted and I need some noise cancelling stuff but it works. I can definitely select music.

To go back a bit, before I started this project, what I really wanted to do was build something so that I could hook my iPod to my car and be able to browse/play/control it from the head unit. To do that I was going to need to figure out the protocols and such for displaying text on the console of the car and so far no one else has done that. I was also probably going to need to buy a Mini Disc player for the car (to reverse engineer) and have my radio pulled for a few weeks while I figured it out.

So, with that sounding like a bummer I remembered one day (after a bit of prompting from Jono) how great the voice recognition is in OS X. That day I decided I would buy a Mac Mini, write some voice control software and do music that way. So that’s how I got to today.

Well, yesterday I found out that the same guys that made the little module I use to get audio into my car will be releasing a new module in January with full Car PC support. It has a serial port and sends all commands it gets from the head unit (next, previous, random, repeat, etc.) to the serial port as well as letting you set text on the console! So, once that is released I’ll really be able to integrate my Mac and I don’t have to spend hundreds of dollars and hundreds of hours of time reverse engineering it. I do have to wait a month and a half though, which is almost as bad in my book.

So anyway, it’s installed and working. When I start my car the Mac wakes up and iTunes starts playing where it left off. It takes about 5 seconds. About the same as my CD player did, so it’s pretty seamless. When I turn the car off the Mac goes to sleep. Draws about 100ma while sleeping which isn’t bad at all.

Right now I have just strung a microphone up to the driver side visor until I decide what mic I am going to use and where to permanently mount it but with that microphone I can browse my entire iTunes library and pick any artist, album or song to play. I don’t have next/previous support yet, which sucks, but it’s just a matter of writing the software.

The coolest thing so far though is that I installed MacStumbler (on Adam’s prompting) last night and turned on it’s option to speak the names of access points it finds. So sitting in my driveway I hear:
Found access point vonnieda.org
Found access point netGEAR

Driving down my street I heard two more netGEARs and a few Linksys. Driving to work this morning I heard no less than 30 access points and for anyone keeping track, Linksys seems to be the most common one.

MacStumbler supports keeping a log of open access points with GPS coordinates if you hook one up, so that’s what I’ll do tonight. With that log and a day of driving I could easily make a map of open access points in Kansas City. Mmmmm.

In the near future I want to install an iSight and bury it somewhere in the front of the car so I can make videos of my driving like an idiot on the highways of Kansas. Plus once I get all the access point stuff figured out I’ll be able to see where my car is parked if it gets stolen! Hooray!

Very Important

I’ve been so fucking busy the last two weeks I haven’t been writing much, and there’s plenty to say. Last weekend was lots of fun, and I need to record it before it fades but mostly I’ve been working on Der Projekt. I finally installed it tonight and it’s fucking awesome. More on that later.

For now, it’s very, very important that you check out Pandora. If you like music, that is. Seriously, check it out. I’m impressed.

Now I have to sleep. It’s late and I have to be up early and… wow, I just looked at my fingernails. I think it’s quite possible I’ve been working on a car all night.

Ugh. Must… turn… off… brain…

Oh, funny thing, real quick: When I rev my car past 8.5k it beeps at me. It’s like “Shift now please, thanks.” Today I saw someone post on RX8Club that when he drives all he hears is “Rrrrrrrrrrrr beeeeeeeeeep rrrrrrrrrrrrrr beeeeeeeep rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr beeeeeeeeeeeeeep” hehehe… that’s awesome.
I had forgotten how much fun it is to beep the tach. I did it constantly when I first got the car but I don’t think I’ve done it since the accident. Tonight… I beeped the God damn tach like nobody’s business.

Now, sleep.

Thrashing

When it’s Sunday night and you are at work and you are pretty sure you are the only person on the entire campus and you are listening to some Coheed and you break out into a little air guitar… well, I just hope this place doesn’t have cameras.

What’s Grabbin’ Me

Downloaded some new music this morning, and put some stuff on my iPod that’s been laying around unlistened to.

So today I’m listening to Stellastarr* – Harmonies for the Haunted, Editors – The Back Room, Radiohead – Hail to the Thief, Franz Ferdinand – You Could Have It So Much Better With Franz Ferdinand and I might give a listen to Incubus – S.C.I.E.N.C.E. which I haven’t heard in forever.

At the moment though I am listening to Stellastarr*’s “Sweet Troubled Soul” over and over and over and over and over. Especially the part where he goes:

I want to suffer in your arms
And when you’re naked in the dark I want to see your face in the reflection of my bedroom stereo
We’ll take it slow
Sweet troubled soul

Man, that’s the shit.

Oh man, I think I’ll add this too.
Isn’t it great when people write songs about you?

If fortune favors the brave
I am as poor as they come
I’ve got a million things to say
I’ve got a million things too