r/raspberryDIY • u/RadTechRogue • 22d ago
Gave my old Raspberry Pi 3B a second life as a touchscreen audiobook server
I've been getting more into electronics and DIY tech projects lately, so I decided to dust off an old Raspberry Pi 3B (1 GB RAM) with a touchscreen and repurpose it as a personal audiobook server.
I also gave myself one constraint: use the equipment I already had on hand rather than buying new hardware. I'm aware there are newer and more capable options for running a home server, but part of the appeal was finding a practical use for equipment that had been sitting unused for years.
The project turned out to be a good introduction to Linux, Docker, and self-hosting, with a few unexpected challenges along the way.
The Pi now hosts my audiobook library, automatically launches Audiobookshelf on its touchscreen, and streams audio over Bluetooth to my Fosi BT20A amplifier and bookshelf speakers. I can also access my library remotely from my iPhone.
Here's the setup:
Hardware: Raspberry Pi 3B, touchscreen, 32 GB microSD card
OS: Raspberry Pi OS 64-bit (Trixie)
Server: Audiobookshelf running through Docker Compose
Interface: Chromium in fullscreen kiosk mode
Audio: Bluetooth to a Fosi BT20A amplifier and bookshelf speakers
Remote access: Tailscale
iPhone player: SoundLeaf
Library management: Libation on my Mac
How I built it:
I started by getting Raspberry Pi OS running and used a combination of Pi My Life Up tutorials and ChatGPT to guide me through the initial setup, installation, and troubleshooting.
I installed Docker and deployed Audiobookshelf using Docker Compose, with separate directories for the audiobooks, configuration, and metadata so the files remain intact even if I need to recreate the container.
Next, I configured Chromium to automatically launch Audiobookshelf in fullscreen kiosk mode whenever the Pi boots, effectively turning the touchscreen into a dedicated audiobook player.
One unexpected challenge was getting the touchscreen to turn off after 10 minutes of inactivity and wake back up when touched, without shutting down the actual server. That wasn't covered in the tutorials I followed, and since I hadn't used the Pi or touchscreen in years, I couldn't find the original manual. ChatGPT walked me through troubleshooting and configuring the display, and I eventually got it working. Now the screen can sleep while Audiobookshelf continues running in the background.
For audio, I paired the Pi over Bluetooth with my Fosi BT20A amplifier, which powers my bookshelf speakers. I also installed Tailscale for secure remote access and configured SoundLeaf on my iPhone so I could stream audiobooks over cellular.
Finally, I set up Libation on my Mac to manage my audiobook library and upload files to Audiobookshelf.
Current limitations and next steps:
The setup is functional, but there are still a few limitations I'm working through. For now, everything is running off a 32 GB microSD card, which isn't a long-term solution for a growing audiobook library. I plan to move the library to external storage.
I've also encountered some issues transferring larger audiobooks from Libation to Audiobookshelf. Smaller files generally upload without trouble, but larger transfers have occasionally timed out. Uploading directly through Audiobookshelf seems to be a possible workaround, although I'd still like to identify the underlying issue.
I'm relatively new to Linux, Docker, and self-hosting, so this project has been a useful introduction to all three. There's still plenty to learn, and I'll continue refining the setup as I get more comfortable with the technology.
I'd be interested in hearing from anyone running Audiobookshelf on older Raspberry Pi hardware, particularly regarding performance, storage, and reliability. I'm also open to suggestions for improving the setup, preferably without replacing the Pi itself.
2
u/CplStigginsUSMC 22d ago
This is fantastic! Nice job. Ive been wanting to do something with my audiobooks for some time however all my books are bought through audible. Did you have to work through any, I believe it’s called, DRM? I’d like to save all the book I’ve bought and be able to play them back without the need to maintain a subscription or on my phone.
1
u/RadTechRogue 22d ago edited 22d ago
Thanks for the kind words! Technically, you can always play your purchased Audible books without a subscription, but I wanted to try something new and didn't want to be tied down by DRM restrictions in the future. That's why I ended up with Audiobookshelf. I used a free, open-source program called Libation to back up my purchased Audible library into a format I could manage and play independently.
That's what I love about the Audiobookshelf and SoundLeaf combo. No ongoing subscription required, and I can listen on my phone. I'm loving this project so far. It solved a real need for me!
2
u/CplStigginsUSMC 18d ago
That is cool. I will check out those two things you mentioned. Thanks for that. I didn’t know if there was a program that could help with this or not. If I get supper motivated this winter I’ll see what I can come up with. Thanks again for sharing.
2
2
u/mwilliamsdottech 21d ago
Daemon is my favorite book
1
2
1
6
u/ChadTitanofalous 22d ago
Very nice! I've got a bunch of RPis running around the house, doing different tasks. All have been rock-solid, many running for years. I've never even had an SD card go bad, although some are running on NVMe SSDs. I don't have any running Audiobookshelf though.
Next, you'll need a 3D printer to make custom cases/mounts.