Skip to main content

eSIM Setup

This guide walks you through setting up and provisioning an eSIM on Tachyon.

Standard Provisioning

Initial Workstation Setup

  1. Ensure you have Particle CLI v3.32.2 or later installed.

  2. Install Android platform tools:

# MacOS
brew install android-platform-tools

Create an eSIM Profile Manifest

Create a JSON file in the following format:

{
"provisioning_data": [
{
"profiles": [
{
"iccid": "<your iccid, if available, else use 8000000000123456789>",
"provider": "custom",
"smdp": "<smdp_plus_server_address>",
"matching_id": "<matching id or activation code>"
}
]
}
]
}

Save this file.

⚠️ Provision with CLI (DOESN’T CURRENTLY WORK)

  1. Ensure you have a valid eSIM Profile Manifest JSON file.
  2. Connect the Tachyon to your workstation via USB1.
  3. Confirm the device is detected:
adb devices
  1. Install the latest particle-tachyon-ril package, if not already installed:
echo 'deb https://packages.particle.io/debian stable main' > /etc/apt/sources.list.d/particle.list
wget -O - https://packages.particle.io/public-key.gpg | apt-key add -
apt-get update
apt-get install particle-tachyon-ril
  1. Run the following command:
particle esim provision \
--lpa /usr/bin/lpa \
--output ~/particle/esim/provision_logs \
--input ~/particle/esim/<ESIM_PROFILE_MANIFEST_FILE>.json

🛠 Manual Provisioning (WORKS)

The lpa binary is available on the Tachyon.

On the Tachyon (via SSH or adb shell)

systemctl stop particle-tachyon-rild
particle-tachyon-rild --port /dev/smd8

In a second connection to Tachyon

lpa download '1$smdp-plus-hostname-example.com$XXXX-YYYY-ZZZZ' --serial=/dev/tty.usbmodem*

Back on the first connection to Tachyon

terminate particle-tachyon-rild, press Ctrl+C

Enable the SIM

particle-tachyon-rild listProfiles
particle-tachyon-rild enable <iccid>

If any error occurs, power cycle again

particle-tachyon-rild power off
particle-tachyon-rild power on

Confirm active SIM

particle-tachyon-rild sim

Connect for the first time

particle-tachyon-rild connect status

After it connects, you can watch the status output for a bit, then press Ctrl+C

Re-enable Service

systemctl start particle-tachyon-rild