The Survivalist / the deck Digestif · La Carte

The Survivalist

A sealed box that carries a library, listens to the spectrum, runs on sunlight and answers to any screen that comes near it.

BATT 13.1V 54% SSID deck-01 10.42.0.1 KIWIX ok TILES ok SDR idle MESH 3 nodes last 07:12 next wake 18:00 uptime 41m 7.5" e-paper 800x480 wake PANEL / CONNECTOR BANK SMA hf/vhf SMA 868 USB-C x2 12V in gore vent 372 mm internal 258 mm Peli 1450 / lid 152 mm deep. Drawing indicative, not to scale.
Front elevation. Lid carries the e-paper panel, base carries the keyboard and the sealed connector bank. Nothing leaves the case except through a bulkhead.
compute
Pi 5, 8 GB
library
1 TB offline
radio
RX + 868 mesh
power
solar, 256 Wh
Route one Build the deck Drawings, power budget, parts list. Slower and dearer than buying a tablet, and that is discussed on the way in. ≈ 1085 € Route two Take the archive The whole offline library, with links and sizes. Runs on any laptop with a spare drive. free, ~150 GB

Three steps down one staircase: read the archive online, keep a copy on a drive, or put the copy in a box that makes its own power. Most people stop at the first step, and that is fine.

The cheap way first

Before the drawings, the thing nobody selling a cyberdeck tells you.

A decent tablet in a dry bag does most of this. The Kiwix app reads the same archives from an SD card and can serve them over Wi-Fi to other devices, which is the deck's supposed trick. A mesh node talks to a phone over Bluetooth, which is how most people run one anyway. An SDR dongle works over USB-OTG. The screen is better, the battery lasts days at reading loads, and it charges from any power bank or a panel with a USB socket, with no 12 V rail, no charge controller and no bulkhead connectors.

ApproachWhat you getCostEffort
Tablet, 1 TB card, dry bagthe whole archive, in your hand~350 €an evening
Same, plus mesh node, SDR and a paneleverything the deck does, personally~600 €a weekend
This decka fixed appliance that serves a group~1085 €weeks

So why build the box

That is a narrow case, and it is not survival. It is "this thing lives somewhere and does a job". If your honest need is offline reference for yourself, buy the bag, take route two and skip the rest of this page without guilt.

The remaining reason is the one this menu was built on: everything here is built, not bought. That is a legitimate reason to spend a weekend, and a bad reason to claim the result is optimal.

Route one: what it has to do

Four rules that settle every later argument.

Inside

The battery sets the case size. Everything else fits around it.

LiFePO4 12.8 V / 20 Ah 256 Wh 181 x 77 x 167 mm the reason the case is a 1450 and not a 1200 MPPT solar in 12 -> 5 V 5 A buck Raspberry Pi 5 85 x 56 mm + active cooler M.2 HAT+ / NVMe 1 TB corpus ESP32-S3 supervisor holds the 5 V rail, wakes the Pi, reads pack voltage, draws the e-paper while the Pi sleeps RTL-SDR V4 dongle 500 kHz to 1.766 GHz receive only RAK4631 nRF52840 SX1262 / 868 Meshtastic < 30 uA asleep
Base plan. The supervisor is the piece that makes solar work: the Pi is off most of the time and the deck still shows you where it stands.

Power

Berlin, 52°N. The honest version.

A Pi 5 with an NVMe drive and a dongle awake pulls about 9 W. The supervisor and the e-paper together sit near 0.1 W and can hold the display indefinitely. So the whole question is how many minutes a day the Pi is allowed to be awake.

100 W panel MPPT LiFePO4 256 Wh 5 V buck Pi 5 9 W awake supervisor 0.1 W always holds the rail any browser
One rail, two consumers. Sunlight fills the pack, the pack feeds a 5 V rail, the supervisor decides when the Pi is allowed to drink from it.
energy per day—
panel for June—
panel for March—
panel for December—
dark days on battery—

Assumes 9 W awake, 0.1 W standby, 79% end-to-end conversion and a 0.75 derate on the panel. Berlin daily irradiation taken as 4.9 / 2.6 / 0.6 peak sun hours. December is an average across a month that contains genuinely black weeks, which is what the autonomy figure is for.

Bill of materials

EU retail including VAT, September 2026. Indicative only: board and storage prices have moved sharply this year and stock comes and goes. Check every line before ordering.

PartNote€
Raspberry Pi 5, 8 GBten euros over the 4 GB, so take the 8185
Active cooler + RTC cell12
M.2 HAT+ (M key)2230/2242 only, see below15
1 TB NVMeNAND is expensive this year153
RTL-SDR Blog V4 + dipole kit65
RAK WisBlock, EU868RAK19007 + RAK463140
Waveshare 7.5" e-paper HAT800×480, 38 mW to refresh65
ESP32-S3 supervisor boardsame family as Einkster25
LiFePO4 12.8 V 20 Ah85
MPPT controller40
100 W folding panel110
12 → 5 V buck, 5 A15
Peli 1450 casesized by the battery180
Sealed keyboard + trackball50
Bulkheads, glands, vent, wiring45
Full build1085
Lean build512 GB, rigid panel, non-Peli case860

Two traps in that list

The official M.2 HAT+ takes 2230 and 2242 drives only. Most 1 TB sticks sold are 2280, so either buy a 2242 drive or swap the HAT for a Pimoroni NVMe Base, which accepts the long ones.

And the V4 dongle reaches HF through a built-in upconverter rather than the direct sampling the V3 used. Same result on the band, different setting in the software.

Route two: the archive

No hardware required. A drive, a free reader, an afternoon of downloading.

This is the half that does the work. Everything below is openly licensed, fetched over plain HTTP and readable offline forever after. Kiwix packs whole websites into single .zim files; kiwix-serve turns a folder of them into a local website that any browser on the network can open.

The core set

The archive name downloads the file. open reads the same archive online, on Kiwix's servers, with nothing stored locally. Try it there first and download only what you would miss.

ArchiveWhySizeRead—
Wikipedia EN, no picturesevery article, half the drive49 GBopen
Wikipedia EN, fullimages included, if you have room119 GBopen
Wikipedia EN, minilead paragraphs, fits a phone13 GBopen
Wikipedia DE, fullthe local language, locally49 GBopen
Wikipedia FR, fullthe other home language55 GBopen
Wikipedia EN, medicinethe one that matters at 3 a.m.2.1 GBopen
Wikipedia EN, computingfixing the thing you are reading on868 MBopen
Wikipedia EN, knotsa whole archive, just knots18 MBopen
iFixit, WikiHow, Wiktionaryrepair, method, language~12 GB—
Project Gutenbergsomething to read afterwards~75 GBopen
Berlin map extractoffline maps and routing~90 MB—
Brandenburg extracteverything past the ring~450 MB—
Curated setno-pictures EN, full DE, topicals, maps~150 GB

Kiwix filenames carry their dump date and disappear when superseded. If a link 404s, open the archive index or library.kiwix.org and take the newest file with the same name stem.

Worth adding

Pull it down

mkdir -p ~/archive && cd ~/archive

# -c resumes; these are big files and your connection will drop
wget -c https://lb.download.kiwix.org/zim/wikipedia/wikipedia_en_all_nopic_2026-06.zim
wget -c https://lb.download.kiwix.org/zim/wikipedia/wikipedia_de_all_maxi_2026-01.zim
wget -c https://lb.download.kiwix.org/zim/wikipedia/wikipedia_en_medicine_maxi_2026-04.zim
wget -c https://download.geofabrik.de/europe/germany/berlin-latest.osm.pbf

Read it

# one folder becomes a local website on port 8080
kiwix-serve --port 8080 ~/archive/*.zim

Reader and server binaries for every platform are at kiwix.org. Point a phone at the machine's address and the whole library is there, no account, no connection. The .osm.pbf files load into Organic Maps or OsmAnd for offline navigation.

On the deck this same folder sits on the NVMe drive and the box serves it over its own Wi-Fi. On a laptop it is a folder. The archive does not know the difference.

Still open

Whether the keyboard lives inside the lid or clips on, which would shrink the case again. Whether the supervisor also drives a small always-on GPS fix. And whether the deck should mount the Radzeugnis and Radfunk! tile stacks as first-class services or just serve them as files.