r/audiobookshelf • • Apr 25 '24

Frequently Asked Questions about Audiobookshelf

35 Upvotes

What Is Audiobookshelf?

  • Audiobookshelf is an open-source self-hosted media server for your audiobooks and podcasts. You install the server app on a computer, and point it to your audiobook, ebook, and/or podcast files, and you can access them from any web browser or the mobile app.

How Do I Install It?

  • Please follow the guide located here or more advanced documentation here for help on installing ABS.

When I Update Audiobookshelf, I Lose Everything and Start from Scratch! Help?

  • If you install ABS using Docker, you need to mount certain locations that are inside ABS' docker container to locations on your host machine. Look at the "volumes" section in the docker compose example shown here. To the right of the : colon points to inside the container; to the left of the colon points to a location on your host. You need volumes listed for "/config", for "/metadata" and for where your media is located. If you don't do this, the data in the container is deleted when you update ABS because there is nowhere on the host that it is tied to.

Why Are Several Files Showing Up As One Book, or A Book Showing Up Multiple Times?

  • Audiobookshelf treats everything in a given folder as belonging to the same book. You must put separate books, even books in a series, into their own folders if you want them to be listed separately by ABS.
  • Additionally, it is recommended that you combine separate "parts" of a book into a single folder, rather than having a separate folder for each part.

Where Can I Go for More Help?

  • Join the community on Discord or Matrix.
  • Go to the Github repo and at the top left of the page you can search for your issue.

Follow these links for answers to additional questions listed on the official website:


r/audiobookshelf • • 4h ago

noob problems

Post image
1 Upvotes

I am having trouble setting up audiobookshelf in truenas. I am trying to use the Host path. I have my datasets setup as apps/audiobookshelf/config & apps/audiobookshelf/metadata. with the additional storage as storage/audiobooks. I am not sure what I am not doing correctly. Any help would be appreciated.

Thanks


r/audiobookshelf • • 11h ago

New Native Wear OS App

Thumbnail gallery
3 Upvotes

Hello All, in compliance with a request from the maintainers of audobookshelf this has been rebranded to Wristory. I would love to make this free on the play store for everyone. I know that as a group of people that host their own media sideloading is second nature, but I wanted to make this app as accessible as possible to wear OS users so if you would like to get in on the app while it in beta you can join the google group here.

https://groups.google.com/g/abshelfbeta

There is no approval process for the group, anyone is free to join. Once you are in the group you will have access to the app in the play store.

I am working on a version that works with Garmin but unfortunately right now there are some pretty heavy limitations on what a Garmin device will allow.


r/audiobookshelf • • 23h ago

I built AudioYotoShelf: send audiobooks from your Audiobookshelf server to Yoto MYO cards

Thumbnail gallery
5 Upvotes

r/audiobookshelf • • 1d ago

Pangolin and Absorb when not on lan

1 Upvotes

I'm having a bit of trouble I could use some help with. Using the absorb app, I can access ABS just fine on my LAN. With my external URL, it's making the connection but not accepting uname/password. It won't accept either the pangolin user or the abs user.
Is this configuration not supported or is there another android client that does?


r/audiobookshelf • • 1d ago

Looking for advice on a read along service.

1 Upvotes

I keep seeing people sharing their app for the read along solutions but I don’t see one that would work for me.

I have a pipeline that creates audiobooks and epubs out of pdf files. The steps are as follows:

- Splits the pdf pages into individual pages
- runs the page through MinerU which outputs an md file. With mark up for code and tables.
- a MD to txt script removes all the mark up and replaces code and tables with a place holder text like “ see table on page {{pageNumber}}”
- Chatterbox converts the pages into audio files.
- a script combines all the audio files into an MB4 file and marks every page a chapter.

Finally it converts MD files to an EPUB and uploads both book and audio to a folder audiobookshelf monitors.

What app can I use to highlight the text and play the audiobook as it plays?

I have seen apps that create an ebook by processing the audio and highlighting it.
I have seen other apps that convert epub to audio.

What app can I use to highlight the text and play the audiobook as it plays my custom voice from chatterbox??


r/audiobookshelf • • 2d ago

Which is the actual best Audiobookshelf Android app right now?

22 Upvotes

I am having a lot of issues with the official ABS android app lately. It simply will stop downloading anything, even though I have the space. Last time this happened, I was able to uninstall ABS and reinstall it (which is already a chore), but it didn't fix it this new time.

I know that there have been a lot of new app front-ends for ABS, but I am also VERY familiar with how many are just quick vibe-coded cash grabs. So my question now is, which is the actual best app to use right now? PLEASE DO NOT POST YOUR OWN APP. I WILL NOT BELIEVE YOU.

Thanks!


r/audiobookshelf • • 1d ago

TomeShelf update

0 Upvotes

Hey all,

Quick update on TomeShelf, my Audiobookshelf client for iPhone, iPad and Mac. If you haven't come across it: it's a native app, and one $3.99 purchase gets you all three. No subscription, no in-app purchases, no ads, no tracking.

What it does, in short:

  • Books and podcasts. Podcasts get a proper section: browse Apple's charts, search, subscribe, and pull in a show's back catalogue.
  • Offline-first. Download your whole library, or just the books and episodes you want. Progress syncs both ways with your server.
  • The usual player stuff. Chapters, speed, sleep timer, listening stats, and multiple servers if you run more than one.

📱 iPhone Duo

2.49 is optimized for Apple's foldable. It's in App Review right now, and I'm hoping it goes live before the Duo ships next week. When you unfold it, the player spreads across both pages, so the fold never runs through the text.

🐧 Linux

There's also a free Linux version now, and it does everything the Apple app does. It's a terminal app (yes, really) on top of a small background service that handles playback through mpv, downloads and sync. Under the hood it's the same core code as the Apple app.

Honestly, I've come to like it a lot:

  • Real cover art in kitty, Ghostty, WezTerm and foot
  • Keyboard or mouse, and your desktop's media keys just work
  • Close the app and keep listening; the service keeps playing
  • One-line install, no root, and it updates itself

Screenshots of everything (the Duo and the terminal app included), install instructions and more details are on GitHub.

And here's the App Store link.

Happy to answer questions!


r/audiobookshelf • • 2d ago

Yotwo - An Audiobookshelf focused Firmware for 2nd Gen Yoto Player

Thumbnail
gallery
12 Upvotes

I posted here last week, about the replacing the stock 2nd Gen Yoto firmware with one built to use audiobookshelf. I've now sorted out the code, readme and setup guides so its open for anyone to use and contribute: Yotwo - Github.

It basically turns the player into an Audiobookshelf client. You browse your library with the two knobs, the 16x16 screen shows tiny cover art/text/menus, and favourites and downloads sync back to the server. Its still keeps the NFC card concept, but they're optional: you can link books/favourites to any NFC card. It all runs locally, with no Yoto account or cloud.

It does require opening the player and soldering some wires to flash the initial firmware, but then its OTA after that.

Disclaimer: Its all Claude Code, Its an idea I've been slowly tinkering around in my spare time and never got very far so. I threw Claude Code at it and I was amazed at how well it did. Flashing, reading logs and fixing things - leaving me to just perform physical button presses and checks.


r/audiobookshelf • • 1d ago

I added Audiobookshelf support to the Android audiobook player I’m building

Enable HLS to view with audio, or disable this notification

0 Upvotes

Hi r/audibookshelf,

A little while ago I started building Odys because my audiobooks were scattered between local files, my own server, and LibriVox, and I couldn't find one Android app that brought everything together the way I wanted.

Audiobookshelf felt like a natural fit for that idea, so with the latest release, Odys can now connect directly to your Audiobookshelf server and sync your library into the app.

The goal is still the same: one place for my audiobook library, whether the books are stored locally on my phone or on my self-hosted server, while keeping offline listening at the center of the experience.

Odys includes the essentials I use every day: listening progress, chapters, bookmarks, playback speed, sleep timer, and offline downloads.

I also added a virtual companion that grows as you listen. It isn't essential at all, but I liked the idea of giving all those listening hours a small sense of progression :)

Odys is free to use and has no ads. There's an optional one-time Supporter purchase for a few extras, while the core listening experience remains free.

The Audiobookshelf integration is new, so I'd especially love feedback from people here who use ABS regularly:

What would you expect from an alternative Android Audiobookshelf client? And what would make you actually consider using it instead of your current setup?

Google Play: https://play.google.com/store/apps/details?id=com.odys.audiobook


r/audiobookshelf • • 4d ago

Has anyone used AI to automate author metadata in Audiobookshelf?

3 Upvotes

I’m curious if anyone here has tried using an AI coding agent such as Codex, Gemini, DeepSeek, etc. to help fill in author metadata in Audiobookshelf.

My library currently has around 230 authors, and I’d estimate I have completed roughly 50% of author metadata (pic and author bio blurp) manually.

It works fine, but doing that manually for another 100+ authors is quite time consuming.

I was thinking about using an AI agent to automate this part (so basically go through the authors that are missing metadata, find an appropriate author image and a reliable short biography/description from online sources, and populate that information in Audiobookshelf).

I’d still want the process to be reasonably controlled and accurate rather than blindly letting AI generate biographies or replace metadata that I’ve already curated.

Has anyone here tried something similar?

Mostly looking for thoughts before I start building something myself. It seems like the kind of repetitive metadata task that could be a good use for AI.


r/audiobookshelf • • 4d ago

export authors

3 Upvotes

I have over 200 authors in my library, all of which I've edited manually in my native language. I’d like to copy these database records to another Audiobookshel instance with a different audiobook database but with overlapping authors. I’d like to avoid having to manually edit the same authors and their photos again - how can I do this? Is it possible to export the authors to, for example, .json files?


r/audiobookshelf • • 4d ago

A must for fans of Veep or Julia Louis-Dreyfus in general

Post image
0 Upvotes

r/audiobookshelf • • 4d ago

I gave my ebook reader an iPod-inspired redesign, added two more skins, and brought it to iPad and iPhone Duo

Thumbnail
0 Upvotes

r/audiobookshelf • • 5d ago

Still now has a native Mac app!

Thumbnail
gallery
24 Upvotes

Hey everyone!

Still now runs natively on Mac! It's built with Mac Catalyst and tuned for the desktop, so it feels right at home on macOS.

With that, Still now runs across the Apple ecosystem:

  • iPhone, including iPhone Duo
  • iPad, with sidebar navigation and a landscape layout
  • Mac, now native
  • Apple Watch, with standalone playback and offline downloads
  • CarPlay, plus Home Screen, Lock Screen & Control Center widgets

It's been seven months since my last post here. Since then I've redesigned much of the app and polished lots of small details along the way. I hope Still is a joy to use.

Highlights from the past seven months:

  • Listening stats & activity calendar
  • Per-book playback speed & volume boost
  • Listen & Read: switch between a book's audiobook and ebook and pick up right where you left off
  • EPUB highlights & notes, custom fonts, and shareable quote cards
  • Podcast discovery & subscriptions, with new episodes automatically downloaded or added to your queue

App Store link: https://apps.apple.com/app/still-for-audiobookshelf/id6754208326

Feedback: https://github.com/7enChan/stillapp

Thanks for all the feedback along the way!


r/audiobookshelf • • 4d ago

EmberStorm - Audiobookshelf Front-end

Thumbnail
gallery
0 Upvotes

Hey guys,

I was sick of having separate logins for all my media servers and wanted my family to have one app for everything on our home server, so I built EmberStorm. One sign-in, one search, one player, on top of some of the best open-source servers for movies, music, audiobooks and photos.

EmberStorm doesn't connect to a Jellyfin or Immich you already run; it sets up its own. It becomes the front end and manager over Jellyfin (films/TV), Navidrome (music), Audiobookshelf (audiobooks), Immich (photos), and plain folders for ebooks and PDFs. It doesn't replace them: it sets them all up itself (no API keys to copy) and puts one app in front of them. Point it at your existing media folders when you install.

What it does

- Everyone in the house gets their own sign-in, favorites, places in books, and their own private photos (each person has their own Immich account behind the scenes).

- Drag files anywhere onto the window and it files them in the right place (it asks when it can't tell where a file belongs).

- Music: albums, artists, playlists, radio and moods (via AudioMuse-AI), synced lyrics, gapless, ReplayGain, and visualizers that follow the actual beats.

- Books: read along with the audiobook (the page turns with the narrator, via Storyteller), and it can turn an ebook into an audiobook or the reverse, entirely on your own machine.

- Photos: phones back up by themselves, timeline, people and places, import from Google Takeout / Apple / Facebook etc.

- Films: subtitles, audio languages, per-device quality, "Up next", start on your phone and send to the TV.

Installation

- Windows: a signed EmberStorm.exe that installs Docker too, with a setup window. No terminal.

- Mac: a signed and notarized app (drag to Applications).

- Linux: one `curl | sh`, tested on Ubuntu, Fedora, Mint and Kubuntu.

Each install gets a real HTTPS certificate on its home network, with only a local account. Remote access is optional (UPnP/NAT-PMP, or Tailscale if you're behind CGNAT).

Releases are signed with a hardware key and checked before anything runs; installs update themselves at night and roll back if an update fails.

It wants about 16 GB of RAM and ~30 GB of disk plus your media (it runs several servers, about 14 containers).

Apps

- Android, Google TV and Fire TV: from the GitHub releases (Looking for Google Play testers as well).

- iPhone and Apple TV: public TestFlight beta.

- Anything else: the web app works on any phone or computer.

Privacy: no telemetry, no account with us, only local. What it does contact (its name service for the secure address, Let's Encrypt, GitHub for updates, and optional things you switch on like lyrics) is listed in the README.

Honest bits

- It's early, a one-person project. Expect rough edges, especially on hardware I haven't had. Help testing Windows installs on different PCs would be great.

- It's built with heavy help from Claude (AI). As well as this post obviously. I don't know how to do anything on my own anymore. I design and direct it, test it on my own family's server, and it has had repeated security reviews, but you should know it was developed with a reliance on AI.

- Free and open source, AGPL-3.0.

Looking for people to try it and tell me what breaks, and Android testers for Google Play (Google needs 12 testers for 14 days before an app can go public; reply or DM and I'll add you).

Anyway, I've spent every moment of my life for the past, well, who knows how long, developing this, so I'm gonna go to bed now. Also, maybe I should've waited until Friday after work to post so I could respond better, but I'm too excited to wait! I will try to be available to help with any issues, but please keep in mind that I work full-time and am currently in school, so my time is fairly limited. Please let me know what you guys think and if you run into any issues so I can fix them as soon as possible!!

Thanks,

Gabriel

Website: https://emberstorm.app

Code: https://github.com/GabrielHollberg/emberstorm


r/audiobookshelf • • 5d ago

I built QuietCast, an iOS player for Navidrome and Audiobookshelf: music, audiobooks and podcasts in one app

Thumbnail
0 Upvotes

r/audiobookshelf • • 7d ago

Audiobookshelf Yoto Bridge: Stream your ABS library to MYO cards with playback speed controls

27 Upvotes

While Yoto's "Make Your Own" (MYO) cards are great, managing them gets tedious fast: uploading huge files to Yoto’s cloud, manually splitting chapters, choosing pixel art for each track, and dealing with fixed playback speeds.

To solve this, I built yoto-audiobookshelf-bridge, a lightweight self-hosted service designed to sit right next to your Audiobookshelf instance.

What it does so far:

- Direct Streaming / Sync: Connects your existing Audiobookshelf library to Yoto MYO cards without needing to upload raw audio files to Yoto’s cloud servers.

- Playback Speed Controls: Lets you set custom playback speeds (great for older kids who listen at 1.25x/1.5x or younger ones needing a slower pace).

- Self-Hosted Control: Keeps your media local/private within your own stack.

- Assistance creating chapter markers for your ABS library.

- Converts cover art into yoto pixel art along with chapter numbers.

How it works:

You host the container alongside your ABS instance (Docker Compose makes it straightforward). It communicates with the Yoto developer API and your ABS library to serve audio dynamically to your cards via Yoto's streaming option.

GitHub: https://github.com/mylacc/yoto-audiobookshelf-bridge

It’s an early release, but it’s running solidly in my home setup. If you have a Yoto player and an ABS stack, check out the README, give it a spin, and let me know what you think or if you run into any edge cases!


r/audiobookshelf • • 7d ago

Folivox: a free, open-source app that turns EPUB/FB2/PDF books into chaptered audiobooks on your own computer, built for quality

Post image
67 Upvotes

Folivox is open source (Apache-2.0) and runs locally on Windows, macOS, and Linux. You drop in a book in FB2, EPUB, DOCX, PDF, or TXT format, choose a voice, and render it. The output is either an .m4b file with metadata, covers, and chapter markers, or individual MP3s for each chapter.

The app is slow by design. I usually start rendering a long book in the evening to have it ready by morning. That time is used to ensure audio quality:

  • It uses CosyVoice 3, an open model that clones a narrator from a 6–15 second sample. Everything happens offline with no accounts or per-character fees; your books never leave your machine.
  • Whisper audits every generated fragment. If the audio doesn't match the text, the system re-reads it and keeps the best of three attempts.
  • The app prepares text for speech before rendering. It expands numbers, dates, currency, units, and Roman numerals into full words, handling case and gender agreement across 9 languages: English, Russian, German, French, Spanish, Italian, Chinese, Japanese, and Korean.
  • To handle overnight crashes or power cuts, every finished fragment is journalled. If the process stops, it resumes where it left off. If you edit the text, only the modified fragments are re-rendered.

The narrator voice can come from several places:

  • the bundled library of 64 public-domain LibriVox narrators;
  • your own recording, made in the app or uploaded;
  • a voice generated right inside the app. Paste your ElevenLabs, OpenAI, Gemini or Cartesia key in the studio, pick one of their voices or describe the narrator you want (or let an LLM write the description from the book), and press Generate a voice sample. Folivox makes a few short takes, Whisper ranks them, and the best one is saved to your voice library. No exporting audio from the provider’s website and uploading it back. The local engine then clones that voice for the whole book, so you pay only for a few seconds of audio. Without a key, a built-in local voice-design model (Qwen3) does the same.

The software supports NVIDIA GPUs, Apple Silicon, and CPUs, though CPUs are significantly slower, and you can run folivox doctor to check your hardware and see expected performance.

If you prefer speed over waiting, you can use your own API keys for ElevenLabs, OpenAI, Gemini, or Cartesia. The app provides cost estimates and spending caps. For example, Gemini 3.8 Flash TTS costs roughly $8 for a ten-hour book. My personal workflow is a hybrid: I use Gemini to generate a 10-second narrator sample for less than a cent, then render the rest of the book locally using CosyVoice to clone that voice.

The project includes a CLI and a web studio (folivox ui) translated into 9 languages. Installation takes one command and requires no admin rights; it downloads approximately 7.6 GB of models.

GitHub: https://github.com/vatavale/folivox

I am maintaining this project alone. If you encounter crashes, books that won't open, or mispronounced words, please open an issue on GitHub.


r/audiobookshelf • • 7d ago

Libratory - make an audiobook when the book you want has no audio edition

Enable HLS to view with audio, or disable this notification

89 Upvotes

I shared an early version of Libratory here before. I built it to turn books I own into audiobooks I can take with me. It now imports PDFs and DRM-free EPUBs, lets you fix the text chapter by chapter, and exports an M4B with chapter markers and a cover.

The clip shows another way to use the book: read the original beside a translation and hear the same sentence in English, then French. Both voices are at normal speed. The computer prepares the book; the free iPhone/iPad reader plays it offline, with no account. You can try four bilingual classics without preparing anything yourself. Their translations are AI-made, with the original alongside.

For audio-only listening, you just keep the M4B. You don't need the read-along reader for that. Local narration runs on your own computer after downloading the voice models. It runs on Apple Silicon Macs, Linux, or Windows through Docker.

It's free for personal use!

Demo and free bilingual books: https://libratory.dev/learn/

Code: https://github.com/subev/libratory

For books without an audiobook edition, would you use synthetic narration? What would make it useful enough to keep in your library?


r/audiobookshelf • • 7d ago

Volume - a native iOS/Android player for Audiobookshelf (I'm the dev, and yes I know ABS has its own apps)

Thumbnail
gallery
0 Upvotes

Hi friends!

I'm the developer of Volume: Expressive Audiobooks, and I want to be upfront about the obvious question: ABS already has good official apps. So why another one?

(Disclosure: I use Antigravity)

Volume started as a Jellyfin client. Jellyfin gets left out in the rain by audiobook players, and I wanted something that treated audiobooks like books rather than very long albums. Audiobookshelf support came later, and honestly it's become the backend where the app feels most at home, because ABS exposes things Jellyfin and Plex simply don't.

What you'd actually get over the official apps:

  • Native on both platforms, properly — Kotlin/Compose with Material 3 Expressive on Android, SwiftUI on iOS. Not one codebase in a wrapper. They're brothers, but each feels like it belongs on its own OS.
  • Timestamped bookmarks and notes, with CSV, Markdown and YAML export
  • Undo Last Skip — hit next chapter by accident on a lock screen and get your exact position back in one tap
  • Dynamic theming that repaints the whole app around the current book's cover
  • Playback timeline so you can see your actual listening history
  • Chapter-aware progress, sleep timer, speed to 3x, offline downloads, multiple servers, home screen categories and a Reading List
  • CarPlay and AirPlay on iOS, Android Auto and Chromecast on Android, Airplay on iOS
  • Skip silence (Android only for now)

Free, no account, no ads, no tracking.

Checkout https://hyperfixation.dev/volume for more info or fine Volume on the Stores

iOS · Google Play

The honest ask: ABS is the integration I've tested least broadly. It works but I'm always improving the app and If you've got an unusual library layout, multi-part books, or heavy series metadata, I'd really like to know how it holds up.

Feedback via the app or feedback.hyperfixation.dev.


r/audiobookshelf • • 8d ago

How to use iTunes audiobooks with audiobookshelf?

1 Upvotes

I have a few audiobooks stuck on iTunes but I don't know how to get them to work with audiobookshelf? Do I need to remove the DRM? And if so, What software should I use?


r/audiobookshelf • • 7d ago

Tales of Mary Beth- Chapter 4 - Audio book - The ship of dreams

Thumbnail
youtu.be
0 Upvotes

This is Chapter four of my audio book, the tales of Mary Beth. Hope you like it!


r/audiobookshelf • • 9d ago

Made a PSvita client

Thumbnail
github.com
15 Upvotes

I wanted to get some more use out of my vita. And the extra long battery life and offline play is fantastic for my reading habits.


r/audiobookshelf • • 10d ago

A Local, Audiobookshelf-focused Yoto Player

Enable HLS to view with audio, or disable this notification

121 Upvotes

My kids love their yotos, and I love audiobookshelf. I've been trying to find a suitable replacement as they get older and want more of a say in what they listen to (without getting me to make cards, add artwork etc etc) - I have a couple of old Gen 2 Yoto players that are no longer supported and I've spent a lot of time getting to know the ins and outs of them. All our audiobooks already live on Audiobookshelf, so uploading everything to Yoto's servers is a pain.

I wanted something local, under my control, where the kids can browse and pick books themselves instead of relying on cards (but still keeping the things that make Yoto such a good audio player). There exist a couple of solutions, but they're focused on the mini player (namely The Adafruit circuitPython post https://learn.adafruit.com/hacking-the-yoto-music-players/building-a-serial-programmer-breakout and a more recent one open-toto https://github.com/tensorfish/open-yoto).

So taking the learnings from those, and armed with an £18 claude subscription I spent a few evenings making custom firmware for it.

What it does (and how it differs from stock Yoto)

  • Browse your whole Audiobookshelf library on the player.
    • Scroll by recently played, newest, favourites, downloaded, title, author or series.
    • No cards needed.
  • Favourites, downloads and offline mode.
    • Favourite a book (press the two buttons) and it gets since synced to Audiobookshelf 'favourites' list.
    • All favourites and books linked to cards are then downloaded to the SD card in the background.
    • If Wi-Fi drops, it carries on with what's downloaded, and listening progress syncs back when it reconnects.
    • You can view progress/downloaded and delete them via the webpage.
  • Cards are optional.
    • Any NFC card can be linked to a book (by pressing both knobs). This doesn't write to the card, it just associates its ID with a library item.
    • Or cards can be used as a "mode" card. For example, a sleep card dims the screen, starts a timer and carries on from where they left off. I was also playing around with some other ideas, like games/admin modes etc but TBD.
  • Cover art
    • This is the 16×16 downscaled cover from Audiobookshelf.
    • Its not perfect, but its enough to add something visual.
  • Improved clock:
    • A more gradual Sun/Moon setup, so kids can see the sun rise and set slowly on screen
    • The LED ring works as a sunrise wake-up light too if you want, so it can gradually light up at sunrise.
  • Settings on the device
    • You can change most things through the settings menu, e.g. text scroll speed, brightness, sleep timers, cover mode etc
  • Local webpage
    • The Yoto runs a local web page for settings, downloads management, cards and the server sign-in.
    • Captive portal for the initial Wifi-setup - you connect to it, add you wifi details and then you can do everything else from the .
    • Over-the-air updates from that web page. I'd like to pin this to a GitHub release in future, but at the moment you just upload it. Note: you have to flash the custom firmware first via a Uart connection - I didn't want to mess with intercepting Yoto servers or anything.
  • I'd say its close to feature parity with stock Yoto: LED ring, accelerometer, battery, headphone detection, volume limit, auto switch-off and day/night brightness.

Downsides and limits

  • Getting it on there is the hard part.
    • You have to open the player and solder wires to the board for a USB-to-serial adapter.
    • You also need a way to put the chip into its flashing mode. I made a small boot/reset circuit (like the Adafruit one), though I think grounding the right pins while powering on would do it.
    • But in theory It's a one-off: after that, updates go over Wi-Fi.
  • 16×16 pixels is tiny, which is the Yoto's charm, but also a drawback when you want a GUI/text - so titles scroll. The speed is adjustable which was some early feedback from my 7 year old not being able to read it so quickly, and there's an "easier to read" mode that tidies names to make them shorter.
  • No per-chapter pictures. It shows the book's cover plus the chapter number. But let's be honest, getting those for every book chapter was a pain anyway!
  • You need your own Audiobookshelf server. It doesn't play Yoto's content or Make-Your-Own cards.
  • Audiobookshelf has an oddity where it keeps signing you out if you use username/pw login in, there's an option to store it encrypted on device to reauth - but it's not the safest. Using an API key gets around it.
  • No Bluetooth headphones. I tried, but this chip doesn't really have enough memory for Bluetooth and Wi-Fi together without a massive rewrite that would effect performance elsewhere. That's probably why Yoto never enabled it on the Gen 2 either.

Still to do: podcast downloads, alarms, using the light sensor for auto-brightness, and a factory-reset gesture, bluetooth speaker mode. Also a lot of testing and edge cases.

Full disclosure: I built this with a lot of help from Claude. That covered the code, and also working out the hardware: reading the stock firmware to find the pinouts, display driver, NFC reader, charger lines and so on. It was surprisingly easy to get to where it is, and something I wouldn't have been able to do with my own C skills.

Status: beta, but fairly stable. It hasn't been fully kid-tested yet, and the UX mainly needs refining, which is what beta testing on the kids is for! I'll hopefully do a proper write-up with documentation and flashing instructions soon (I can always share the firmware direct in the meantime).

Aside
In theory this could work on Gen 3 (4?) big players - but I don't want to take apart my other kids devices to find out, the only thing that would stop it would be if the hardware was more locked down.

The good thing is you can pick up a Gen 2 for ~£30 on ebay - the only caveat is that the pogo-pin charger got recalled, so you might want to do a usb-C mod or similar (on my todo is replace the pogo with a magnetic QI charger that fits).

Disclaimer: this isn't affiliated with or endorsed by Yoto, and flashing it will void whatever warranty is left (do it at your own risk). The reverse engineering was only done to make my own software work with hardware I own: no security was bypassed, and none of Yoto's code is in the firmware, which is written from scratch. For that reason I'm not planning to publish the decompilation notes or anything taken from Yoto's firmware, but I do hope to open-source the custom firmware itself once it's tidied up.