Turn a Maclock (a simple alarm clock inside a shockingly accurate miniature Macintosh shell) into a working Mac using a Raspberry Pi Zero. Buttons, brightness, sound, and battery all work.
Tip
Did you find my work useful? Your support helps fund future projects. Thank you!
- Maclock
- Raspberry Pi Zero 2 W
- Waveshare 2.8 inch IPS LCD
- Adafruit PAM8302 audio amp + small speaker
- 3D printed screen bezel
- Macintosh Mini breakout board (if you want brightness, buttons, and sound). Here's a cart on PCBway to order your own.
- MicroUSB to USB-A female cable (if you want to add a USB port to the back) - Choose
Color: OTGV8DO-AFH
- Follow the Maclock hardware guide for instructions for assembling the Macintosh Mini.
I recorded a walkthrough video for how I assembled mine that goes into much more detail than the written guide:
-
Install Raspberry Pi OS (lite) 64-bit onto an SD card.
-
Copy over a Mac OS disk image and a ROM file — the installer auto-discovers them in
$HOME. It offers two emulators (it defaults to Basilisk II):- Basilisk II — a 68k Mac running System 7.0-8.5. On the Pi Zero 2 W this is the fastest option. Needs a 512 KB or 1 MB 68k ROM (Mac IIci / Quadra, try searching online for
064DC91D) and a disk image. - SheepShaver — if you need PowerPC running Mac OS 8.1+. Needs the 4 MB PowerPC ROM and a disk image. Choose this only if you need PPC-era software as it's very slow on a Pi Zero.
Rename your ROM file
ROM(no file extension)Disk images are readily available online, but I recommend the BlueSCSI image library.
Disk images that work: any raw hard-disk image —
.hda,.img,.dsk,.hfv,.vhd(the extension doesn't matter) — and Apple.sparsebundle. Don't work:.dmg,.image/.smi,.toast, or files still zipped (.zip/.sit).scp ROM yourdisk.hda <user>@<pi_ip>:~/
- Basilisk II — a 68k Mac running System 7.0-8.5. On the Pi Zero 2 W this is the fastest option. Needs a 512 KB or 1 MB 68k ROM (Mac IIci / Quadra, try searching online for
-
SSH into the Pi and run:
curl -fsSL https://raw.githubusercontent.com/wr/macintosh-mini/main/setup.sh | bash -
The script will reboot your Pi when done, and it should Just Work™️
Once installed the Pi boots straight into the Mac. A few controls:
- Reset button (GPIO 26): a single press restarts the emulator; a double press quits to a Pi shell prompt.
- Shut Down from inside Mac OS (Special → Shut Down) quits to the Pi prompt; Restart reboots the Mac in place; a crash auto-reboots.
macintosh— run this from the prompt to boot the Mac again.- Networking works out of the box (slirp NAT). In the Mac, set TCP/IP to DHCP.
Re-run the installer any time to update an existing install — it keeps your disk image and settings. To switch emulator, pick the other one (Basilisk II ⇄ SheepShaver); each core's prefs are preserved.
You can also do everything the script does by yourself:
Getting help
Feel free to open a GitHub issue!
Credits
Startup chimes and crash sounds are mirrored from D. Schaub's Apple Sounds collection at https://froods.ca/~dschaub/sound.html. All sounds are © Apple, Inc.
Copyright © 2026 Wells Riley. The maclock-pcb/ PCB design is licensed under CC BY-NC-SA 4.0. The rest of the repository is published as-is for personal, non-commercial use.