Install Xyrom OS on Raspberry Pi 4B GUI Edition

Full Xyrom OS with desktop GUI shell — optimised for Raspberry Pi 4B, SunFounder PiDog, and 7" touchscreen displays.

Latest release: Xyrom OS 2026 V.1.1  ·  ARM64  ·  1.3 GB compressed  ·  19 Jun 2026  ·  Live-tested on hardware ✓

🆕 What's new in v2026-V1
⬇ Xyrom OS — Raspberry Pi 4B Image
Flash-ready .img.gz · No login required · Direct download
Version v2026-V1
Arch ARM64 (aarch64)
Size 1.3 GB
Base OS Raspberry Pi OS Bookworm 64-bit
GUI Chromium kiosk shell
Display HDMI (52Pi / any) + DSI auto-detect
Robot SunFounder PiDog ready
SHA256  9de8facd7848a9b4fea704c0249942ebdc05da1c31fc80194cd9ee8b27ea6c1f   xyromos-v2026-V1.1-rpi4-arm64.img.gz

🧩 Requirements

BoardRaspberry Pi 4 Model B (2 GB, 4 GB, or 8 GB recommended)
DisplayAny HDMI monitor or 7" touchscreen — HDMI and DSI both auto-detected. Tested with 52Pi EP-0177 (1024×600) and GeekPi 7" DSI.
StoragemicroSD card ≥ 16 GB (Class 10 / A2 recommended)  or  USB 3.0 drive ≥ 16 GB
PowerUSB-C 5V / 3A (official Raspberry Pi PSU recommended — especially with PiDog servos)
CameraOptional — Pi Camera Module V2 (IMX219, CSI ribbon) or any USB webcam. config.txt pre-configured for imx219.
NetworkOptional — Xyrom OS installs and runs 100 % offline
Flash hostAny PC / Mac / Linux with SD card reader or USB port

📋 Step 1 — Verify the download

After downloading, confirm the file is intact:

sha256sum -c xyromos-v2026-V1.1-rpi4-arm64.sha256

Expected output: xyromos-v2026-V1.1-rpi4-arm64.img.gz: OK

💾 Step 2 — Flash the image

Option A — Recommended
🍓 Raspberry Pi Imager
  1. Download Raspberry Pi Imager (free, Windows / macOS / Linux).
  2. Click Choose OS → scroll down → Use custom image.
  3. Select xyromos-v2026-V1.1-rpi4-arm64.img.gz.
  4. Click Choose Storage → select your SD card or USB drive.
  5. Click Write and wait for verification to complete.
Option B
🔥 Balena Etcher
  1. Download balenaEtcher.
  2. Flash from file → select the .img.gz (Etcher decompresses automatically).
  3. Select your SD card / USB drive as target.
  4. Click Flash!
Option C — Linux / macOS terminal
⌨ Command line (dd)
gunzip -c xyromos-v2026-V1.1-rpi4-arm64.img.gz | \
  sudo dd of=/dev/sdX bs=4M status=progress conv=fsync
⚠ Replace /dev/sdX with your actual device. Verify with lsblk first — writing to the wrong disk will destroy data.

🔌 Step 3 — Assemble the hardware

  1. Insert the flashed SD card (or plug USB drive into a blue USB 3.0 port).
  2. Connect your display — HDMI or DSI. Both are pre-configured. For HDMI use port 1 (closest to USB-C power) unless you have a specific reason for port 2.
  3. Camera (optional): Seat the Pi Camera V2 ribbon cable into the CSI connector — silver contacts face toward the USB ports. Lock the latch firmly.
  4. If using a SunFounder PiDog, ensure the Robot HAT is seated and battery is connected but not yet switched on.
  5. Connect power last (USB-C 5V/3A).

🖥 Display — what's pre-configured

This image ships with both HDMI ports and DSI pre-configured in config.txt:

🚀 Step 4 — First boot

  1. Power on the Raspberry Pi 4B.
  2. First boot: filesystem expands automatically — takes ~30–45 seconds total to desktop (improved from previous versions).
  3. The Xyrom OS GUI shell launches automatically in fullscreen kiosk mode.
  4. The activation wizard starts on-screen — enter your license key to proceed.
💡 Xyrom OS runs 100 % offline. No internet is required for installation, first boot, or activation. Connect to a network only for cloud features or online license verification.

🔑 Step 5 — Activation

  1. In the GUI wizard, tap Get Started.
  2. Enter your license key (format: TIER-ORGID-XXXXXXXX) and your Organisation ID.
  3. Set your Robot ID (e.g. pidog-001) — used to identify this device in the portal.
  4. Tap Activate. Activation works online or offline — if no network, a 30-day grace token is issued automatically.
  5. Once complete the robot dashboard launches. You're live.
🎓 No license key? Visit license.xyromos.com to get one, or tap Evaluate in the wizard for a 30-day free trial.

📷 Camera setup (Pi Camera V2 / IMX219)

The camera interface is pre-enabled. Once physically connected, the camera stream starts automatically on boot.

  1. Power off. Open the CSI latch on the Pi. Insert the Pi Camera V2 ribbon cable — silver contacts face toward the USB ports. Press latch down firmly. Do the same on the camera end.
  2. Power on. The xyrom-camera service starts and streams on http://<pi-ip>:7001/stream.
  3. In the Xyrom OS GUI, tap the 📷 Camera tab in the top nav to view the live feed.
📌 USB cameras also work out-of-the-box — plug in and the stream auto-detects. No config change needed.

🖥 Display config reference

If your screen is backlit but blank, the Pi is booting fine — it's a resolution mismatch. Pull the SD card, open bootfs/config.txt on any PC, and find/replace the relevant block below.

📌 Pi 4 has two micro-HDMI ports. Port 1 (closest to USB-C power) = no suffix. Port 2 (next to USB-A) = needs :1 on every setting. This is the most common cause of blank screen.
Displayconfig.txt settings
52Pi EP-0177 7"
HDMI · 1024×600
✓ pre-configured
Port 1:
hdmi_force_hotplug=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt=1024 600 60 6 0 0 0
hdmi_drive=2
disable_overscan=1
Port 2:
hdmi_force_hotplug:1=1
hdmi_group:1=2
hdmi_mode:1=87
hdmi_cvt:1=1024 600 60 6 0 0 0
hdmi_drive:1=2
disable_overscan:1=1
GeekPi / RPi 7"
DSI ribbon · 800×480
dtoverlay=vc4-kms-v3d
dtoverlay=rpi-ft5406
display_lcd_rotate=0
Set display_lcd_rotate=2 if display is upside-down.
Waveshare 7" DSI
Goodix touch · 1024×600
dtoverlay=vc4-kms-v3d
dtoverlay=goodix
display_lcd_rotate=0
1080p HDMI monitor
1920×1080
Port 1:
hdmi_force_hotplug=1
hdmi_group=2
hdmi_mode=82
hdmi_drive=2
720p HDMI
1280×720
hdmi_force_hotplug=1
hdmi_group=2
hdmi_mode=85
hdmi_drive=2
4K HDMI
3840×2160 · 30Hz
hdmi_force_hotplug=1
hdmi_group=2
hdmi_mode=97
hdmi_drive=2

🛠 Troubleshooting

SymptomFix
Backlit but blank screenPi is booting fine — resolution mismatch or wrong HDMI port. See display table above. Port 2 requires :1 suffix on every config line.
Screen goes blank during useFixed in v2026-V1 (GPU crash fix). If still happening: SSH in and check /var/log/xyromos/gui.log for GPU errors.
Black screen, no backlight (DSI)Check ribbon cable orientation — silver contacts face down toward board. Try display_lcd_rotate=2 if upside-down.
Touch not respondingUSB touch: try a different USB port and reboot. DSI Goodix: verify dtoverlay=goodix,interrupt=4,reset=17 in config.txt.
No camera feedCheck CSI ribbon is fully seated at both ends — silver contacts toward USB ports. Verify camera_auto_detect=1 in config.txt. Run libcamera-hello via SSH to test.
PiDog reboots on stand-upPower surge from servos. Fixed in v2026-V1 (safe-start). Ensure 5V/3A PSU. Separate servo power supply recommended for heavy motion.
GUI doesn't launchSSH in: ssh xyrom@xyromos-robot.local → run journalctl -u xyrom-runtime -n 50 and cat /var/log/xyromos/gui.log
Boot still slow after flashv2026-V1 saves ~18s. First boot is slower (filesystem expand). Subsequent boots should reach desktop in ~25–30s.
No boot from USB driveEnable USB boot first via SD card: sudo rpi-eeprom-update then reboot.
SHA256 mismatchRe-download — file corrupted in transit. Try wget https://xyromos.com/download/releases/v2026-V1.1/xyromos-v2026-V1.1-rpi4-arm64.img.gz

🔒 SSH access

SSH is enabled by default. Connect with:

ssh xyrom@<device-ip>
# Default password: xyromos  (change immediately with: passwd)

Find the device IP on your router, or use mDNS: ssh xyrom@xyromos-robot.local

📦 What's included in v2026-V1

📥 Previous versions and other platform images (RPi5, x86, Jetson, BeagleBone) are available at license.xyromos.com with an active license.
← Back to all platforms