Tachyon Factory Restore Thread

Hey folks,

I’m starting a new thread about restoring the factory image on your Tachyon devices.

Why do I need this? Well, it’s possible to brick your device as you can program anything you want onto it, but not everything works. Also, it’s needed to change OS installs (such as move Ubuntu → Android).

For background, Qualcomm ships a BootROM in their chipsets that allows (in development mode) you to flash the internal UFS (or eMMC) disk as a raw partition. It’s extremely powerful, but it also exposes a lot more of the sausage making of how Qualcomm chips work and there is the challenge.

Internally, we’re building a Particle CLI command that will do this in one go, restoring your device back to “factory goodness” so its very simple to both reset a device back to Ubuntu 20.04, but also change OS as well. As with all software development, making it foolproof takes a little longer, so these manual instructions will help you get there in the meantime.

And now some background…

Why Provisioning Data Matters

The most important part of this process is getting your provisioning data reinstalled.

Without it, your device won’t function:

Provisioning data contains:

  • RF calibration information

  • Regulatory settings (e.g. which RF bands are enabled or attenuated)

  • Device identity and manufacturing data

On Qualcomm-based devices (including Tachyon), this calibration data is stored in the main file system as just another partition - but its exact location changes depending on the OS (Ubuntu 20.04 vs Android 13, for example). We found this out with the first 23 devices we made, right at the point when we re-flashed them from Android 13 to run Ubuntu 20.04 and destroyed all our provisioning data… That was a fun day, especially as the tools to restore used a native Windows PC which very few of our developers had access to.

When the original module is manufactured, it goes through SMT line calibration and gets this provisioning information written to it based on the OS that it is manufactured with. Once we receive the module, we flash our OS image on top, but we are very careful to maintain the provisioning section (and move it if we have to).

If this provisioning partition is lost or overwritten, the only way back is to restore it from a backup…

Why Factory Restore is Tricky on Qualcomm

Qualcomm’s factory flashing tools are proprietary, Windows-based, and intended for factory use only - the magic that lies behind how the partitions work and how to work with them is not documented and I think its fair to say that everyone we talk to doesn’t enjoy us working with it due to the risks of breaking regulatory operations (and of course, the law…).

We’ve built a process however to work with this providing data and it works in two parts:

  1. **Restore the OS image (**20.04, Android 13 etc…)

  2. Restore the provisioning data so your device retains its calibration and identity.

You can both fix broken Tachyon devices, OR switch OS images (e.g. Ubuntu ↔ Android) while preserving the provisioning data in the right place.

The Manual Process

For the time being, I documented the manual process the the link above as a little more involved, as you need to backup your device until we have an API and CLI command to retrieve the provisioning backup.

The sequence is:

  1. Download the factory image for your device’s region.

  2. Back up existing provisioning data locally (or ask Particle for the image)

  3. Flash the factory image using the CLI.

  4. Restore your provisioning data so your unit is fully functional again.

The Good News

  • Once you’ve done this, you’ll also be able to flash the upcoming Android 13 image.

  • This work also lays the foundation for Android 24.04 support.

  • Our CLI tool is based on upstream EDL tools that we’ve patched and extended, so you have a fully open and portable restore workflow. Feel free to poke around at what we’ve done when its upstreamed - no secrets here :slight_smile:

How to Get Help

  • Try it out: Please read and give it a go if you have a bricked device!

  • Debugging: Please use this thread to share any issues or successes with factory flashing.

  • Missing backup partition? Please send a private message to @support with your device ID, email address for the particle account and forum username and we’ll send you the correct files in a ZIP so you can restore your device.

Thanks again for your patience - restoring low-level factory images is both powerful and (if done wrong) easy to break, so follow the instructions carefully.

Cheers,

Nick.

4 Likes

Hi @mrlambchop

I dived into a rabbithole trying to install VNC with Claude AI support (which I shouldn’t have done) - long story short, finaly got VNC working but my desktop locally stopped working so I want to reinstall with the above instructions and decide to go headless
My questions are:

  • is the procedure above the right for full installl? If not please advise best way to do so
  • I did tried to put device in EDL mode but when I followed the instructions (holding button 3 seconds while applying power) the RED LED stays on and the command particle command ‘particle identify’ gave below results

image

I tried several times with different usb-c to usb-c cable directly connected to my W11 computer but no luck
funny thing is that if I put in Program mode by pressing again for 3 seconds (Green/yellow LED blinks) and press again the command output appears?

I hope you can help me setting up my Tachyon as headless device.

Regards,

Bart

I got the same message when I tried half-a-dozen times to put my Tachyon into EDL mode.

I’ll try your suggestion.

Worked!

2 Likes

@mrlambchop

A suggestion …

Considering the importance of having a backup of the Manufacturing data (modem provisioning), as part of a successful Tachyon setup, it would be good to have script either automatically save the data or give the user an option to save it in the home folder.

Hi Nick,

It seems I was too optimistic. I followed the instruction and used the send over backup - and I am able to boot again - But only WiFi is working - Cellular is not working

I pasted the full ril log after reset

RIL Log

Hope you can help

Kind regards

Thomas

  • 2025-08-13: Don't know exactly what happend. I send AT+CFUN=1 and set to an arbitrary APN and restarted the Service. Then removed the APN and restarted again -> Connection to Cellular.
    That is a bit strange. - But I will not complain