Monday, January 24, 2011

How To: iPad 4.2.1 WiFi with a Bluetooth GPS (Warning, Jailbreak Required!) [Updated 2x]

I landed a great deal on an iPad WiFi after Christmas due to return season, so I thought I'd pick one up. One thing that was particularly attractive was the idea of having a 9.2" GPS. Of course, I forgot the cold hard reality that the GPS is built into the 3G chip which is not included in the WiFi version. Oops!

I'll have none of that.

Jailbreaking Disclaimer


Before you read any further, repeat after me: "I will be voiding my warranty and may very well break my device by doing any of this." This information is provided AS IS. If you permanently break it, I'm not buying you a new one and nobody at Apple is going to be sympathetic.

And finally, "I will not be a despicable human being and use this jailbreak for the purposes of software piracy." It appears that jail breaking for the purpose of changing carriers (unlocking) and maybe even for the purpose of allowing unapproved software; i.e. breaking out of the walled garden that is The App Store, is probably legal. Though parts of that are being debated right now, so lets keep that in mind as we proceed. Check your local/national laws and make sure you're not breaking them

The Things you'll need


A Bluetooth GPS


Apple doesn't support GPS via Bluetooth. I'm not sure if this is because it adds a level of complexity that they expect the average user won't tolerate, or if it's because they'd prefer you not buy the WiFi version. In my case, I already own a MiFi so the idea of purchasing a data plan just for an iPad would have been wasteful.

Good Bluetooth GPS devices have a decent battery in them and can run unplugged for several hours. I purchased this one for a little over $35.00USD

Bluetooth GPS Software


We'll cover this after the jailbreak, because you can't install this until you've successfully booted jail-broken.

An iPad WiFi with 4.2.1 iOS


That's the version I'm covering because that's the version that was installed on my iPad (it was a returned unit after Christmas). If you have a later version, you're out of luck for now (I'll update when something is available).
If you're not sure what version you have, turn the device on, tap "Settings", tap "General", look for "Version". If it says 4.2.1, you're in good shape. If it's got something earlier, you may even be in better shape, but you'll need to find a different How To. I'm only covering 4.2.1.

The "ipsw" for 4.2.1


Fear not, you can get that directly from Apple, here.

greenpois0n


This is the only software as of this writing that fully jailbreaks the iPad. Download it and save it somewhere you'll remember. We'll be running it soon. Try here.
UPDATE: The iPhone Dev Team has their version now. Use it if you wish, but this how-to covers greenpois0n.

Jailbreaking iOS 4.2.1 for the iPad


So far, a fix to greenpois0n is pending (and if a fix isn't offered, a fix will be available via Cydia for this specific issue). You may want to stop here if you have purchased DRM encrusted iBooks.
UPDATE: If you use iBooks you'll want to take a look at this. Remember that disclaimer. You're now doing things that Apple would prefer you didn't.

A note about upgrading a Jailbroken Device


In short, don't ever apply "official" upgrades to your device from here on out. When iTunes tells you that there's a software update, ignore it (choose "Download Only"). The software update will most likely render your iPad either unjailbroken, or worse ... bricked and unusable. This is a pretty big problem. I'll be keeping mine up-to-date as I see new versions available and jailbroken, so check back here or at any of the hundreds of blogs that cover jailbreaking--especially The iPhone Dev Team, they're a much better resource than this. Always check the iPhone Dev Team or other sites to verify that the new firmware is able to be jailbroken, and that any software that requires jailbreaking to run is also compatible.

Don't Panic


Most of the time, most of the problems you'll encounter can be overcome. One of the big questions I had when I first embarked on Jailbreaking is "Will I have to reconfigure everything on this device again?". I have a bunch of Audiobooks, WiFi network keys and e-mail settings configured and the idea of redoing all of that was not a pleasant one. Other companies should take a page out of the Apple iTunes playbook. Your devices data is restored down to the last place you paused your Audiobook. Other than the addition of Cydia and the fact that you're jailbroken, you'd have no idea you just did what you did (though, do read the section about securing your device!)

So lets get started


Step 1 - Get a good backup


Plug your iPad into your windows or Mac box and make sure iTunes fires up, syncs and backs up your iPad. This is the key to getting everything back to the way you left it when we're done.

Step 2 - Fire up greenpois0n and follow the dead simple instructions


Yes, it is normal for your iPad to boot up with a bunch of text, just hang on. It takes a little bit of time to boot. Fear not, you're probably fine

Step 3 - Fix what's broken.


Maybe you won't have to do this. I did. Upon booting, if you do not have a Loader or Cydia icon, follow the nice video tutorial here

Securing your iPad (DO NOT SKIP THIS STEP)


So great, you're jailbroken. Unfortunately, you also have a device now that has an ID and password that a large chunk of the world already knows (and at least a few of those people are probably people you don't want accessing your device).
Tap Cydia and let it fully load. As of this writing, you'll get prompted that there are updates you need to install. Allow them to install and reboot your iPad.

Once rebooted, make sure your iPad is in portrait display mode (Cydia will look really banged up in landscape). Tap the section about changing the "Root" password. As of this writing "Mobile Terminal" does not work, but try following the instructions. If you can't launch Mobile Terminal, follow the "OpenSSH Access How-To" instructions to get OpenSSH running. Then connect according to those instructions. The Login ID is "root" password is "alpine", and this is the problem we're going to solve.

After connecting from PuTTY or terminal (putty for Windows, terminal for Mac) as instructed by Cydia, type "passwd". You'll be prompted for the old password ("alpine"), then the new password. Don't skimp here. SSH is something that is regularly targeted by hackers and script-kiddies. Go for 20 characters or more, with symbols and numbers weaved in. Don't bother memorizing it. Write it down on a piece of paper and store it somewhere useful to you. The guy robbing your house doesn't care about logging into your iPad remotely using SSH. And the guy who cares about logging into your iPad remotely isn't going to be rifling through your drawers, he's going to be using rainbow tables or brute forcing using the top passwords of the moment. Keep this password at home, not at work. Or write it on something that you can put in your wallet. If this makes you uncomfortable, try using a Password Safe (I'd recommend that anyway, consider protecting your online bank account as carefully as you protect the greenbacks in your wallet).

Installing Bluetooth GPS Support


So now you're jailbroken, secured and ready to go. First, you need software that will communicate with the GPS. As of this writing, there are a couple to choose from, but BTstack GPS 1.5 is the least expensive.
Hop into Cydia, tap "Search" and type in BTstack. If you're not sure your GPS will work with BTstack, install the free version, test it out, then buy the full version (the full version integrates the Bluetooth GPS location information into Apple's location APIs so that GPS based apps can see the data).

Hooking it all up


First, if you've never used a stand-alone GPS device, there's some things you need to understand.
1) Stand-alone GPS devices require a line of sight to the sky. They do not work indoors.
2) "Cold start" can take a full minute or more to get a GPS fix. Your cellphone doesn't take this long because it uses other tricks to figure out where you are, which gives your GPS device a boost in getting a fix.

That's just how it is. My Globalsat sits on my dash plugged into the cigarette lighter at all times, so it's always got a fix. This probably isn't a good idea to do if it's 1 degree outside and you have a weak car battery or don't drive your car every day (or if you live in an area where a bluetooth GPS device might be attractive to a thief).

First, if you haven't already, get your Bluetooth GPS on the charge (make sure to give it a good long charge the first time so as to improve the life of the internal battery).

Hold down the pairing button on the side for 5 seconds and tap the GPS icon on your iPad. If you're using the Globalsat from this post, you should see SB-369 show up in the list of devices (you may see some other devices, as well). Tap it. You'll be taken to a screen that shows the status of the GPS. When the screen changes and you see a "pin" over where you're standing, you're done.

Ok, so what about nav software?


I'm using Navigon's US+Canada edition. It's about $50, plus $20 for traffic. Personally, I think it's terrific. There may be better products out there, but when I was looking through many of them, I found that the Navigon product had the feature set I wanted.

Is there anything else I should know?


Glad you asked. I'm assuming you're not going to walk around with the Bluetooth GPS device in your pocket. Every time you get out of range of the bluetooth device, your iPad will disconnect from it. When you return to your car, or wherever your device is, you have to tap the GPS icon on your iPad and tap the SB-369 under recent devices. It should connect very quickly and if it was on your dash, it should already have a good fix.

See anything wrong with the post, or have experience with better/other bluetooth GPS devices/software? Post it in the comments.