WORLDWIDE SHIPPING AVAILABLE
Privacy First logoPRIVACY FIRSTPUTTING YOUR PRIVACY FIRST.

PIXEL REPAIR GUIDE

Pixel 9 eSIM Not Working? How to Fix eUICC, EID and ICCID Errors

Your Pixel won't add an eSIM, the EID is blank, or you get eUICC or ICCID errors when your carrier tries to activate it. It's a known problem, and it can often be fixed at home without replacing the motherboard.

The problem

The eSIM on a Pixel lives on a small secure chip (the eUICC, part of the NFC/eSE chip). When the firmware on that chip gets into a bad state, typical symptoms are:

This is a known issue on the Pixel 9 series (Pixel 9, 9 Pro, 9 Pro XL, 9 Pro Fold and 9a) and has been reported on other generations too. If your Pixel is under warranty, Google will generally fix it under warranty, usually by replacing the motherboard. That's the simplest option if you can wait for the repair.

If you can't wait, are out of warranty, or would rather not send your phone away, you can usually fix it yourself by reflashing the eSIM chip's firmware with Google's own updater, which is built into the phone but hidden.

Before you start

You'll need a Windows, Mac or Linux computer, a good USB-C data cable, and about an hour.

Step 1: Install PixelFlasher and Platform Tools

  1. Download the latest PixelFlasher from its official GitHub releases page (github.com/badabing2005/PixelFlasher/releases) and run it.
  2. Download the latest SDK Platform-Tools from Google (developer.android.com/tools/releases/platform-tools) and extract it somewhere permanent, such as C:\ADB\platform-tools. Use the latest version: older versions fail on Pixel 9 factory images with “file size is too large to extract”.
  3. In PixelFlasher, click the folder button next to Android Platform Tools and select that folder.
  4. On Windows, install the Google USB Driver so the phone is detected in fastboot mode.

Step 2: Unlock the bootloader

  1. On the phone, open Settings → About phone and tap Build number seven times to turn on Developer options.
  2. In Settings → System → Developer options, turn on OEM unlocking and USB debugging. The phone needs to be online for OEM unlocking to become available.
  3. Plug the phone in, accept the “Allow USB debugging” prompt, and click Scan in PixelFlasher. Your phone should appear.
  4. Click Bootloader in the toolbar to reboot into the bootloader, then run fastboot flashing unlock from the Platform Tools folder. Confirm on the phone with the volume and power buttons. The phone wipes and restarts.

Step 3: Download the latest factory image

Rooting needs a factory image that exactly matches the build on your phone, so the easiest route is to put the latest stable build on the phone first.

  1. In PixelFlasher, open the Google Images menu and choose your model. The Pixel 9a is tegu, the Pixel 9 tokay, the 9 Pro caiman, the 9 Pro XL komodo and the 9 Pro Fold comet.
  2. Pick the newest release at the top of the list that isn't a beta and that matches your region or carrier if more than one is listed. Make sure it's a factory image, not an OTA.
  3. Let it download. PixelFlasher checks the file's checksum and puts it in the Device Image box.

You can also download it yourself from developers.google.com/android/images and select it with Browse.

Step 4: Flash the factory image

  1. Click Process. PixelFlasher unpacks the image and lists the stock init_boot image.
  2. Click that entry to select it. The “Patched with version” column is empty, which means it's stock.
  3. Set Flash Mode to WIPE all data. Leave “Flash to inactive slot” and “No reboot” unticked.
  4. Click Flash Device and leave the phone alone until it boots to the setup screen.

Step 5: Install Magisk

  1. Go through setup on the phone (you can skip most of it), then turn Developer options and USB debugging back on.
  2. Click Scan in PixelFlasher. The build number should match the image you just flashed.
  3. Click Rooting App in the toolbar and install the stable Magisk app. Open Magisk on the phone once. Don't tap its Install button; PixelFlasher does the patching.

Step 6: Create the Magisk-patched image

  1. Select the stock init_boot entry in PixelFlasher.
  2. Click Patch and choose Patch with Magisk. Accept any prompts on the phone.
  3. A second entry appears, with a Magisk version under “Patched with version”. That's your patched image.

Step 7: Flash the patched image

  1. Select the patched entry.
  2. Set Flash Mode to Keep Data.
  3. Click Flash Device. It flashes only init_boot and reboots.
  4. Open Magisk. If it says additional setup is required, tap OK and let it reboot. Magisk should then show an installed version.

Step 8: Open a root shell and unlock the hidden updater

Open a terminal in your Platform Tools folder and run:

adb shell
su

Tap Grant on the phone. The prompt must change from $ to #. If it still ends in $, you aren't root and the next commands won't work.

Then run these one at a time. Each prints nothing when it works:

resetprop ro.build.type eng
resetprop ro.build.tags eng
resetprop ro.debuggable 1
setenforce 0
stop && sleep 2 && start

The last line restarts Android. These changes are temporary and disappear on the next full reboot. Once the phone is back up and unlocked, open the updater:

am start -n com.google.euiccpixel/com.google.euiccpixel.ui.OtaUpdateMenu

The NFC/eSE/eSIM firmware updater opens on the phone. If your terminal dropped out of the shell when Android restarted, run adb shell and su again and repeat the four resetprop/setenforce lines first.

Step 9: Choose the right firmware

This is the step that matters most. Only use entries for your phone's generation:

Then let the updater tell you which one is right:

  1. Open the Upgrade firmware drop-down and pick an entry for your generation. The one selected by default is just the first in the list, not a recommendation.
  2. Tap SE FIRMWARE UPGRADE and read the dialog. Don't tap CONTINUE yet.
  3. Check Current firmware. It ends in a chip config tag such as CI7, CC9 or CG7. Choose a New firmware entry with the same tag, with GSMALIVE in the name (GSMATEST is test firmware that won't work with real carriers).

For example, a Pixel 9a showing GGL_P24_ST54L_GSMALIVE_EVT1.0_CI7_TOKEN as its current firmware takes GGL_P24_ST54L_GSMALIVE_534-1.1_EVT1.0_CI7_v1.

What the dialog tells you:

Step 10: Put the chip into bootloader mode

If you tap CONTINUE straight away, the updater often fails with “Update not complete. Please reboot the device to reset SE to OFL mode”, and rebooting doesn't help. The fix is to switch the chip into its loader mode yourself:

  1. Connect the phone to Wi-Fi. The switch to bootloader mode doesn't work without it.
  2. Tap DISMISS, then on the main updater screen tap VIEW next to “SE information”.
  3. Tap GET SE MODE. It shows MODE_OS, the chip's normal mode.
  4. Tap SWITCH TO BOOTLOADER MODE, then confirm with GET SE MODE. It must now show MODE_BOOTLOADER. If it still says MODE_OS, check Wi-Fi is connected and try again.

Don't touch the other buttons on that screen (the SIM power buttons, or RESET, LOAD CONFIG and EDIT on the main screen), and leave Owner ID and Part number empty.

Step 11: Flash the eSIM firmware

  1. Exit the updater app completely, then run the am start command from step 8 again to reopen it.
  2. Open the Upgrade firmware drop-down and select the same firmware you chose in step 9 again. Reopening the app resets it to the first entry in the list.
  3. Make sure the phone is charging, then tap SE FIRMWARE UPGRADE, check the dialog once more, and tap CONTINUE.
  4. It will sit on 0% for 5 to 10 minutes. That's normal: the chip is being prepared before any data is written. Don't reboot, unplug, lock the phone or leave the app. Tap the screen now and then if it's about to go to sleep.
  5. Wait until it says the update is complete.

Step 12: Reboot and check

Reboot the phone, from the power menu or with adb reboot. Then check:

Ask your carrier for a replacement eSIM, since the old profile was wiped and the EID has changed, and install it as normal. Your eSIM should now work.

Afterwards: remove root and relock

Your phone is still rooted with an unlocked bootloader, which weakens its security and breaks some banking and payment apps. Once the eSIM works, put it back to stock: repeat step 4 (flash the factory image with WIPE all data and the unpatched image), then reboot to the bootloader and run fastboot flashing lock. Never lock the bootloader while Magisk or any modified image is still installed, or the phone may not boot.

The eSIM firmware stays updated after this. If you use GrapheneOS, reinstall it with GrapheneOS's official web installer instead, which also relocks the bootloader.

Rather not do it yourself?

Contact us about your phone and we'll let you know what we can do. Read more about SIM and eSIM encryption, or browse our private eSIMs.

This guide is based on the community method shared on XDA Forums. Privacy First is not affiliated with Google. Flashing firmware is done at your own risk and may affect your warranty.

Shop Encrypted Phones →