A relatively underwhelming ARM development board to begin with that was upgraded to a very reasonably performing quad-core CPU in February 2015 and got built-in Wi-Fi in February 2016, and which eventually gave its name to an entire family of devices, from the Pi Pico to aarch64
boards.
Resources
Category | Date | Link | Notes |
---|---|---|---|
Development | 2012 | pi3d | A simple wrapper atop the OpenGLES libraries that have been floating around |
2019 | dockerpi | a Docker image using QEMU to boot a Raspbian environment on Intel machines |
|
Education | 2020 | PiNet | A boot server and management solution for classrooms |
Emulation | 2012 | Emulator binaries | prebuilt MAME, MESS, etc |
2013 | Chameleon | An impressive emulator bundle |
|
Firmware | 2016 | rpi-open-firmware | Open source VPU firmware |
GUI | 2022 | slint | a GUI toolkit that can run in MCUs like the Pi pico and the ESP32 |
Graphics | 2012 | pyopengles | Uses the EGL and OpenGLES libraries to draw 3d graphics from inside Python with hardware acceleration. |
2020 | epaper.js | an ePaper display control hack that converts HTML to a monochrome PNG |
|
2021 | lazycast | a Miracast server for the Pi |
|
Hardware | Piunora | A tiny-but-mighty open-source carrier board for the Raspberry Pi CM4 |
|
Media | 2013 | RasPlex | A nicely packaged Plex front-end |
Music | 2019 | Orac | a modular synth engine |
Networking | 2023 | pihole-readonly-rootfs | a read-only setup to run Pi-Hole |
2024 | pifi-openwrt-raspberry-pi | an OpenWRT-based project to quickly turn a Pi into a powerful travel router. |
|
Operating Systems | 2013 | Moebius | A cut-down version of Raspbian with minimal footprint |
2014 | inferno-rpi | A native port of the Inferno OS |
|
2015 | resinOS | A Docker-centric distro for embedded devices |
|
2018 | interim | a minimalist operating system with a LISP shell |
|
gokrazy | A minimal Go userland for the Pi 3 (aarch64) |
||
2020 | Elementary OS | Unofficial builds of Elementary for the Raspberry Pi 4 |
|
2021 | Chromium OS Builds | ||
Writing a bare metal operating system for Raspberry Pi 4 | Very comprehensive. May be enough to bootstrap things like Inferno or the Java HaikuVM on it. |
||
circle | A C++ bare metal environment |
||
a C++ bare metal programming environment for the Raspberry Pi |
|||
hello system | a Mac-like BSD desktop environment that also runs on the Pi (no installation images, though) |
||
2022 | DietPi | An optimized Debian distribution with lower resource usage and support for other SBCs |
|
2023 | arm-tutorial-rpi | a tutorial on bare metal programming for the Raspberry Pi |
|
Photography | 2018 | A Guide to Recording 660FPS Video On A $6 Raspberry Pi Camera | |
Reference | 2012 | Using OpenGL ES 2.0 on the Raspberry Pi without X windows | The first coherent summary I came across |
Qt on Raspberry Pi | Notes on installing QtonPi |
||
Setting up Scratchbox2 and QEMU | A good guide almost unbearably spoiled by screenshots of text instead of commands you can easily copy and paste to a console. Useful, but infuriating. |
||
2020 | Read-Only Raspberry Pi | Adafruit’s notes on configuring jessie for a read-only filesystem |
|
Jeff Geerling's notes on USB boot and TRIM | Useful to enable TRIM on external SSDs |
||
2021 | Rolling your own minimal embedded Linux for the Raspberry Pi | Includes notes on audio and X setup. Has a few omissions (ignores the read-only overlay filesystem). |
|
2024 | extreme-pi-boot-optimization | optimizing boot processes and energy consumption for a solar-powered camera. |
|
References | 2012 | Raspberry Pi Tuning | Notes on removing most of the gunk in the standard distro |
Software | 2014 | PiWall | A simple videowall solution |
dispmanx_vnc | A VNC server that shares your the framebuffer |
||
Thin Clients | 2015 | PiNet | A Linux-centric thin-client solution for classrooms |
WTware | A Windows/Remote Desktop oriented thin-client distro |
||
Tools | 2012 | Debian Lenny and Squeeze armel images for QEMU | I’ve used these for a while now, and they’re quite useful for testing (even if compiling is dog slow). |
rpi-update | a simple firmware updater |
||
2024 | RaspberryPi_WebRTC | a low-latency home security camera using a Raspberry Pi and WebRTC |
|
pi-ci | a virtual machine setup for creating Pi 3, 4 & 5 configurations |
||
USB | 2022 | bt2usbhid | a way to use your Bluetooth peripherals with another computer using a Raspberry Pi as a converter |
Video | 2021 | showmewebcam | a prebuilt image that uses uvc-gadget to turn a Pi into a USB web cam with extensive configuration options |
piwebcam | a prebuilt image that supports motion detection and image analysis |
Survival Tips
Use vnc4server
, not tightvncserver
If you’re using an older version of Raspbian and want to access your board via VNC, you should grab a copy of the vnc4server
sources from Ubuntu and rebuild it on the Pi. vnc4server
has much less latency and performs much better overall, at least for my use cases:
# on a Ubuntu box
$ mkdir tmp; cd tmp
$ apt-get source vnc4server
# find the source tree and rsync it across to the Pi
# ...time passes...
# on the Pi, cd into the source tree and do:
$ debuild -us -uc
# ...a lot of time passes...
$ cd ..; sudo apt-get install xbase-clients x11-apps; sudo dpkg -i vnc4server*.deb