YARH.IO THEBRICK
Raspberry Pi 4B Cyberdeck
THEBRICK is a portable cyberdeck built around the Raspberry Pi 4B — a machine designed for people who want a real computer they can carry, open, and understand. It pairs a custom ortholinear mechanical keyboard with a 7.9-inch IPS display inside a fully 3D-printed enclosure, and runs a full Linux desktop with nothing locked down. Every part is accessible, every component replaceable. Three swappable 21700 batteries give it the kind of runtime that lets you actually work untethered — not just demo for five minutes. The whole point is a device you own completely: no cloud dependency, no sealed case, no planned obsolescence. Just a solid, repairable, genuinely portable Linux workstation that fits in a bag and survives daily use.
At the heart of THEBRICK sits a Raspberry Pi 4B — more than enough compute for development, browsing, and media on the go. A full aluminum heatsink covers the SoC, and a GPIO-controlled fan kicks in at 60°C to keep things cool inside the enclosed case, even during sustained workloads. The primary display is a Waveshare 7.9-inch IPS panel running at 400×1280 with a toughened glass cover that can take a beating. The panel ships in portrait orientation and gets rotated to landscape through config.txt — an unconventional aspect ratio that actually works beautifully for terminal work and code editors. With 170° viewing angles, the screen stays readable no matter how you're holding it or where you're sitting.
Power was one of the hardest problems to solve well. THEBRICK carries three Fenix ARB-L21-5000U 21700 lithium cells — real, high-quality batteries with built-in USB-C charging. A Pololu U3V50F5 step-up regulator converts the battery voltage to a stable 5V output, working reliably from inputs as low as 2.9V, which means the Pi keeps running until the cells are genuinely depleted. Each battery has its own ON/OFF toggle switch on the right panel and a dedicated USB-C charging port on the rear. You can run on a single cell or engage multiple for extended sessions. Plug in a charger while the device is running and it effectively becomes a UPS — no interruption, no shutdown, just keep working.
Knowing your battery state matters when you're working away from a power outlet, so THEBRICK has a dedicated monitoring system on the front panel. An Adafruit INA260 high-side current and voltage sensor feeds real-time data to a Pimoroni Tiny 2040 microcontroller, which processes the readings and pushes them to a 0.91-inch 128×32 OLED display. You can see voltage, current draw, and estimated remaining capacity at a glance without opening any software. The Tiny 2040 runs custom firmware that's straightforward to modify — change the display format, add calculated fields, or adjust the refresh rate to suit your preferences.
Connectivity and access were designed to be practical, not minimal. The right panel puts the three battery switches, a master USB-C power switch, the Pi's microSD card slot, and a full-size USB-A port all within easy reach. Additional USB ports are positioned at the top and bottom edges of the case for peripherals like flash drives, mice, or serial adapters. Three USB-C charging connectors on the rear panel let you top up each battery independently — no need to remove them or shut down. Everything is reachable, nothing requires disassembly.
The keyboard is a 5×12 ortholinear layout — 60 keys in a uniform grid with Cherry-compatible mechanical switches and QMK firmware running on a Pro Micro controller. The ortholinear layout takes a day or two to get used to, but once your fingers learn the grid, the consistency is hard to go back from. QMK gives you full control over layers, macros, and key behavior. What makes the design modular is the carrier system: the keyboard connects to the main unit through interchangeable 3D-printed carriers that transform the device into different configurations — a laptop-style Terminal, a flat Cyberdeck, or a convertible Transformer with adjustable viewing angles. All enclosure parts are printed in PLA or ASA and held together with machine screws, so anything that breaks or wears out can be reprinted and replaced in an afternoon.
Parts
| Part | Source |
|---|---|
| Raspberry Pi 4B | Raspberry Pi |
| GeeekPi Raspberry Pi 4 Aluminum Heatsink | Amazon |
| Waveshare 7.9inch Capacitive LCD IPS HDMI 400×1280 IPS Touch Screen | Amazon |
| Micro SD to Micro SD Extension Cable 15CM | Amazon |
| Fenix ARB-L21-5000U 5000 mAh battery X 3 | Fenix Tactical |
| 2 Position 3 Pin SPDT Mini Micro Toggle Switch X 4 | Amazon |
| Adafruit USB Type C Power Delivery Dummy Breakout | Adafruit |
| Pololu U3V50F5 5V Step-Up Voltage Regulator | Pololu |
| Adafruit INA260 Voltage/Current/Power Sensor | Adafruit |
| Pimoroni Tiny 2040 board | Pimoroni |
| 0.91 Inch 128x32 OLED Display | Amazon |
| High Precision Real Time Clock Module | Amazon |
| USB-A 2.0 Receptacle Connector X 4 | Digikey |
| USB-A 2.0 Plug Connector X 4 | Digikey |
| USB-C Plug Connector | From old USB-C cable |
| 2x8cm Double Sided PCB Board | Amazon |
| Battery springs small X 3 | From old equipment |
| Silicone Rubber Stranded Wire 20AWG, 28AWG | Amazon |
| #2-56 Socket Cap Screw Stainless Steel, 1/4'', 3/8'', 1/2'' | Trimcraft Aviation RC |
System & Software
/boot/cmdline.txt
Add the following to allow the SD card extension cable to work properly:
sdhci.debug_quirks2=4
Required on every boot, including fresh OS installs. Without it the filesystem on the SD card may be damaged.
/boot/config.txt
config_hdmi_boost=7
disable_overscan=1
dtparam=i2c_arm=on
dtparam=i2s=on
arm_boost=1
hdmi_group=2
hdmi_mode=87
hdmi_timings=400 0 100 10 140 1280 10 20 20 2 0 0 0 60 0 43000000 3
display_rotate=3
dtoverlay=i2c-rtc,ds3231
dtoverlay=gpio-fan,gpiopin=14,temp=60000