Unroot and Upgrade Nexus 5 to Latest Android Version

Mobile Devices No Comments

I purchased a used Nexus 5 recently. When I used the built-in Settings app to upgrade it to the latest Android version, it got stuck at the bootloader screen on reboot. The previous owner had rooted the Nexus with a custom bootloader which broke the stock upgrade process. Because I am planning to develop apps on the Nexus 5, I needed a stock device. Below are the steps I took to unroot the Nexus 5 and upgrade it to the latest stock Android 5.0 Lollipop version using my Macbook.

Note: Actually, there are no special steps to unroot the Nexus 5. Re-imaging the phone with the latest stock Android version will automatically do the unroot (by overwriting the custom bootloader and/or android OS with the stock version).

Install Android SDK Tools

To prepare, I downloaded the stand-alone Android SDK Tools . The latest version for Mac OS X was “android-sdk_r24.3.3-macosx.zip”. (Alternatively, you could install the Android Studio, which includes the SDK Tools and a graphical IDE equivalent to Eclipse.)

I extracted the Android SDK Tools to my “~/Development/android-sdk-macosx” directory (you can choose your own path) and added it to the execution path by inserting the following into my “~/.profile” file:

export ANDROID_SDK=$HOME/Development/android-sdk-macosx
export PATH=$PATH:$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools

Note: The ANDROID_SDK variable is my own shortcut and is not used by the Android SDK Tools in any way.

nexus5_bootloaderUnlock the Nexus 5

Before we can do the re-image, we need to put the Nexus 5 phone into Bootloader Mode (aka Fastboot Mode) and unlock it.

To put the phone into Bootloader Mode, do the following:

  1. Power off the phone.
  2. Power on by holding the volume up, volume down, and power buttons simultaneously.
  3. When the phone vibrates, let go of the power button while continuing to hold the volume up and down buttons.
  4. The phone will then display the bootloader screen.

On the bootloader screen, look for the “LOCK STATE” status at the bottom. My Nexus 5 was already unlocked so the display showed “LOCK STATE – unlocked”. If you see a “locked” state instead, connect the phone by USB cable, launch the Terminal and run these Android SDK Tools commands (ignore the comments marked by the pound # symbol below):

# Optionally show all connected devices in Bootloader Mode
fastboot devices

# Unlock bootloader
fastboot oem unlock

Note: When you unlock the bootloader, all data on the phone will be wiped as a security precaution. Also, there is no harm if you run the unlock command on a phone that is already unlocked; you will just get a “FAILED (remote: Already Unlocked)” error.

Re-image the Nexus 5

Download the latest Android 5.0 Lollipop image file for the Nexus 5 from Google’s Factory Images for Nexus Devices. Look for the section named “hammerhead for Nexus 5 (GSM/LTE)”. The latest version when I checked was “5.1.1 (LMY48B)” with a downloaded filename “hammerhead-lmy48b-factory-596bb9c1.tgz” (579 MB in size).

Extract the contents to a directory like “~/Downloads/hammerhead-lmy48b”.

Note: Before doing the steps below, make sure that Nexus 5 phone is connected by USB cable and showing the Bootloader Mode.

The extracted “hammerhead-lmy48b” directory has a script named “flash-all.sh” which you can run to do the factory re-image. It will run several commands with hard-coded 5 second pauses in between. To execute it, launch Terminal and run the following commands:

cd ~/Downloads/hammerhead-lmy48b
sh ./flash-all.sh

Instead of using the “flash-all.sh” script, I recommend running its commands manually just in case the phone takes longer than 5 seconds to complete each command. Also, if an error occurs, it would be easier to tell which command had failed. Do to so, run the commands in the “flash-all.sh” script one-by-one, ignoring the “sleep 5” lines.

cd ~/Downloads/hammerhead-lmy48b
 
# Reimage the bootloader
fastboot flash bootloader bootloader-hammerhead-hhz12h.img
fastboot reboot-bootloader
 
# Reimage the radio firmware
fastboot flash radio radio-hammerhead-m8974a-2.0.50.2.26.img
fastboot reboot-bootloader
 
# Reimage OS with Android 5.0 Lollipop
fastboot -w update image-hammerhead-lmy48b.zip

The re-image process took about 5 minutes for me. The initial boot up (the screen showed flying colored dots) took another 8 minutes. Be patient because some folks reported that the initial boot up could take up to 30 minutes.

Once the phone has booted up, I recommend doing a data wipe to ensure that everything is consistent. To do the data wipe, go to Settings, under Personal section, Backup & reset, under Personal data, Factory data reset. Reboot the phone.

Lock the Nexus 5

To avoid any security risks, I recommend locking the bootloader. To do so, put the phone into Bootloader Mode and run the following command in the Terminal:

fastboot oem lock

Once done, exit the Bootloader Mode by clicking on the Start button to boot the Android OS.

If you run into issues, some troubleshooting tips are located at How to Unroot Nexus 5! – Complete Stock.

No Comments

Sync Google Contacts on iPhone

Mobile Devices 2 Comments

046WinonaRyderCartoonRecently, my niece’s iPhone 4S died. We got her a replacement phone, but all the data on her old phone was gone. Unfortunately, even though she had a Gmail account configured, her iPhone did not sync its addresses to Google Contacts. I checked my own Google Contacts account and found that it contained almost none of the addresses on my iPhone. Even though I had enabled contacts sync for my Gmail account, the iPhone addresses were not getting synced to Google. So I did some research, found the issue, and have summarized my findings and solution below.

Four Contact Types

For my purpose, there are four contact types that exist on the iPhone:

  1. SIM contacts are located on your legacy SIM card (which you will need to import into your iPhone to make visible).
  2. Local contacts exist only on your iPhone (not synced from Google).
  3. Google contacts synced from Google to the iPhone.
  4. iCloud contacts synced from iCloud to the iPhone. When you enable iCloud contacts sync, it will merge or delete any local contacts so the two types cannot co-exist. iCloud will also merge or delete any Google contacts on the iPhone.

Note: There are other contact types, like Yahoo contacts, but I don’t use them.

When you view your Contacts app, all the addresses (except non-imported SIM contacts) will show in one listing. The iPhone does remember which contacts are of which type, and there is a way to filter what you see. If you have more than one type of contacts, the Contacts app will show a Groups link on the top left. Click on it and you will see two or more these options to select which types to make visible (by checkmark):

  • “All on My iPhone” (Local contacts; you won’t see this option if iCloud contacts sync is enabled.)
  • “All your_Gmail_address” (Google Contacts)
  • “All iCloud” (iCloud Contacts)

Set Google Contacts as the Default

On my iPhone, I had many local contacts and a few Google contacts. Even after configuring Google contacts sync, newly-created addresses were saved as local contacts and not synced to Google. The problem was a second, separate setting called “Default Account” which controlled the default type for newly-created contacts; on my iPhone, that setting forced all new addresses to be created as local contacts. I believe that the default type was set to local contacts because I had created some local addresses before configuring Google contacts sync and Google contacts sync did not set “Default Account” to itself. To fix this, I had to manually change “Default Account” to be Google contacts.

Note: If you configure Google contacts sync and there are no pre-existing local contacts on your iPhone (and iCloud contact sync is not enabled), then the default type for newly-created addresses will be set to Google contacts automatically.

To configure a Google account, go to “Settings->Mail, Contacts, Calendars” on your iPhone. Under Accounts at the top, click “Add Accounts” and input your Google account access information. Or if you have already created the Google account, it will be listed and you can just click on it to see its settings. In the Google account settings , make sure that “Contacts” sync is turned on (in addition to other services like “Mail” or “Calendar”). You will be prompted to “Keep on My iPhone” your current contacts (local or iCloud), which I recommend you agree to; otherwise, those pre-existing addresses will be deleted.

Note: Only addresses in your Google “My Contacts” group will be synced to the iPhone. So if you want a particular Google contact available on the iPhone, just move that contact into the “My Contacts” group.

Then make sure to set the iPhone to save new addresses to Google Contacts by going back to “Settings->Mail, Contacts, Calendars” and locating the “Default Account” setting. Change it to “your_Gmail_address” (Google contact), instead of “On My iPhone” (local contact) or “iCloud” (iCloud contact). The “Default Account” setting is also used to identify the default sender email address when you compose a new email.

Note: You will only see the “Default Account” setting if you have more than one contact type existing on your iPhone. If you have two contact types but still do not see the “Default Account” setting, manually close the Settings app (click on Home button twice and drag the Settings app up and out) and then re-open it to refresh the display.

Be aware that when creating a new address in the Contacts app, if the Contacts app is configured to not show Google contacts, then the newly-created address may be stored locally (or to iCloud) instead of to Google; even if the “Default Account” setting is configured to use your Google account.

Transfer Local Contacts to Google

Google contacts sync did not provide an option to merge local contacts. I had to figure out a workaround. The method I decided to use was to merge my local contacts into iCloud and then to export the contacts from iCloud for import into Google. (Alternatively, I could use iTunes sync, but it looked a lot cleaner to use iCloud.)

Developed by Apple, iCloud contacts sync is very comprehensive. When you enable iCloud contacts sync, it will offer the option to merge with any contacts on the iPhone (including local and Google contact types); if you decline to merge, it will delete all the pre-existing addresses. Once merged, whatever you see in the Contacts app (with all types visible) is what you will see in iCloud. Unlike Google contacts sync which only affects Google contacts, iCloud takes ownership of all the contacts on the iPhone. In addition, iCloud contact sync will set itself as the “Default Account” automatically.

First, configure the iCloud account by going to “Settings->iCloud” to add or view an existing iCloud account. (Alternatively, you can go to “Settings->Mail, Contacts, Calendars” and “Add [an] Account” of type “iCloud”. In the iCloud settings, turn on “Contacts” sync and agree to the merge prompt (to not delete all the pre-existing addresses).

Once iCloud contacts sync was enabled and the local contacts were merged (almost instantaneously because I only had 75 addresses), these are the steps which I took to transfer the addresses to Google:

  1. icloud_export_contactsBrowse to the iCloud website, log in, and click on Contacts. (Note: You must use a browser other than Chrome, like Internet Explorer or Firefox, because the iCloud contacts export function is currently broken under Chrome.)
    1. Verify that all addresses from the iPhone are present.
    2. Click on the grey gear icon on the bottom-left.
    3. Click on “Select All” and then “Export vCard” to download a .vcf file containing all the addresses.
  2. At this time, I recommend disabling the iCloud contact sync on the iPhone so that it won’t interfere with the Google contact sync. Disabling iCloud contacts sync will prompt you to delete or leave the addresses on the phone. If you want to start with a clean slate, I recommend deleting all the addresses. Once we are done, the iPhone will re-populate them from Google Contacts.
  3. Browse to Google Contacts and log in.
    1. Unfortunately, Google will default you to their new contacts UI preview which strangely does not make the “My Contacts” group visible or accessible. To see the “My Contacts” group, click on the “More” link at the bottom-left and then select “Leave the Contacts preview” to get back to the old UI. You should now see “My Contacts” listed as the top group.
    2. Click on “Import Contacts…” on the bottom-left.
    3. Browse to the downloaded .vcf file that was exported from iCloud.
    4. Click on the “Import” button.
    5. You will see a new “Imported ” group under the “My Contacts” group. It should contain all the addresses exported from iCloud.
    6. Optionally, you can delete the Imported group by selecting it, clicking on the “More” link at the top, and picking “Delete Group”. Don’t worry, the imported contacts won’t be deleted because they are also kept under the parent “My Contacts” group.

I ended up with a lot of duplicate contacts because my Google account had email addresses while my iPhone had telephone numbers. Thankfully, Google provided a mechanism to merge duplicate contacts. I recommend using the more sophisticated merge contacts function under the new UI preview, instead of under the old UI (under the old UI, click on the Imported folder under “My Contacts” and you will see a banner asking if you wish to “Find & merge duplicates”).

On the old Google Contacts UI:

  1. Click on “Try Contacts preview” on the bottom-left menu to return to the new UI preview.
  2. Click on “Find duplicates”.
  3. The duplicate contacts are nicely grouped together (2 or more by name) with their own “Merge” buttons. Click on the “Merge” button to merge the associated set of duplicate contacts.

Contacts Not Syncing From Google

I then checked my iPhone and did not see the newly imported Google contacts. There is an iPhone setting which controls how the iPhone syncs with Google. The default configuration on my iPhone is to manually sync Google contacts; meaning that when I start or use the Contacts app, my Google contacts will be synced. Unfortunately, even when starting and using the Contacts app, my Google addresses weren’t downloaded.

iphone_fetch_scheduleTo see the Google sync setting, go to “Settings -> Mail, Contacts, Calendars”, click on “Fetch New Data”, and locate “your_Gmail_address”. Gmail doesn’t support “Push” (where Google would send newly-created contacts to the iPhone), so it is set to “Fetch” (the iPhone queries Google for new contacts) by default. The fetch schedule is located at the bottom and on my iPhone, it was set to “Manually”. The manual fetch meant that I had to start or use the Contacts app for the addresses to sync with Google. I could change the fetch schedule to sync with Google periodically (by minutes or hour), but decided that manual was fine (I want to reduce battery usage).

To force the iPhone to sync immediately with Google Contacts, I disabled and then re-enabled the Google contacts sync (see the Google account under “Settings -> Mail, Contacts, Calendars”). When disabling the Google contacts sync, it will force you to delete all Google contacts from the iPhone; this is okay because when we re-enable, it will re-download all the Google addresses. After that, I was able to see all the Google addresses in the Contacts app. (Make sure to double-check that the “Default Account” is still set to Google.)

Import SIM Contacts

If you have an old SIM card that contains addresses (the SIM storage was used by the older, non-smart phones) and wish to import it into your iPhone, put the SIM card into the iPhone, go to “Settings ->Mail, Contacts, Calendars”, click on “Import SIM Contacts”, and select your Google account (instead of “On My iPhone” or “iCloud”).

Simultaneous Google and iCloud Contacts Sync

It occurred to me that I could have both Google and iCloud contacts sync enabled at the same time. However, I’m not sure about some of the behavior. Every address on the iPhone will replicate from iCloud, while only Google-type addresses will replicate from the Google account. Will downloaded Google addresses that don’t exist in iCloud be replicated then to iCloud? Will downloaded iCloud addresses that don’t exist in Google be replicated to Google? Does this behavior depend upon which contact type “Default Account” is set to? I don’t know. It is probably best to use one or the other, not both.

Because I am leery about unnecessarily exposing my personal information on the Internet, I manually removed all the contacts from iCloud after I was confident that I had imported them into Google Contacts successfully.

2 Comments

Buying a Used iPhone in One Word: Painful

Mobile Devices 3 Comments

I purchased a T-Mobile iPhone 5s for a great price on Craigslist. The seller seemed like a nice young man. The phone worked without any issues. Coming from a Blackberry Pearl, the iPhone was a wonderful treat. Three months later, I couldn’t make or receive phone calls or text messages. The T-Mobile service representative explained that T-Mobile had blacklisted the phone’s IMEI number (phone’s unique identifier) because the phone was financed and the original owner had stopped paying. I tried calling the seller, no pickup. I called the seller from a different phone number, he picked up, said he would investigate and get back to me; he never did. I asked T-Mobile how much was due and whether I could pay it myself; T-Mobile said it was against their policy to reveal any info or allow such an action. Evidently, only the original owner could remove the blacklisting. So I ended up with a very expensive iPod Touch.

051HannibalI learned that a used phone’s IMEI number is attached to the account used to activate it, and the original account owner retains some control over whether the phone is useful or not. Thankfully, there are online tools to check the IMEI status. Inputting the phone’s IMEI number into T-Mobile’s IMEI Status Check page returned “Your device is blocked and will not work on T-Mobile’s network”. If I had checked the IMEI status before buying, I might have seen that the iPhone was being financed (it would say “financed” and/or “balance due”) and I would not have purchased it (I would not want to depend on the seller to continue making monthly payments). Lesson learned: check the phone’s IMEI number before buying.

At about the same time, my sister bought a used T-Mobile iPhone 5. Her T-Mobile micro SIM card did not fit (the iPhone 5 requires a nano SIM card) so she was not able to test it. The seller insisted that the iPhone 5 worked with T-Mobile. She purchased it and took it to a T-Mobile store to get a nano SIM card. The T-Mobile store representative told her that it was a Sprint phone and would not work with T-Mobile.

I offered to resell the Sprint iPhone in an attempt to recoup some of her lost money. Before posting it on Craigslist, I inputted the phone’s ESN (Sprint’s alternative name for IMEI) number into Swappa’s Check Your ESN page (the Sprint website did not have an ESN check status tool) and it responded that the phone was reported lost or stolen. I called Sprint to see if I could return the phone. The Sprint service representative said that Sprint did not have any process in place to return lost or stolen phones, that she could not provide me with information about the original owner (so I could mail it myself), and that the phone was mine to do with as I wished. Looks like my sister also ended up with a very expensive iPod. Lesson learned: make sure the phone can connect to the carrier before handling over the cash.

Update: There is a way to check the ESN status on the Sprint website if you have an account. Log into your Sprint account, go to the “I want to” menu, select “activate a new phone”, and input the ESN of the new phone. After you click Next, the Sprint website will give you a confirmation page (the ESN is good) or an error message (the ESN is bad).

locked_iphone4sLater, I purchased a used T-Mobile iPhone 4s for my niece. I checked that the IMEI was good (the Craigslist seller texted me the IMEI when I requested it and the T-Mobile website said it was useable; no mention of “financed” or “balance due”). Having read up on the subject, I made sure that the security passcode was not set on the phone. And I made sure to delete the iCloud account to disable the Find My iPhone feature; erroneously, the iPhone allowed me to remove the iCloud account without requiring a password input. When I came home, I did a reset and the iPhone booted into the activation lock screen, asking for the iCloud password belonging to a mostly-blacked out iCloud email address. After several phone calls, I finally reached the original seller and he stated that his friend had set up the iCloud account years ago and that he had lost all contact with that friend. So there was no way to recover the iCloud password. He then insisted that the sale was final, even though I remembered asking him if it was okay to do a reset and he had said yes. I ended up with a very expensive brick. Lesson learned: do a reset before forking over the money.

Update: Apple now provides a Check Activation Lock Status page using the IMEI number, which eliminates the need to do a reset.

The above and more really happened to me. I’m not saying that all Craigslist iPhone sellers were dishonest, I’m saying that almost half of them were guilty of selling nonworking iPhones. I did buy several iPhones (one iPhone 5c and three iPhone 4s’) that continue to work fine. So my success rate was over 50 percent.

In this post, I will provide suggestions to help you to avoid purchasing a nonworking used iPhone. Because it is not possible to be 100 percent safe when buying a used phone, I will also offer suggestions on how to recoup some of your loss, should any occur.

Note: Though I talk about the iPhone specifically, most of the following tips are applicable to Android phones. And while my buying experience involves using craigslist, most of the suggestions may be applicable to other venues like eBay.

Quick Checklist

For your convenience, I’ve summarized the info in this post into a high-level checklist.

  1. Before meeting, ask for the model and IMEI (or ESN) number of the phone.
    1. Google the model; for example, to make sure you are getting an iPhone 5s, instead of an iPhone 5 which looks the same.
    2. Check the IMEI number using Swappa’s Check Your ESN page (or the specific carrier’s IMEI/ESN status check page if available). Look out for phones that are financed or blacklisted (lost/stolen).
    3. Check Apple’s Check Activation Lock Status page to make sure that the iPhone is not iCloud-locked.
  2. When meeting, double-check that the phone has the model and IMEI number given above.
  3. Check out the phone functions. For example, capture a short video and play it back to test camera, microphone, and speakers.
  4. Insert a working carrier-specific SIM card. Make a phone call and send/receive a text message. (Make sure you bring an appropriately-sized SIM card or SIM adapters.)
  5. Finally hand over the cash for the phone.
  6. If months later, your phone becomes blacklisted or nonworking, consider selling it to International buyers or for parts and repair.

Be An Informed Buyer

Because iPhones are very expensive and tend to become obsolete within a few years, it makes sense to buy a used iPhone to save significant amounts of money. Of course, the usual downsides to buying used apply, including not knowing how the phone has been treated (previous water damage, cracked screen replaced), undisclosed defects (Bluetooth doesn’t work), and the phone may have fallen off the back of a truck (aka lost or stolen).

In the past, a lost or stolen phone can still be useful because the U.S. carriers did not do a good job of tracking such phones or even sharing data with each other. For example, a nonworking AT&T phone with a blacklisted IMEI number can be unlocked for use with T-Mobile because on T-Mobile, the IMEI number wouldn’t be blacklisted. However, this all changed in 2013 when the carriers started sharing the same database of IMEI numbers (mandated by law). So a phone which is blacklisted by one carrier would be blacklisted by all other carriers. (Currently, international carriers do not share IMEI numbers with U.S. carriers.)

With the release of iOS 7.0, Apple introduced the Activation Lock feature which required inputting the iCloud password when resetting the iPhone if the Find My iPhone feature was enabled. This added another possibility to render your used iPhone useless when you did a reset and didn’t know the iCloud password. Once activation lock occurred, you wouldn’t be able to use the iPhone as an iPod or anything else.

To increase your chances of buying a working used iPhone, it pays to be informed about all the pitfalls and to take steps to mitigate the risks.

Before You Meet The Buyer

When looking at ads for iPhones, you will want to watch out for clues. For example, I see ads selling just the iPhones without the wall adapter or any other accessories; most likely, this indicates that the phone is found or stolen. Of course, don’t buy phones advertised with text that says “bad, blocked, or blacklisted IMEI (or ESN)”; you won’t be able to use that phone with any U.S. carrier. Good clues are text saying “clean IMEI or ESN” or if the seller is including the original box (this seller takes very good care of her stuff), wall adapter, and accessories (I would hesitate to re-use someone else’s earphones).

Ask the seller to provide the IMEI or ESN number. Check the IMEI or ESN status on the carrier’s website or Swappa (if the carrier doesn’t provide such a tool). Beware of statuses that include words like “financed under contract” or “balance due”. Status of “phone paid off”, “ready for use with network”, and “unknown” (new, unused iPhones or unlocked phones from another carrier have this status on T-Mobile) are good. Of course, avoid phones with status “blacklisted”, “blocked”, “lost”, or “stolen”.

Unfortunately, you cannot be 100 percent certain even with an IMEI status check. For example “ready for use with network” or “balance fully paid” could mean that the seller has just made the monthly payment, but the iPhone could still be financed. Even a “phone paid off” and “unknown” status is no guarantee. There is scam where the seller has phone insurance, sells the phone, and months later, declares that the phone is lost or stolen so he could receive a replacement phone. This is allowed because the phone is still associated with the original owner’s account. There is nothing that you can do as a buyer to guard against this scam. (Probably because of abuse, T-Mobile had to institute a one replacement per year limitation on their phone insurance plan.)

Note: I have read of people arranging to meet at the cell phone store to move the phone to the new account, but have never done it myself. I have also read that it didn’t work. Doing the transfer does sound like a good idea because it may prevent the original owner from declaring the phone lost or stolen later. Meeting at the store definitely provides the opportunity to ask the service representative if the phone is fully paid off or financed. If the seller refuses to meet at the store or goes silent, you will know that it is probably a lost or stolen phone.

Before You Hand Over The Cash

When you finally meet the seller, double-check that the given IMEI matches the IMEI displayed on the iPhone under Settings, General, and About. The IMEI is also printed on the back of the iPhone, but because an iPhone can be repaired with the back cover from another iPhone, the printed IMEI may not match. If the IMEI on the back is not identical to the IMEI in the iPhone Settings, you are probably looking at an iPhone which had significant repairs done.

Bring a SIM card to test the iPhone to be certain that it will work with your carrier. Research the phone model so you will know what size SIM card is required. You can cut your SIM card down to size or use a SIM adapter to make it larger. With the SIM card inserted, if you get an invalid or locked carrier error, then the phone won’t work with your carrier.

I’ve successfully cut SIM cards with a sharp pair of scissors and one time, I used a nail clipper. Unless you like to live dangerously, I recommend going to a cell phone store where they will usually cut it for free. If you don’t want to cut your existing SIM card or don’t have a SIM card (because you are switching carriers), you can buy a starter SIM card. With a starter or unregistered SIM card, the phone will still connect to the carrier, but you won’t be able to make calls. (The T-Mobile website sells a starter SIM card for $10; however, they usually have frequent sales where the SIM card is free or only costs one penny.)

The discerning buyer will check the iPhone’s model number (under Settings, General, About) to determine if the phone is originally made for the carrier and not an unlocked phone from another carrier. The reason to do so is because an unlocked phone may not have the same capabilities; for example, an unlocked AT&T iPhone 4s will not support T-Mobile LTE 4G speeds. (Again, the model number printed on the back of the iPhone may not match what is in the iPhone’s Settings if the back cover has been replaced with another iPhone’s back cover.)

As a minimum hardware check, I suggest launching the Camera app, switching from the back to the front camera, recording a video, and then playing the video back. This will test the cameras, microphone, and speakers. Also, check that the Wi-Fi works if you have access to a hotspot. (Due to a hardware bug, the Wi-Fi feature on some iPhone 4s phones were broken by iOS 7.) If you have an activated SIM card installed, make a phone call and send a text message.

Note: Make sure to ask permission from the seller before you do any modifications to the iPhone, especially before doing the reset below.

If the passcode is enabled, remove it by going into Settings, Passcode or “Touch ID & Passcode”, and selecting “Turn Passcode Off”. Technically, you could remove the passcode by doing a full restore using iTunes, but that is avoidable with this little bit of effort.

Most importantly, go into Settings, iCloud, and manually turn off the “Find My iPhone” feature. (Deleting the iCloud account is not guaranteed to disable the “Find My iPhone” function.) Check Apple’s Check Activation Lock Status page to make sure that the iPhone is not activation-locked. Alternatively, you can reset the iPhone to check the activation lock status. Make sure that you have a SIM card inserted and have access to a wireless network before resetting the phone; the iPhone requires a working SIM card and wireless network in order to fully activate. Upon restart after the reset, you will be prompted for the password if the phone is activation-locked. (I think you might be able to activate the iPhone with a SIM card that has the Internet data plan enabled, but I have not tried it.)

What to Do With a Blacklisted iPhone

The above suggestions offer you better odds of getting a working iPhone. Unfortunately, you cannot protect yourself against the seller reporting the phone as lost or stolen months later. If you end up with an iPhone which you cannot use with your carrier (or even use as an iPod), perhaps my experiences below might help you to recoup some of your loss.

I was able to get a working T-Mobile iPhone 5s by exchanging the blocked iPhone 5s with a non-blocked one for $100. I found an eBay seller, iphoneswaps, whose auction offered to exchange my blocked iPhone for an iPhone (of the same model, color, and carrier) with a clean IMEI. The requirements are that the iPhone be in good, original condition (no major dents or repairs) and that the IMEI is not lost or stolen; my iPhone 5s thankfully met those requirements. I took the gamble and got back what looked to be a refurbished iPhone 5s. I don’t know what made the swap possible; I was just grateful that I ended up with a working iPhone.

If the swap is not available or applicable, you can sell your blocked phone to an International buyer who might be able to unlock it for use with a foreign carrier. I was able to do this when the Android phone that I got my sister quit working after six months, because the original owner had stopped making payments (the Android was financed; this was before I learned about IMEI). I put the Android phone on eBay with a full disclosure about why it was blocked, and it was purchased by a buyer from Texas who told me that he planned to ship it down south for use in Mexico.

I found out later that there is a service, advertised on eBay, which could have swapped out the logic board on my sister’s Android phone for $50. This swap would have given my sister’s Android a new, clean IMEI number. Too late, my sister had already purchased a replacement phone directly from T-Mobile; she didn’t want to deal with the hassle of buying used again. I felt bad but was glad that I was able to recoup half of what she had lost by selling her blocked Android to a cowboy.

I resold the activation-locked iPhone 4s on Craigslist for parts or repair. I got a low offer and took it, resulting in a huge loss. (I had originally posted the iPhone on eBay but got a message saying that eBay no longer allowed the sale of activation-locked iPhones. Strangely, eBay still allows the sale of iPhones with blacklisted IMEI numbers.) After the sale, I realized that I could have purchased a replacement logic board with a clean IMEI for $20 and with some elbow grease, gotten a working iPhone 4s; assuming that I didn’t destroy the phone during the process.

While I applaud the government (which mandated the common IMEI database) and the carriers for working to prevent the sale of lost or stolen phones, I don’t think they have implemented the necessary processes and infrastructure to support that intention. For example, the carriers could identify abuse by the owner if his iPhone is suddenly used by another person and then several months later, he declares that it was lost or stolen. The government could require that phone status be lost or stolen, but not both (currently, the IMEI database does not seem to distinguish between the two); so that in the case of the phone being lost, more leniency in enforcement by the carriers can be used. And of course, the carriers should have processes in place to return lost or stolen phones to the original owners. Currently, as a result of the above, innocent used phone buyers are the only ones paying the price; the perpetrators continue to go unpunished and are actually rewarded.

I’m certain that the info in this post is not comprehensive, but I hope it is a good start in helping you to become a more informed buyer of used iPhones.

3 Comments

Transfer Music From One iPod To Another

Mobile Devices No Comments

I needed to move music from my sister’s old iPod Mini to her new iPod Nano. At first, I thought I needed to install special software to do the music transfer; however, it turns out that there is a method that doesn’t require extra software. I found it in the comments from this webpage, Get songs off your iPod. The steps are to copy the music directly from the old iPod, import the music into iTunes, and then copy/sync to the new iPod.

Before we start, non-IOS iPods (which excludes iPod Touch) are either formatted for Windows or for Mac. So depending upon the format, you will need to use the corresponding operating system to retrieve the music from the old iPod. In my case, the old iPod was formatted for Windows. (The instructions below should also apply for Mac.)

Copy Music From the Old iPod

iTunesEnableDiskUse

  1. Connect the old iPod to the computer using the USB sync cable.
  2. Launch a File Explorer window and look for a new drive with a label like “Bob’s iPod”. That is the iPod’s hard drive.
  3. If you don’t see a drive for the iPod, then you will need to set the “Enable disk use” under iTunes.
    • Open iTunes and you should see the iPod listed under DEVICES. Select the iPod.
    • If you see a “Welcome to Your New iPod” message, click on the Continue button, and then the Get Started button.
    • Under the Summary tab, make sure that “Enable disk use” is selected. On my computer, the “Enable disk use” was selected by default and grayed out because “Manually manage music” is selected. (If you wish to unselect “Enable disk use”, you must unselect “Manually manage music” first. Disabling “Manually manage music” means that the iPod will be overwritten to match whatever is in the iTunes library automatically.)
  4. In File Explorer, open the iPod’s drive and you will see three folders: Calendars, Contacts, and Notes.
  5. There is a hidden folder named iPod_Control. To see it, go to your folder properties and enable the “Show hidden folders” property. Under Windows 7, you would click on the menu Organize, Folder and search options, View tab, and check the “Show hidden files, folders, and drives” option.
  6. Go into the iPod_Control folder and then into the Music subfolder. You will see many folders named like F00, F01, etc. Under those folders, you will find mp3 files with names like DGUZ.mp3, TBBO.mp3, etc. These are your mp3 music files. (Don’t be concern about the weird names because the song titles and artists are embedded in the mp3 files and iTunes will use that embedded info.)
  7. Copy the whole iPod_Control\Music folder to your hard drive.

Import Music into iTunes

Actually, you don’t need to import the copied music into iTunes. Instead, you could drag each of the copied mp3 files directly to the new iPod; however, you would need to go into each of the copied Music folder’s subfolders to select the mp3 files. To avoid that effort, I recommend using the first import method listed below, “Add Folder to Library”.

If you wish to rename the copied mp3 files to the actually song titles, you will want to configure iTunes to copy and organize imported music files. To do so, go to iTunes menu Edit->Preferences…, Advanced tab, and make sure both “Keep iTunes Media folder organized” and “Copy files to iTunes Media folder when adding to library” options are checked. After importing the mp3 files, you will find them under the “iTunes Media folder location” (usually your user’s “Music\iTunes\iTunes Media” folder), renamed according to song title.

The iTunes application supports three methods to import music into the iTunes library. They are listed below with the first requiring the least effort:

  1. (Warning: This behavior might not exist in iTunes versions earlier than 11. Earlier versions of iTunes may not process subfolders.) Use the iTunes menu “File->Add Folder to Library…” to select the copied Music folder. iTunes will then import all the mp3 files under all the subfolders in the Music folder.
  2. (I believe this feature was added to iTunes 9.) Copy or move all the copied mp3 files to your user’s “Music\iTunes\iTunes Media\Automatically Add to iTunes” folder. Within seconds, iTunes will detect the files and import them; the imported mp3 files will disappear from that folder.
  3. Drag and drop the copied mp3 files to the iTune’s LIBRARY on the left sidebar.

Unfortunately, in the last two import methods, you will need to go into each of the copied Music’s subfolders to select the mp3 files. So I recommend updating to the latest iTunes and using the “Add Folder to Library…” method.

Copy Music to the new iPod

  1. Connect the new iPod to the computer.
  2. Under iTunes, select the new iPod under DEVICES. If you see a “Welcome to Your New iPod” message, click on the Continue button, and then the Get Started button.
  3. Go to iTunes LIBRARY->Music and select the Songs tab.
  4. Select the music which you wish to copy and drag them to the iPod under DEVICES.

Alternatively, you could sync the music to the new iPod by selecting the iPod under iTunes DEVICES, going to the Music tab, checking the “Sync Music” option, and then performing a Sync.

If you are getting rid of your old iPod, you can wipe it by doing a restore. Under iTunes, select the old iPod under DEVICES, go to Summary tab, and click on the “Restore iPod…” button. Once the iPod is rebooting, you can disconnect it. If you don’t, the iPod will reboot, reconnect to iTunes, and you will see the “”Welcome to Your New iPod” screen. You can eject and disconnect the iPod at that point.

No Comments

Quick Guide for the Kindle 4 Wifi (with Special Offers)

Mobile Devices No Comments

I finally broke down (after years of defending “real” books) and recently got a Kindle 4 Wifi. It is very convenient (I can adjust the font size and carry a lot of books on trips) and I wondered why it took me so long to get one. To help you on your journey to getting one, below are some tips on using the Kindle for those who don’t want to slog through the whole manual.

KindleOnToiletTurn Your Kindle On

The power button for the Kindle is located on the bottom to the right of mini-USB charger port. Press it once to turn the Kindle on or off. A green light will come on for a brief period of time and then turn off to acknowledge the power button press. If you don’t turn the Kindle off, it will turn itself off (go to sleep) after a period of inactivity (several minutes).

Buttons and Buttons

The Kindle comes with four buttons and what I call a square thumb joystick at the bottom. The four buttons from left to right are Back (to go back to previous screen), Keyboard (to show/hide the virtual keyboard), Menu (to show the page-sensitive menu), and Home (to go to the main screen). The thumb joystick allows you to highlight things (like keys on the virtual keyboard) by going up, down, right, and left and can then be clicked on to make a selection.

I try to minimize my use of the virtual keyboard. Imagine inputting a 26 character wireless password using the thumb joystick and you can understand why.

Charge Your Kindle

The Kindle comes with a USB cable (it’s included in the box) which you can use to charge with. When you turn on the Kindle, if you look at the top right of the screen, you will see the battery status bar. Your Kindle shouldn’t need to be charged for a month or more with moderate reading (make sure you disable Wifi if you don’t need it).

Quick analogy on volts and amps: Think of electricity as water going through an opened half-pipe powering a water wheel. Volt is equivalent to the height of the water and amp is how fast the water flows. If you have a half-pipe of a certain size, the water level (volt) can only go so high before it overflows (bad for electronics). The speed of the water (amp) can vary within reason; it needs to go fast enough to move the water wheel but if it goes really, really fast, it could destroy the wheel, or back up and overflow the pipe (both bad for electronics). The point of this very rough analogy is that to power electronics, volts need to be a specific value while amps needs to be minimal value or greater. (FYI, Watts are just power ratings and is basically volts times amps; for example, 10 Watts = 5 Volts x 2 amps.)

The Kindle requires 5 volts and 0.5 amps or more to charge. This is what a computer’s USB port will usually output so you can just plug the Kindle’s USB cable into a computer’s USB port. (Note: Some older computers’ USB ports might not output this much power. You’ll know because electronics won’t charge.) Some newer computer’s USB port outputs 5 volts and 2 amps for power-hungry devices like Apple iPad; the Kindle will charge fine from these more powerful USB ports, pulling only as much amps as it needs.

The above means that you can charge the Kindle using the Kindle 4 wall charger (5 volts and 0.85 amp), iPad wall charger (5 volts and 2 amps), iphone/ipod touch wall charger (5 volts and 1 amp), Kindle Fire wall adapter (5 volts and 1.8 amps), and other USB wall chargers that meet the Kindle’s power requirements (5 volts and 0.5 amps or better).

When plugged in, the battery bar at the top of the Kindle screen will show a lightning bolt in the middle. When charging, an orange LED light will turn on at the bottom of the Kindle next to the power button. When the charge is 100% complete, the orange LED light will turn off and a green LED light will turn on. You can unplug at the point.

What are Special Offers?

I got the Kindle with special offers. Special offers is Amazon’s ad-supported platform. You see ads on the Kindle, Amazon gets revenue from advertisers, and thus, Amazon can sell you the Kindle at a discounted price ($30 off).

The ads are very unobtrusive. After a while, I stopped noticing them. The ads will only appear on the “screen saver” screen (when the Kindle is turned off or goes to sleep) and at the bottom of the book listing page (or home page). When reading a book, no ads are displayed; this is a good thing because most of the time, I am reading a book.

Disable Wifi to Save Battery Life

Wifi uses a lot of power so disable it when you don’t need it (not purchasing and/or downloading a book from Amazon). This is especially true if you have a Special Offers Kindle because it will wake periodically and use the Wifi to download new ads. (This explains why the battery may go down significantly even if you don’t use your Kindle for a while.)

When you first get your Kindle, if you hit the Menu button off the home screen, you will see the second option is either “Turn On Your Wireless” or “Turn Off Your Wireless”. Unfortunately, this option disappears once the Special Offers Kindle is updated and registered with your Amazon.com account. (I’ve also seen the option disappear on a non-Special Offers Kindle).

If you don’t see the above “Turn On/Off Your Wireless” menu option, you can use the Airplane Mode to disable Wifi. When you turn on Airplane Mode, the wireless is disabled; and vice versa. To toggle the Airplane mode, click on the Home button, click on the Menu button, select Settings, look for “Airplane Mode” at the top, and select the “turn on/off” option.

When Airplane Mode is on, the Wifi icon (five vertical bars of increasing height) will disappear from the top-right of the screen (to left of battery indicator) and you will see a new airplane icon (looks like a crooked plus sign) appear in its place.

Register Your Kindle

Register your Kindle with Amazon.com to buy books and to allow others to email books directly to your Kindle. To register the Kindle, turn Wifi on, go to home, menu, Settings, and click “register” to the right of the Registration setting. Use the virtual keyboard to input your Amazon.com username and password.

Getting Books on Your Kindle

There are several ways to get books onto your Kindle. Here are a few:

  • Buy a book from the Kindle store using your Kindle or from a browser.
  • Copy a book to the Kindle over the USB connection.
  • Email a book directly to the Kindle.

If you buy a book using a browser, the book will appear in the “Archived Items” folder on your Kindle (if wifi is enabled). If you select to open an “Archived Items” book on your Kindle, it will automatically be downloaded.

To copy a book to the Kindle over USB, do the following:

  1. Attach the Kindle to your computer using the USB cable. The Kindle screen will display a message titled “USB Drive Mode” with instructions that should you wish to read while the Kindle is plugged in, just eject the Kindle without disconnecting the USB cable.
  2. On the computer, you will see a new drive named “Kindle” appear. Under that drive is a directory called “documents”.
  3. If you copy books (with Kindle-compatible formats like AZW, Mobi, PRC or PDF) to the “documents” directory, they will show on the Kindle when you disconnect the USB cable (or eject the Kindle).

Note: On my Windows 7 64bit desktop, the eject did not work to allow me to read with the Kindle connected by USB cable. However, it did work on my Windows 7 64bit laptop.

If you want to allow a friend to email a book to your Kindle, log into your Amazon.com account using a browser and do the following:

  1. On your Amazon.com account settings page, select “Manage Your Kindle” in the left “Digital Content” section near the bottom.
  2. Select “Personal Document Settings” under the left “Your Kindle Account” section.
  3. Your Kindle will be listed with an email address ending in “@Kindle.com”.
    • This is your Kindle’s email address. If you don’t like the email address, you can modify it using the Edit link to the right. (If you have more than one Kindle, you will get a unique email address generated per Kindle.)
  4. If you want Amazon to store a copy of all books emailed to your Kindle, enable the “Personal Document Archiving” option.
  5. You will need to add your friend’s email address to the “Approved Personal Document E-mail List”. Make sure to use the email address from which he will send the book to you.
  6. Once you do the above, your friend can email a book to the Kindle’s email address.
    • I suggest using the Mobi book format (.mobi file extension). This will reduce the transmission time because the Kindle.com system won’t have to convert and reformat the book.
    • To convert any book format to Mobi, I recommend using a free application called Calibre.
  7. If Wifi is enabled, the Kindle will automatically download the book (within seconds or minutes). The time varies depending upon how busy the Kindle.com system is and whether the book format needs to be converted.
    • Warning: If you use 3G Whispernet to download an emailed book, Amazon will charge you $0.15 per megabyte. Wifi is free.

Increase the Reading Font Size

I found the default reading font size was a little too small for me. Increasing it to the next larger font size was perfect for me. You can change the font size by doing the following:

  1. Hit the Home button.
  2. Click on a book to read it.
  3. Hit the Menu button and select “Change Font Size”.
  4. You can adjust the font size, typeface, letter spacing, word spacing, and line spacing. I just adjusted font size and left the rest alone.

Categories to Organize Your Library

If you have a lot of books on the Kindle (I have 40+ books), it can be a hassle to scroll through the list of books. Instead, use categories to organize your books into collections (categories are like folders). To begin using categories, highlight a book and instead of clicking to read it, hit the thumb joystick to go right. You will see useful options like “Add to Collection…” and “Remove from Device”. Click on “Add to Collection…” and select an existing collection or create a new collection.

Off the Topic: Email Books to an iPad

If you ever need to get a book onto an iPad (or iphone/ipod touch), here’s how to email it:

  1. Make sure that the iBooks application is installed on the iPad.
  2. I recommend using the ePub (.epub file extension) format for books that are sent to iPads.
  3. Email the book (as an attachment) to the iPad user’s email account.
  4. On the iPad, go to the Mail application, open the email, and click to open the attachment.
  5. The iPad will offer you the option to “Open in iBooks”.
  6. Accept it and the book attachment will be downloaded into iBooks for reading.

The tips above should work for other models like the Kindle Touch and Kindle Fire.

No Comments

Repeat a Jailbreak and Unlock on iPhone 3G iOS 4.2.1 (Death to Error 1015!)

Mobile Devices 7 Comments

I wanted to give my iPhone 3G, which I had previously jailbroken and unlocked, to a friend. So naturally, I went into Settings, General, Reset, and selected “Erase All Content and Settings”. Bad mistake. After reboot, the iPhone was stuck in recovery mode.

Worse mistake. I then plugged the iPhone into my Macbook Pro and did an iOS 4.2.1 restore using iTunes. I was thinking that I would just redo the jailbreak. Unfortunately, the iTunes restore failed with an error 1015. I found that I still had the custom PwnageTool iOS 4.2.1 ipsw firmware image I had used previously. I re-attempted the restore, this time holding the Option key while clicking on Restore so I could browse for and select my custom ipsw image file. This time, I got an error 1016.

After hours of googling, experiments (where I got other errors like 1600), and reading my own posts on the subject (I had forgotten everything), I found the answer. It turns out that the previous jailbreak I used was an tethered jailbreak; meaning that if I rebooted the iPhone, I would have to connect it to the computer and do something. In this scenario, that something would probably be to run a tool like TinyUmbrella to kick the iPhone out of recovery mode.

FYI: Per some instructions I found on the web, I did the restore again, left iTunes displaying the error 1015 dialog, ran TinyUmbrella to get the iPhone to “exit recovery” mode, and waited for the iPhone to reboot. Unfortunately, this method did not work and the iPhone promptly booted back into recovery mode. (TinyUmbrella also offered a “fix recovery” function which I tried; whatever it did, it didn’t fix my issue.)

The iTunes restore error was caused by the updated 06.15.00 baseband version (I had updated the baseband to get the unlocking tool, UltraSn0w, to work). iTunes did not recognize this baseband version and thus, threw a 1015 error. (I have no idea what the 1016 error is about though.)

The correct solution was to run RedSn0w to put the iPhone into a special “pwned” DFU mode which would accept custom ipsw firmware images and then to do the iTunes restore. This Youtube video, How to: Fix ERROR 1015 iPhone 3G STUCK ITUNES-STEP BY STEP!, contains the instructions. Basically run any version of RedSn0w 0.9.6 (I used the 0.9.6b5 version I had from my last jailbreak) and in the options screen, select only the “Just enter pwned DFU mode right now”. RedSn0w will walk you through putting the iPhone into that special DFU mode.

Hint: To get into DFU mode, leave the iPhone connected to the computer by USB cable. Turn the iPhone off first. If you can’t get to the shutdown slider, you can force an iPhone to turn off by holding both the power and home buttons until the screen goes dark (about 3-5 seconds). DFU mode is entered by holding the power button for 3 seconds, both power and home buttons for 10 seconds, and the home button for 15 seconds. If you have trouble getting into DFU mode and end up in recovery mode, use TinyUmbrella to exit recovery mode and try again.

Once RedSn0w is done, RedSn0w will tell you to quit it and run iTunes to do the restore. Rather than using my previous custom iOS 4.2.1 ipsw firmware image, I decided to create a new one using PwnageTool 4.2. PwnageTool 4.2 is an updated version which can do an untethered jailbreak. With an untethered jailbreak, when the iPhone is rebooted, it should just start up like normal, instead of entering recovery mode.

To create the new ipsw firmware image, I managed to download PwnageTool 4.2 from one of the working mirror links (specifically the 4th one) hosted on this page, PwnageTool 4.2 For Mac: iOS 4.2.1 Untethered Jailbreak For iPhone, iPad, iPod Touch & Apple TV 2G Released; Fixes iBooks Problem.

I then followed the excellent instructions from How To Jailbreak & Unlock iPhone 4, 3GS & 3G On iOS 4.2.1 Using PwnageTool 4.2. I only followed the steps up to 10. I did not do steps 11 and after because they are replaced with the RedSn0w “pwned” DFU mode steps above and iTunes restore steps below.

After putting the iPhone into “pwned” DFU mode and quitting redSnOw, I started iTunes and it recognized the iPhone 3G in recovery mode. I then held down the Option key while clicking on Restore to browse for the new PwnageTool 4.2 custom iOS 4.2.1 image that I had created above.

This time, the restore proceeded to completion, without the dreaded error 1015. It took almost 10 minutes before my iPhone 3G booted up and showed me the normal home screen. I then ran Cydia, updated it, searched for and installed ultraSn0w to do the unlock. I popped in the T-Mobile SIM card and checked that the phone calling and texting were working.

Hopefully if you encounter the above, you won’t have to do so much research to resolve the issue.

7 Comments

Sync an iPod Touch to Two Computers

Mobile Devices No Comments

ipodtouch4gI use both a Macbook and a Windows desktop and wanted to see if I could sync the same iPod Touch to both machines. Below is one method I found to do this and some caveats about the method. (This method will work with iPhones and iPads also.)

Some background on how an iPod Touch pairs with an iTunes library

When you install iTunes on any computer, iTunes gets assigned a unique identifier. When you sync an iPod Touch to that same computer, the iPod Touch will store that unique identifier. If you attempt to sync the iPod Touch with another computer, the stored identifier won’t match that of the other computer’s iTunes library and the iPod Touch will refuse to sync. To get the iPod Touch to sync with the other computer, you would have to agree to overwrite the stored unique identifier and content of the iPod Touch with that of the new iTunes library.

Syncing to more than one machine

I found several websites that contained instructions on how to sync an iPod Touch (or iPhone or iPad) to more than one computer. However, the instructions did not work for the latest iTunes 10.5 version. In the comments of How to sync an iPhone with two (or more) Computers, I found a method which worked. While the old method was to change the unique identifier in two files (“iTunes Library.itl” and “iTunes Music Library.xml”), the new method only required changing one file (iTunes Music Library.xml).

  1. On the first computer (which the iPod Touch currently syncs to), locate the iTunes directory.
    • On Windows XP: \Document and Settings\username\My Documents\My Music\iTunes
    • On Windows 7: \Users\username\Music\iTunes
    • On Mac OS X: /Users/username/Music/iTunes
  2. Open the “iTunes Music Library.xml” file in your favorite text editor, search for the “Library Persistent ID” key, and copy the key value (a hex string that looks like “8ACF35DDCB78FEB1”).
  3. On the second computer, locate the iTunes directory.
  4. Open the “iTunes Music Library.xml” file, search for the “Library Persistent ID” key, and overwrite its value with the value from the first computer.
  5. Rename (or delete if you are brave) the “iTunes Library.itl” file.
  6. Create a new “iTunes Library.itl” file with zero size. You must create this file; otherwise, iTunes will generate a new Library Persistent ID without any warning.
  7. Run iTunes on the second computer, it will throw a warning that the “iTunes Library.itl” file is corrupt and it will then generate a replacement file. (If you don’t get a warning, iTunes will overwrite your inputted Library ID and you will need to start over.)
  8. Exit iTunes, open the “iTunes Library.itl” file, and double-check that the Library Persistent ID is still the value you want. (You can delete the “iTunes Library (Damaged).itl” file.)
  9. Because the iTunes Library was re-generated, you will need to re-add any apps, music, videos, etc. To re-add the content, go to the menu “File->Add File to Library” or “File->Add Folder To Library” and choose the file or folder to add. (The application files with extension “.ipa” are located in the “iTunes Media/Mobile Applications” subdirectory under the iTunes directory.) iTunes will automatically recognized what is being imported.

The iPod Touch is now sync’able against both computers. But wait, the information (music, video, contacts, notes, etc.) and applications on both computer are likely not identical. If that is the case, you will want to manually control how the sync works on either computer. You can start by configuring iTunes to not automatically sync.

Run iTunes on both computers and do the following:

  1. On Mac OS X, go to menu “iTunes->Preferences”. On Windows, go to menu “Edit->Preferences”.
  2. Select the Devices tab and check the “Prevent iPods, iPhones, and iPads from syncing automatically” option.
  3. If you would like to control the location where your music and video files are stored, select the Advanced tab and uncheck the “Keep iTunes Media folder organized” and “Copy files to iTunes Media folder when adding to library” options.
  4. If you would like to prevent automatic downloads from the iTunes store, select the Store tab and uncheck every option (including “Always check for available downloads”).

Doing the above does not solve the whole issue of having different content on the two computers. The problem is that the iPod Touch has its own configuration on what to sync (Apps, Music, Movies, TV Shows, Photos, and Info). To see those sync options (they show as tabs in the device details), connect the iPod Touch to the computer and click on the iPod Touch device in iTunes. If you configure the iPod Touch to sync Music, the same setting is used for both computers and if you don’t have the same music on both computers, then you have an issue.

The workaround I use for the above is manually intensive. Before syncing, I double-check the sync options on the iPod Touch. If I only have music on my first computer, I make sure to check “Sync Music” before syncing; while on the second computer, I make sure to uncheck “Sync Music” before syncing. (Strangely, the “Sync Info” options are not persisted for both computers, but this might be a Mac OS X and Windows side effect.) If I’m careful and don’t get confused, it works. Of course, if I mess up and accidentally get the music wiped from the iPod Touch, it is easy to re-sync the music back.

Of course, you can avoid the above complexity by having the same content exist on both computers. In that case, instead of following the steps above to get sync working with both computers, you might consider copying the “iTunes Library.itl” file over to the second computer and deleting the “iTunes Music Library.xml” file on the second computer. On startup, iTunes will regenerate the “iTunes Music Library.xml” file with the library identifier from the “iTunes Library.itl” file. The content info (stored in “iTunes Library.itl”) will show up in iTunes on the second computer; you will need to have the actual content files, like mp3 music files, exist in the same directory locations. I also read that you could just copy the whole iTunes directory from the first to the second computer, but I have never tried this so don’t know if it will work.

Alternatively, there is a way to sync the content from the iPod Touch to the second computer. This is possible according to Sync iPhone to iTunes – Transfer iPhone to iTunes synchronization. I haven’t tried this, but it looks very interesting and opens up new possibilities.

I hope that the above info will help you to get the most from your iPod Touch.

No Comments

Jailbreak iPod Touch 4G Running IOS 5.0.1 Using RedSn0w

Mobile Devices No Comments

Luckily, just when I needed to jailbreak a new iPod Touch 4G with iOS 5.0, I found that the iPhone devteam had released a version of RedSn0w (version 0.9.10b3) that would jailbreak the latest iOS 5.0.1 operating system. And better yet, this version would allow untethered usage (thanks to @pod2g!) which means that it is possible to reboot the iPod Touch without having to connect the device (“tether”) and re-running the jailbreak software. You can read up on the details at Dev-Team Blog – Untethered holidays.

You can download RedSn0w 0.9.10b3 from the Dev-Team Blog link above. I downloaded the version for Mac OS X, which worked perfectly on my Mac OS X 10.6 Snow Leopard macbook. This new version of RedSn0w did not prompt me for the iOS 5.0.1 IPSW firmware image so you don’t need to download that (previous RedSn0w versions would require the correct IPSW image file).

Before running redSn0w, I used iTunes to upgrade the iPod Touch 4G to the latest iOS 5.0.1 version. When that was completed (about 10 minutes), I installed and ran RedSn0w. I noticed that on launch, RedSn0w now quits iTunes automatically; this is nice because in the past, I had to manually quit iTunes in order to avoid popup messages from iTunes during the jailbreak.

I followed the instructions like so:

  1. I selected “Jailbreak and install Cydia”.
  2. I shutdown the iPod Touch as instructed. (Leave the iPod Touch connected to the computer by USB cable.)
  3. The next screen provides instructions to get the device into DFU mode: press power 3 seconds, press both power and home for 10 seconds, press home for 15 seconds.
    • The number of seconds were very generous but I still followed them regardless. In the second stage, the screen shut off after the power and home were held for 6 seconds. In the third stage, the device entered DFU mode after the home button was held for 5 seconds.
    • When I was jailbreaking a second iPod Touch, I didn’t follow the instructions closely and ended up putting the device into recovery mode, instead of DFU mode. There are several utilities to exit a device from recovery mode and I ended up using TinyUmbrella. Though I had to reboot the iPod Touch a couple of times with TinyUmbrella running before TinyUmbrella would recognized the device and enabled the “Exit recovery mode” button.
  4. RedSn0w will recognized when the device enters DFU mode and will start the jailbreak process.
  5. After about 20 seconds, RedSn0w will offer some options. I just kept the default “Install Cydia” and “Enable battery percentage” options checked. The “Enable battery percentage” is very useful (to tell when it is fully charged) and I’m surprised Apple doesn’t provide it by default.
  6. RedSn0w ends after a minute or two and the iPod Touch continues the jailbreak process for another few minutes. The iPod Touch’s screen will show a pineapple logo with a progress bar.
    • The second iPod Touch froze during the jailbreak; I think I moved the USB connector and interrupted the process. If that happens to you, just quit RedSn0w and shutdown the device so you can start over. You can force a shutdown by holding both the Power and the Home button for 5-10 seconds until the screen turns off. If the device goes into recovery mode, RedSn0w will complain about it and you can use TinyUmbrella (like above) to exit recovery mode.

Once the iPod Touch has completed the jailbreak and started successfully, I recommend doing the following on the device:

  • Enable battery percentage by going to Settings->General->Usage and turning On the “Battery Percentage” option.
  • Install the “Installous 4” application by doing the following:
    1. Run Cydia and select a User profile (or any other profile). Wait for Cydia to update itself; you can watch the spinning icon near the top. This will take about 30 seconds.
    2. Go to Manage->Sources->Edit->Add, input “http://cydia.hackulo.us”, hit Add Source, and hit Add Anyway. Once the data is reloaded (10-20 seconds), tap on “Return to Cydia” near the bottom.
    3. Go to Search, tap on the input field at the top, and input “Installous”. Tap on “Installous 4” in the search results, hit Install and Confirm. After the install completes (about 30 seconds), tap on “Restart SpringBoard” and you will be placed back into the normal unlock screen.
    4. You should now see an Installous application icon next to the Cydia icon.

Thanks to RedSn0w, the jailbreak process has never been easier. Good luck with your jailbreak.

No Comments

Unlock an AT&T iPhone 3G (with iOS 4.2.1) For Use With T-Mobile (RedSn0w Edition)

Mobile Devices 2 Comments

iphone3g-redSn0wMy nephew got an iPhone 3G and wanted to unlock it for use with his T-Mobile plan. Unfortunately, the iPhone was stuck in a weird state with only the Apple logo showing, and the iTunes application did not recognize it. I found that I could put the iPhone into Recovery mode. I then attempted to jailbreak using the custom PwnageTool firmware image I created in my last blog on iPhone jailbreak/unlock (my nephew’s iPhone 3G is the same model as mine’s). Unfortunately, the custom image restore process failed midway. I decided to load the latest official Apple iOS 4.2.1 image onto the iPhone and then use RedSn0w to jailbreak it.

To load the iPhone with the official Apple image, I had to put it into Recovery mode. Here’s how I got the iPhone into Recovery mode to do an official Apple restore:

  1. Connect the iPhone to the computer with the USB cable and start the iTunes application.
  2. Turn off the iPhone by holding the Power button until the Shutdown option appears at the top of the screen. If the iPhone is in a state where the shutdown option does not show and the screen is lit up, then just hold both the Power and Home buttons down for several seconds until the screen goes black.
  3. To enable Recovery mode, press and hold both Power and Home buttons until the screen lights up and you see the apple logo. Release the Power button but keep holding the Home button. After several seconds, iTunes will detect the iPhone and show a dialog saying the device is in recovery mode. You can release the Home button at that point.
  4. On iTunes, select the iPhone, and click the Restore button. Follow the iTunes instructions.

After the restore, the iPhone booted up with the following two messages: “No SIM card installed” and “Insert a valid SIM with no PIN lock to activate iPhone”. And when I slide to unlock the iPhone, it displayed a dial-pad with the title “Emergency call” mode. There was no way to access the normal application home screen. This was okay and something RedSn0w will take care of as part of the jailbreak.

To perform the jailbreak, I followed the instructions from How to Prepare your iPhone 4.2.1 for Unlock using RedSn0w.

  • In step 4, the download link for RedSn0w 0.9.6 beta 5 is broken. Instead, I downloaded it from Download Redsn0w 0.9.6 Beta 5 For Windows, Mac OS X.
  • In step 7, I saw a new option called “Enabled battery percentage” which was checked by default. I left it checked and when enabled in Settings->General, a useful charge percentage appeared next to the top-right battery icon on the iPhone.

Thankfully, the iPhone rebooted successfully and I was able to successfully repeat the unlock using UltraSn0w. My nephew was very happy with his new T-mobile iPhone!

2 Comments

Unlock an AT&T iPhone 3G (with iOS 4.1 or 4.2.1) For Use With T-Mobile (PwnageTool Edition)

Mobile Devices 2 Comments

iphone3g-pwnagetoolMy friend gave me his old AT&T iPhone 3G. I decided to unlock it for use with T-Mobile. On the web, there was a lot of info on how to go about doing the unlock and a lot of caveats. I wanted to summarize my findings below and provide details on how I went about the process of unlocking the iPhone 3G. (Though I did the unlock on Mac OS X, the instructions for Windows are the same.)

Note: I decided to remove the AT&T SIM card to see if I could do the unlock without it. This would be useful for those who got their iPhone 3G without an AT&T SIM card. It turns out that the AT&T SIM card is not required. (To remove the SIM card, locate the card slot at the top of the iPhone 3G with a visible little hole. Insert the end of paperclip into the hole, push down gently, and the SIM card holder will pop up.)

Some important pointers:

  • There are software and hardware unlocking methods. The hardware unlock usually requires a custom SIM card overlay or a custom SIM card holder. I will be doing a software unlock.
  • An iPhone has two very important information, the iOS version and the baseband version, which determines whether the unlock is possible. Confusingly, some websites will refer to the iOS version as the “firmware” version and Apple refers to the baseband version as the “modem firmware”.
  • An official Apple iOS version update may also include a baseband version update. Unlock is very dependent on the baseband version so be very careful to avoid official Apple iOS upgrades unless you know what you are doing.
  • In order to unlock, you must jailbreak first. The popular jailbreak methods (like RedSn0w and PwnageTool) will include a way to preserve the baseband version. PwnageTool creates a custom upgrade file (ipsw) by modifying the official upgrade ipsw file to remove the baseband version update.
  • The software unlock method “UltraSn0w” that I plan to use supports only specific baseband versions.

First, we need to figure out what we are working with:

  1. Determine the iPhone model by looking at the back of the phone for the model number. Check the Apple site to find a match. My iPhone had a model number of “A1241” which matched with “iPhone 3G”. (I couldn’t tell visually whether I had an iPhone 2G, 3G, or 3GS.)
  2. Determine the iOS and baseband versions by going to “Settings->General->About” on the iPhone. My iPhone 3G had an iOS “Version” of 4.1 and a baseband “Modem Firmware” version of 05.14.02.

Unfortunately, my iPhone 3G had a baseband version 05.14.02 which was not supported by UltraSn0w according to this UltraSn0w unlocking tutorial. If I upgrade to iOS 4.2.1, the baseband version would be upgraded to 05.15.xx which is also not supported by UltraSn0w. The workaround is to upgrade the baseband to the 06.15.00 version, which is surprisingly provided in the iPad 1 iOS 3.2.2 image.

Updating to 06.15.00 baseband is not reversible (back to 05.14.xx or 05.15.xx) so it would void the Apple warranty (I didn’t care because the iPhone is out of warranty) and future upgrades would require custom ipsw images. To me, it looks like Apple doesn’t plan to upgrade iPhone 3G past iOS version 4.2.1 and even if that were to happen, I could figure out how to use PwnageTool to create the necessary custom ipsw image. So, I made the decision to upgrade the iOS version to 4.2.1 and the baseband version to 06.15.00 so I could unlock using UltraSn0w.

According to the UltraSn0w tutorial, I could jailbreak and update to 06.15.00 using either the RedSn0w jailbreak tutorial or the PwnageTool jailbreak tutorial. I decided to use the PwnageTool because it would allow me to avoid having to do an official Apple iOS upgrade to 4.2.1 (required by the RedSn0w method) and it would allow me to get familiar with PwnageTool (I have used RedSn0w before).

To perform the jailbreak, I followed the PwnageTool tutorial step by step:

  • Before starting, I connected my iPhone 3G using the USB cable and quit the iTunes application.
  • In step #1, make sure to download the specific version 4.1.3 of PwnageTool requested (I tried the latest version 4.3.3.1 which wouldn’t accept any of the ipsw files), the iPhone 3G iOS 4.2.1 image file “iPhone1,2_4.2.1_8C148_Restore.ipsw”, and the iPad 1 iOS 3.2.2 image file “iPad1,1_3.2.2_7B500_Restore.ipsw” (which contained the 6.15.00 baseband).
  • In step #5, the first ipsw file to select is the iPhone 3G iOS 4.2.1 ipsw image file. The second one to select is the iPad 1 iOS 3.2.2 ipsw image file containing the baseband.
  • Step #6 was a little confusing. After reading it a couple of times, I got that if you plan to use the iPhone with the service provider it was originally locked to, then do not check the “Activate the phone” option. If like me, you wish to use an unofficial service provider (I’m using an AT&T iPhone with T-Mobile), then check the “Activate the phone” option. (For me, the “Activate the phone” option was selected by default.)
  • Also in step #6, my “Root partition size” was set to 731MB by default. I manually increased it to 834MB to match the picture in the tutorial. (I don’t know if this was necessary or not, but I figured it could only help.)
  • During step #12, when following PwnageTool’s steps to put the iPhone into DFU mode, the iTunes application was automatically started. I minimized iTunes and restarted the PwnageTool DFU instructions. When the iPhone entered DFU mode, iTunes threw an error dialog saying there was an unrecognized device. I had to disconnect and reconnect the USB cable in order for iTunes to recognize the phone properly and the DFU mode. (Now that the iPhone was in DFU mode, I quit the PwnageTool application.)
  • Once the iPhone was successfully restored (using the PwnageTool custom ipsw image) and restarted, I verified that the “Settings->General->About” listed the Version as 4.2.1 and the Modem Firmware as 6.15.00.
  • Whew, I was really glad the iPhone came back to life because I was waiting for a long time. The restore took about 10 minutes and the restart took several minutes.

To perform the unlock, I followed the original UltraSn0w tutorial step by step:

  • Before starting, I configured the iPhone (Settings->Wi-Fi) to connect to my wireless network.
  • In step #2, Cydia took a couple of minutes to update itself on initial startup. Then it asked me if I would like to update packages. I selected the “Complete Upgrade” option which took several minutes to complete and required a reboot. (Once Cydia was done with the update, it showed a large Reboot text at the bottom of the screen; I just tapped on the text to do a reboot.)
  • In step #3, I clicked on the Cydia Search tab to find and install UltraSn0w (that’s a number zero in the word “sn0w”). The UltraSn0w installation also required a reboot when it completed.

Finally everything was done. I shut down the iPhone, inserted my T-Mobile SIM card, and restarted. After startup, the iPhone took a couple of minutes to find the T-Mobile network. Because my T-Mobile plan did not have a data plan (and I didn’t want to be charged for one), I disabled the 3G connectivity function by going to “Settings->General->Network” and setting the “Enable 3G” and “Cellular Data” options to Off. I then tested the iPhone by taking a call, making a call, receiving a text, and sending a text. It works, yeah!

Unfortunately, when using PwnageTool to create the custom image earlier, I neglected to enable the very useful battery percentage indicator (which RedSn0w enables by default). To enable the battery percentage at this late stage, I found a useful guide, Enable Battery Percentage in iOS 4 on iPhone 3G without Redsn0w, which worked for me. (Hint: You may need to install “cmd-files” before you can install “iFile”.) After restarting the iphone, I went into Settings->General and turned on “Enable Battery Percentage”.

Hopefully the above is helpful. Good luck with your unlocking.

2 Comments

« Previous Entries