⚠️ Warning: Raspberry Pi OS Trixie (Debian 13) and Bookworm (Debian 12) have removed or broken the kernel driver that the ArgonPOD display depends on. Do not run the official Argon curl installer on Trixie. If you want the POD display working today, use Raspberry Pi OS Bullseye (Debian 11) 32-bit. Select it under Raspberry Pi OS (Other) inside the official Raspberry Pi Imager tool.
The ArgonPOD is a compact enclosure and expansion board for the Raspberry Pi Zero 2 W, adding a 320×240 ILI9341 SPI LCD panel, four programmable buttons. It is designed for makers and developers who want a self-contained, portable Pi system with a built-in display and physical controls.
This page documents the software compatibility situation between the ArgonPOD display and recent Raspberry Pi OS releases. It explains exactly why the display stops working after an OS update, which OS versions are affected, what you can do right now, and what Argon40 is working on for future support.
ARGON POD Display 2.8 inch
📝 Note: The Raspberry Pi Zero 2 W itself is not included. You will need to supply your own board, microSD card, and USB power supply.
⚠️ Warning: Always power off and unplug the Pi before assembling or disassembling the ArgonPOD. The GPIO header carries 3.3 V and 5 V lines that can damage the board if shorted during assembly.
Before installing any software, confirm you are on a supported OS. See the Full OS Compatibility Table below. Raspberry Pi OS Bullseye (Debian 11) 32-bit is the only fully supported version for the ArgonPOD display on the Pi Zero 2 W.
📝 Note: Use the Lite edition, not the full desktop edition. The Pi Zero 2 W has 512 MB of RAM shared between CPU and GPU. A full desktop environment combined with SPI display output exceeds what that RAM budget can sustain stably.
Boot your Pi Zero 2 W into the fresh Bullseye Lite install and run:
curl https://download.argon40.com/argonpod.sh | bash
The installer will:
/boot/firmware/config.txtpitft28-resistive device tree overlayfbcp framebuffer copy daemonWhen the installer completes, reboot:
sudo reboot
The LCD panel should illuminate and display output within 30 seconds of boot.
After a successful install, lock the system against kernel upgrades that would remove the pitft overlay:
sudo apt-mark hold raspberrypi-kernel raspberrypi-kernel-headers
You can still install security updates and application packages normally. This hold prevents only the kernel package from being upgraded during apt upgrade.
⚠️ Warning: Running
sudo apt dist-upgradewithout this hold in place will upgrade the kernel to a Bookworm- or Trixie-era version, removing thepitft28-resistive.dtbooverlay file and replicating the Trixie display breakage on an otherwise working system.
Raspberry Pi Zero
This is not a hardware fault. The ArgonPOD display panel and its SPI wiring are unchanged. What broke is the software driver layer inside the Linux kernel that the display depends on. Understanding this requires knowing exactly how the display pipeline works.
The ArgonPOD LCD is an SPI-connected panel (ILI9341 chip, 320×240 pixels). SPI (Serial Peripheral Interface) is a 4-wire protocol that uses specific GPIO header pins on the Pi. For pixels to appear on that screen, the following software chain must be complete and working:
| Step | Component | Role |
|---|---|---|
| 1 | ArgonPOD LCD | Physical display hardware |
| 2 | Kernel SPI driver spi-bcm2835 |
Talks to the SPI bus |
| 3 | Panel overlay pitft28-resistive / fbtft |
Registers the panel with the kernel |
| 4 | Framebuffer device /dev/fb1 |
Exposes a drawable surface to userspace |
| 5 | Display output X11 / fbcp |
Copies desktop frames to the framebuffer |
| 6 | Screen shows image | Visible output |
Remove or break any single link in that chain and the screen goes dark. On older OS versions all links existed. On newer kernels, links 3 and 4 — the panel overlay and the framebuffer subsystem — were removed or completely restructured.
dtoverlay and config.txt Actually DoWhen the Pi boots, it reads /boot/firmware/config.txt. Lines beginning with dtoverlay= tell the bootloader to load a Device Tree Overlay — a compiled binary file with the extension .dtbo. This file describes the hardware attached to the GPIO pins so the kernel knows it exists.
For the ArgonPOD display, the required overlay is:
dtoverlay=pitft28-resistive
This requires the physical file /boot/overlays/pitft28-resistive.dtbo to exist on disk. You can write anything into config.txt — if the .dtbo file is not on disk, the kernel silently ignores the line. No error. No display. The SPI device simply never gets registered.
Kernel 5.15 shipped with the complete fbtft (framebuffer TFT) subsystem intact. The file pitft28-resistive.dtbo was present in /boot/overlays/. Loading the overlay caused the kernel to register the SPI panel as a standard Linux framebuffer device at /dev/fb1. The Argon installer then pointed X11's fbdev driver at /dev/fb1 and output desktop graphics to the LCD. This entire pathway worked reliably.
Kernel 6.1 introduced vc4-kms-v3d as the default display driver. KMS (Kernel Mode Setting) is a modern graphics architecture where the kernel — not userspace — controls the display hardware exclusively. The problem: KMS and fbtft fight over the same display pipeline. KMS assumes exclusive control. Some fbtft overlays technically still existed in Bookworm but were unreliable because enabling KMS simultaneously caused pipeline conflicts. The Argon installer tried to enable both, which was self-defeating. Results on Bookworm were inconsistent — some users got partial functionality by manually disabling full KMS and switching to fake-KMS (vc4-fkms-v3d); most could not.
Kernel 6.6 completed the transition. The entire pitft family of overlays was fully removed from the Raspberry Pi kernel package. The file /boot/overlays/pitft28-resistive.dtbo does not exist on a Trixie installation — it was deleted, not moved. It cannot be restored by copying files from an older system.
Additionally, Trixie defaults to Wayland as the display compositor. The Argon installer's approach of configuring xserver-xorg-video-fbdev to output to /dev/fb1 is an X11 method that is architecturally incompatible with a Wayland-default system. Running the installer on Trixie attempts to load a non-existent overlay and misconfigures the display manager — leaving the system in a broken state where neither the LCD nor HDMI output may work correctly after reboot.
⚠️ Warning: Do not run the official Argon curl installer on Trixie. It will not enable the display. It will damage your existing display configuration. A fresh OS reinstall is the fastest recovery if you have already run it.
Several users have attempted to manually copy .dtbo files from older kernels or compile them from source. This fails because Device Tree Overlays are compiled against specific kernel versions. A .dtbo compiled for kernel 5.15 references memory addresses, register offsets, and subsystem APIs that changed in 6.1 and 6.6. The kernel either ignores the overlay silently or generates hardware faults when loading a mismatched file.
The GPIO and SPI subsystem architecture itself changed between Bullseye and Trixie. This is not a missing file problem. It is a rewritten foundation problem. The driver needs to be rewritten for the new DRM/KMS kernel architecture, not patched.
| OS version | Kernel | Display | Technical reason |
|---|---|---|---|
| Buster / Debian 10 | 5.10 | ⚠️ Legacy only | fbtft present but OS is end-of-life. No security updates. Not recommended for new installs. |
| Bullseye / Debian 11 | 5.15 | ✅ Supported | pitft28-resistive.dtbo present. fbtft intact. No KMS conflict. Official installer works. Recommended. |
| Bookworm / Debian 12 | 6.1 | ⚠️ Unreliable | KMS enabled by default conflicts with fbtft. Must manually disable vc4-kms-v3d. Board-dependent results. |
| Trixie / Debian 13 | 6.6+ | ❌ Not compatible | pitft overlays physically removed. Wayland default. fbtft/fbdev pipeline does not exist. Installer breaks the system. |
The Pi Zero 2 W is a capable small-form-factor board for lightweight tasks, but it has specific hardware constraints that make running the ArgonPOD display significantly more demanding than on other boards. These constraints exist regardless of which OS version you use.
| Spec | Value and implication |
|---|---|
| RAM | 512 MB shared between CPU and GPU. Running Xorg + a desktop session + fbdev output leaves under 200 MB free. This causes instability and OOM (out-of-memory) kills on a full desktop environment. |
| CPU | 4-core ARM Cortex-A53 @ 1 GHz. Adequate for headless tasks; lightweight for driving a framebuffer desktop simultaneously. |
| SPI bus speed | Max practical throughput on the Zero 2 W SPI bus limits the ArgonPOD LCD to approximately 10–15 FPS maximum refresh rate even under ideal conditions. At 320×240 pixels × 16-bit colour × 15 FPS, the bus is already near saturation. Full-motion desktop use is sluggish. |
| No hardware GPU acceleration for SPI output | SPI framebuffer output is CPU-driven. Every pixel update is computed and transferred by the CPU, not a GPU. This compounds the RAM and SPI throughput constraints. |
⚠️ Warning: Do not attempt to run the ArgonPOD display on a Pi Zero 2 W with Trixie. Two separate and independent problems make this impossible.
Software barrier: The kernel 6.6 driver for the SPI display panel does not exist. Trixie removed the pitft overlay. Without a complete DRM/KMS driver rewrite, the display cannot be registered with the kernel regardless of what scripts you run or config changes you make.
Hardware barrier: Even if the driver existed, the Zero 2 W's 512 MB RAM is insufficient to run a full Trixie desktop session (which defaults to Wayland + full compositor) while simultaneously pushing frames to the SPI LCD over a CPU-driven bus. You are asking a board with less RAM than a mid-range smartphone to do the work of a full graphical workstation.
You are not facing a configuration problem. You are facing a situation where the hardware capability and the software support have both independently moved past what Trixie on Zero 2 W can provide for display output.
curl https://download.argon40.com/argonpod.sh | bash
sudo apt-mark hold raspberrypi-kernel raspberrypi-kernel-headers
⚠️ Warning: Do not run
sudo apt dist-upgradeto a newer Debian version after installation. This upgrades the kernel and removes thepitftoverlay — exactly replicating the Trixie breakage.
📋 Page Info
Revision: 1 · Published: 2026-09-02 06:15 UTC
Managed by Argon Wiki Tool · View live page