Skip to main content

Cellular Modem on Tachyon

The Particle Tachyon leverages the Qualcomm QCM6490 chipset, which includes an integrated 5G sub-6GHz modem. This ensures high-speed, reliable, and globally compatible cellular connectivity.

Overview

The 5G modem inside the QCM6490 provides multi-region support, allowing the Tachyon device to connect to both LTE and 5G networks. This modem supports sub-6GHz frequencies but does not include mmWave.

Key Features of the QCM6490 Cellular Modem

  • 5G NR (sub-6GHz) → Provides high-speed, low-latency connectivity.
  • 4G LTE fallback → Ensures robust connectivity in non-5G areas.
  • Multi-region support → Two variants exist for North America (NA) and Rest of World (RoW).
  • eSIM Support → Devices come preloaded with an activated, high-scale data plan.
  • Automatic Carrier Switching → Device selects the best network available dynamically.
  • Integrated GNSS (GPS) → Provides location-based services.

Regional Variants

There are two different variants of the Particle Tachyon device:

  1. North America (NA) Build → Optimized for US, Canada, and Mexico.
  2. Rest of World (RoW) Build → Optimized for Europe, Asia, and other global markets.

💡 Why Different Variants? The QCM6490 modem has different RF front-end requirements for various regions, similar to how modern 5G smartphones operate. For example, iPhones also ship with different RF configurations depending on their sales region.


Antenna Configuration

The Tachyon board features a built-in 5G sub-6GHz antenna, which is directly connected to the modem. Currently, 0external antenna support is not available, though an adapter exists internally (but has not been publicly released).

Desktop Setup

💡 Antenna Optimization We use various combinatorial technologies to mux multiple antennas together, ensuring the best possible performance while reducing the antenna size.


SIM & eSIM Connectivity

The Tachyon device comes preloaded with an eSIM, which is:

  • Activated out of the box → No manual activation required.
  • Automatically connects → Selects the best available carrier.
  • Configured with a high-scale data plan.

For more details, visit the Tachyon Data Plan Page.


Modem Management Commands

Troubleshooting the Modem

If experiencing connectivity issues, ensure the RILD service is running:

systemctl status particle-tachyon-rild
systemctl restart particle-tachyon-rild

Power cycle the modem:

particle-tachyon-ril-ctl power off
particle-tachyon-ril-ctl power on

Checking Modem State

particle-tachyon-ril-ctl state

Examples:

// Not registered yet
particle-tachyon-ril-ctl state
Enabled

// Registered and with a data connection down
particle-tachyon-ril-ctl state
Registered

// Registered and with a data connection up
particle-tachyon-ril-ctl state
Connected

strings returned for state

MM_MODEM_STATE_FAILED:        "Failed"
MM_MODEM_STATE_UNKNOWN: "Unknown"
MM_MODEM_STATE_INITIALIZING: "Initializing"
MM_MODEM_STATE_LOCKED: "Locked"
MM_MODEM_STATE_DISABLED: "Disabled"
MM_MODEM_STATE_DISABLING: "Disabling"
MM_MODEM_STATE_ENABLING: "Enabling"
MM_MODEM_STATE_ENABLED: "Enabled"
MM_MODEM_STATE_SEARCHING: "Searching"
MM_MODEM_STATE_REGISTERED: "Registered"
MM_MODEM_STATE_DISCONNECTING: "Disconnecting"
MM_MODEM_STATE_CONNECTING: "Connecting"
MM_MODEM_STATE_CONNECTED: "Connected"
MM_MODEM_STATE_SIM_DISABLED: "SIM Disabled"
default: "Unknown State"

Monitor modem state changes with --follow, Ctrl+C to cancel

particle-tachyon-ril-ctl state --follow

Example output:

Listening for State changes...
Registered
Connecting
Connected
Disabling
Disabled
Enabling
Enabled
Registered
Enabled
Registered
Connecting
Connected

Checking Modem Status

To check if the modem is detected and working:

particle-tachyon-ctl-ril status

Example Output:

state: 12
signal-quality: 42, true
access-technologies: 13
m3gpp-registration-state: 5
m3gpp-operator-code: 310410
m3gpp-operator-name: AT&T FloLive
cdma-cdma1x-registration-state: 4
cdma-evdo-registration-state: 4
cdma-sid: 0
cdma-nid: 0

state

MM_MODEM_STATE_FAILED        = 0  // The modem is unusable
MM_MODEM_STATE_UNKNOWN = 1 // State unknown or not reportable
MM_MODEM_STATE_INITIALIZING = 2 // The modem is currently being initialized
MM_MODEM_STATE_LOCKED = 3 // The modem needs to be unlocked
MM_MODEM_STATE_DISABLED = 4 // The modem is not enabled and is powered down
MM_MODEM_STATE_DISABLING = 5 // The modem is currently transitioning to the MM_MODEM_STATE_DISABLED state
MM_MODEM_STATE_ENABLING = 6 // The modem is currently transitioning to the MM_MODEM_STATE_ENABLED state
MM_MODEM_STATE_ENABLED = 7 // The modem is enabled and powered on but not registered with a network provider and not available for data connections
MM_MODEM_STATE_SEARCHING = 8 // The modem is searching for a network provider to register with
MM_MODEM_STATE_REGISTERED = 9 // The modem is registered with a network provider, and data connections and messaging may be available for use
MM_MODEM_STATE_DISCONNECTING = 10 // The modem is disconnecting and deactivating the last active packet data bearer
MM_MODEM_STATE_CONNECTING = 11 // The modem is activating and connecting the first packet data bearer
MM_MODEM_STATE_CONNECTED = 12 // One or more packet data bearers is active and connected
MM_MODEM_STATE_SIM_DISABLED = 13 // The modem does not have a SIM profile enabled, will be disconnected

signal-quality

<signal_value_percentage> ,<recently_updated_boolean>

  • signal_value_percentage = 0 - 100 (%) Note: 255 if invalid
  • recently_updated_boolean = true if updated within the last 10 seconds, false if longer than 10s

access-technologies

UTRAN                        = 2   // 3G UMTS
UTRAN W/HSDPA = 4 // 3G UMTS with High-Speed Downlink Packet Access (HSDPA)
UTRAN W/HSUPA = 5 // 3G UMTS with High-Speed Uplink Packet Access (HSUPA)
UTRAN W/HSDPA and HSUPA = 6 // 3G UMTS with both HSDPA and HSUPA (HSPA)
E-UTRAN = 7 // 4G LTE
E-UTRAN connected to a 5GCN = 10 // 4G LTE connected to a 5G Core Network (5GC)
NR connected to 5GCN = 11 // 5G NR (New Radio) connected to a 5G Core Network (5GC)
NG-RAN = 12 // Next-Generation RAN (includes both LTE and NR under 5GC)
E-UTRAN-NR dual connectivity = 13 // 5G NR and 4G LTE working together (EN-DC)

m3gpp-registration-state

MM_MODEM_REGISTRATION_STATE_IDLE      = 0
MM_MODEM_REGISTRATION_STATE_HOME = 1
MM_MODEM_REGISTRATION_STATE_SEARCHING = 2
MM_MODEM_REGISTRATION_STATE_DENIED = 3
MM_MODEM_REGISTRATION_STATE_UNKNOWN = 4
MM_MODEM_REGISTRATION_STATE_ROAMING = 5

m3gpp-operator-code

Network Operator PLMN <mccmnc>

m3gpp-operator-code: 310410

m3gpp-operator-name

Network Operator Name <name>

m3gpp-operator-name: AT&T FloLive

cdma-cdma1x-registration-state

  • N/A - permanently set to MM_MODEM_REGISTRATION_STATE_UNKNOWN (4)

cdma-evdo-registration-state

  • N/A - permanently set to MM_MODEM_REGISTRATION_STATE_UNKNOWN (4)

cdma-sid

  • N/A - permanently set to 0

cdma-nid

  • N/A - permanently set to 0