Skip to main content

Tips & Tricks for Tachyon

This page collects useful commands and tricks for working with Tachyon on Linux. If you have any useful additions, feel free to share them in the Tachyon community forums!


Check the Installed Ubuntu OS Version

To check which version of Ubuntu is running on your Tachyon device, use:

cat /etc/particle/distro_versions.json

This outputs a JSON object showing the current stack version, firmware versions, and other key details:

{
"distro": {
"stack": "ubuntu-base",
"version": "1.0.25",
"variant": "release"
},
"src": {
"ubuntu_20_04": "image-48-ff4c992de",
"quectel_bp_fw": "1.0.5",
"syscon_firmware": "v0.7.16"
}
}

Turn Off Kernel Debug Prints on the Root Console

If your serial console is flooded with kernel messages, you can disable them by running:

sudo dmesg -n 1

# To set back to the highest log level
sudo dmesg -n 8

This sets the log level to only critical messages, reducing clutter.

Check System Resource Usage (CPU, Memory, Disk, etc.)

htop

• Provides an interactive way to monitor CPU, memory, and process activity.

df -h

• Shows disk space usage in a human-readable format.

Find Which Process is Using a Port

If a port is in use and preventing a service from starting, you can find the process using it:

sudo netstat -tulnp | grep LISTEN

or

sudo lsof -i -P -n | grep LISTEN

• These commands list all open ports and their associated processes.

Restart Network Interfaces

If you need to restart the network without rebooting:

sudo systemctl restart NetworkManager

or

nmcli networking off && nmcli networking on

• Useful for Wi-Fi and LTE debugging.

Check Boot Logs for Errors

If your device isn’t booting properly, check the logs:

journalctl -xe

• Shows detailed logs, including boot issues and systemd service failures.

Test Internet Connectivity

ping -c 5 8.8.8.8

Note: this uses the highest priority default route, i.e. Ethernet > Wi-Fi > Cellular

• Checks if the device has internet access.

curl -Is https://particle.io | grep particle

• Verifies if a specific website is reachable.

Quickly Find and Kill a Stuck Process

ps aux | grep <process-name>

• Finds all running instances of a process.

sudo kill -9 <PID>
  • Kills a process by PID (replace PID with the actual number).

Alternative Flashing Method

You can manually flash the device using a specific image using the following command:

particle flash --tachyon <filename>

Note that this does not include any device setup (wifi, particle cloud etc...).

Check the battery current level

cat /sys/class/power_supply/battery/capacity

Output is 0 to 100% depending on the battery charge level.

Check if the battery is charging!

cat /sys/class/power_supply/battery/status

This returns one of the following:

  • Charging
  • Discharging
  • Full
  • Not Charging

Check the instantaneous current from the battery

cat /sys/class/power_supply/battery/current_now

The output is in microamperes (µA). To convert it to amperes (A), divide by 1,000,000.

Check the battery voltage

cat /sys/class/power_supply/battery/voltage_now

Output is a number such as 3914982 which when padded out gives us 3,914,982 which is 3.9V

Check the battery voltage

cat /sys/class/power_supply/battery/voltage_now

Check if USB-C is connected and available as a power source

cat /sys/class/power_supply/usb/online

1 == online and available! 0 == not present.

Got More Tips?

We’re always looking for more useful tricks! If you’ve found something helpful, share it in the Tachyon community forum.


Other Useful Linux Tips to Consider Adding

  1. Setting Up SSH Keys for Remote Access (ssh-keygen -t rsa -b 4096)
  2. Finding Large Files & Freeing Up Space (du -sh * | sort -hr)
  3. Configuring a Static IP Address (nmcli con modify ...)
  4. Enabling & Disabling Services (systemctl enable/disable ...)

Let me know if you’d like to add any of these, or if you'd like other custom sections! 🚀