Modifying & Building the Tachyon Kernel (On-Device, Debian Method)
The Linux kernel powers hardware enablement on Tachyon. If you need to enable drivers, change configs, or patch functionality, you’ll be working with the tachyon-ubuntu-24.04-kernel
repository. These instructions describe how to build directly on the Tachyon device, using Ubuntu’s Debian packaging system located under debian.qcom/
.
1. Get the Source
sudo apt update
sudo apt install -y git
git clone --depth=1 https://github.com/particle-iot/tachyon-ubuntu-24.04-kernel.git
cd tachyon-ubuntu-24.04-kernel
2. Install Build Tools
Install all required packages for kernel building:
sudo apt update
sudo apt install -y \
build-essential fakeroot dpkg-dev devscripts \
libncurses-dev flex bison bc \
libelf-dev dwarves pahole \
openssl libssl-dev \
rsync python3 git
3. Modify the Kernel Config
There are two supported ways:
A. Edit the Annotations File
Ubuntu kernel configs are managed via debian.qcom/config/annotations
.
- Open and adjust
CONFIG_*
entries in that file. - Regenerate configs:
debian/rules updateconfigs
B. Use Menuconfig
For an interactive menu:
debian/rules editconfigs
This launches menuconfig
. Save and exit to update the debian.qcom/config/
fragments.
4. Build Kernel Packages
Run the Debian packaging build:
fakeroot debian/rules clean
fakeroot debian/rules binary
Output
Debian packages (.deb
) will be created in the parent directory:
linux-image-...-tachyon_*.deb
linux-modules-...-tachyon_*.deb
linux-headers-...-tachyon_*.deb
(optional)
5. Install Packages & Reboot
Copy the .deb
files to your device (if not building locally) and install:
cd ..
sudo dpkg -i linux-image-*tachyon_*.deb linux-modules-*tachyon_*.deb
# Optional if you need headers:
sudo dpkg -i linux-headers-*tachyon_*.deb
Then reboot:
sudo reboot
Verify with:
uname -a
With this flow you are building and installing the kernel the same way Ubuntu maintains its kernels, tailored for Tachyon.