Skip to main content

Restoring Back to Factory Firmware

Restoring your Tachyon to the original factory firmware can be useful for troubleshooting or preparing a device for reassignment.

Warning

This process will erase the operating system, user data, and configuration from your device.
If you do not have a backup of your modem provisioning data, your device will not function correctly until Particle provides an individual file to restore it for you.


Stage 1: Install the Particle CLI

You will need the Particle CLI to perform this procedure.
If you don’t already have it installed, follow our CLI installation guide.


Stage 2: Put the Device into EDL Mode

To restore factory firmware, your Tachyon must be placed into EDL (Emergency Download) mode so the CLI can access the low-level flash programmer.

  1. Disconnect power
    Unplug both the battery and USB-C cable from the Tachyon board.

  2. Press and hold the button
    Locate the main button next to the LED.
    Press and hold this button before reconnecting power.

    Holding the Tachyon button
  3. Reconnect USB-C to your computer
    While still holding the button, plug one end of your USB-C cable into the primary USB port (USB1) on Tachyon, and the other end into your computer.

    Tachyon plugged into USB
  4. Release the button after 3 seconds
    The device will now be in EDL mode — there is no LED feedback in this mode.


tip

If you accidentally power the device on normally instead of entering EDL mode, unplug the battery and USB, then repeat the steps above.


Stage 3: Check the Backup Partition

Run the following command to verify the device status:

particle tachyon identify

Example output:

Device ID: 422a060000000000xxxxxxxx
Region: NA
Modem data: Present
OS Version: Ubuntu 20.04 DVT

The most critical line here is Modem data: Present - this tells us whether your provisioning data exists.


Select which status you have in your identify command:

If modem data is present, back it up before doing anything else. This ensures you can restore it after flashing.

First, change to a directory where you can create files. i.e.

Linux / Mac:

mkdir -p ~/tachyon/
cd ~/tachyon

Windows:

mkdir "%USERPROFILE%\tachyon"
cd /d "%USERPROFILE%\tachyon"

Then run:

particle tachyon backup

The log will show something like:

Backing up NV data from device 422a060000000000xxxxxxxx...
Logs will be saved to /Users/nicklambourne/.particle/logs/tachyon_422a060000000000xxxxxxxx_backup_1754608199993.log
Backing up NV data from device 422a060000000000xxxxxxxx complete!

This will output files as follows:

128K May  6 08:04 422a060000000000xxxxxxxx_fsc.backup
4.0M May 6 08:04 422a060000000000xxxxxxxx_fsg.backup
4.0M May 6 08:04 422a060000000000xxxxxxxx_modemst1.backup
4.0M May 6 08:04 422a060000000000xxxxxxxx_modemst2.backup
1.5M May 6 08:04 422a060000000000xxxxxxxx_nvdata1.backup
1.5M May 6 08:04 422a060000000000xxxxxxxx_nvdata2.backup

To keep these safe, we recommend putting into a ZIP file (replace the device ID with your Device ID):

Linux / Mac:

zip 422a060000000000xxxxxxxx_backup.zip *.backup

Windows Powershell:

Compress-Archive -Path *.backup -DestinationPath 422a060000000000xxxxxxxx_backup.zip
tip

Keep this backup very safe — without it, your device will not be able to register on the network.


Stage 4: Download the Factory Firmware

Download the factory firmware based on if your device is an NA or Row device.

Linux / Mac:

NA (North America):

wget https://tachyon-ci.particle.io/release/Tachyon_NAPAR60A02_BP01.002_Ubuntu20.04.003.51.003.zip

RoW (Rest of World):

wget https://tachyon-ci.particle.io/release/Tachyon_EMPAR03A06_BP10.001_Ubuntu20.04.003.51.004.zip

Windows Powershell

NA (North America):

Invoke-WebRequest "https://tachyon-ci.particle.io/release/Tachyon_NAPAR60A02_BP01.002_Ubuntu20.04.003.51.003.zip" -OutFile "Tachyon_NAPAR60A02_BP01.002_Ubuntu20.04.003.51.003.zip"

RoW (Rest of World):

Invoke-WebRequest "https://tachyon-ci.particle.io/release/Tachyon_EMPAR03A06_BP10.001_Ubuntu20.04.003.51.004.zip" -OutFile "https://tachyon-ci.particle.io/release/Tachyon_EMPAR03A06_BP10.001_Ubuntu20.04.003.51.004.zip"

Stage 5: Flash the Factory Firmware

With the device still in EDL mode, run:

particle flash --tachyon ./Tachyon_NAPAR60A02_BP01.002_Ubuntu20.04.003.51.003.zip

(Replace the filename with your downloaded RoW or NA image.)

After flashing, the device will automatically start (flashing green).

However, after 22 seconds, it will power off again. This is normal! This is a restore image.

Next, we need to reprogram the OS image.


Stage 6: Re-Enter EDL Mode & Run Setup

After flashing:

  1. Unplug the device.
  2. Re-enter EDL mode using the steps from Step 2.

Then run:

particle tachyon setup

Follow the on-screen setup instructions to reinstall the OS, set passwords, and configure connectivity.


Stage 7: Restore Provisioning Data

After setup, unplug the device immediately and put it back into EDL mode again. Its the last time we promise!

Change to a spare directory (unless you already this step before!)

Linux / Mac:

mkdir -p ~/tachyon/
cd ~/tachyon

Windows:

mkdir "%USERPROFILE%\tachyon"
cd /d "%USERPROFILE%\tachyon"

And copy in the backup ZIP file from either (a) Particle (b) your own backup.

Unzip the files for use!

Linux / Mac:

unzip 422a060000000000xxxxxxxx_backup.zip

Windows Powershell:

Expand-Archive -Path "422a060000000000xxxxxxxx_backup.zip" -DestinationPath "."

Restore your provisioning data:

particle tachyon restore

The log will show something like:

Restoring NV data to device 422a060000000000xxxxxxxx...
Logs will be saved to /Users/nicklambourne/.particle/logs/tachyon_422a060000000000xxxxxxxx_restore_1754608822892.log
[█████████████████████████] 100% | Flashing complete Restore
Restoring NV data to device 422a060000000000xxxxxxxx complete!

If you do not have this file, contact Particle Support to obtain it.


Stage 8: Final Boot

  1. Disconnect all cables.
  2. Reconnect the battery and USB-C power.
  3. The device will boot into the factory OS, activate its modem, and reconnect to the Particle Cloud.

🎉 Your Tachyon has now been restored to factory firmware!