SendspinZero turns a ten dollar ESP32 board into a synced audio receiver for your amplifier
Sendspin Audio Receiver for your Stereo/Amplifier
At a glance
- What is it?
- SendspinZero is a DIY firmware and hardware project that turns an ESP32-S3 Zero into a Sendspin media player for Home Assistant, with cover art, a weather clock and nine build variants. It is a soldering project with a browser flash workflow, not a ready-made product.
- Who is it for?
- SendspinZero fits a maker who already has an amplifier and speakers, is comfortable with a soldering iron, and wants a Sendspin receiver with a small screen for cover art and a clock rather than another speaker.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 5 days ago.
- What is it written in?
- GitHub does not report a main language for this repository.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
A receiver for an amplifier, not another speaker
SendspinZero is presented as a minimalistic Sendspin media player for Home Assistant, and the device description calls it a Sendspin audio receiver for your stereo or amplifier. The distinction from a speaker matters, because it changes the parts list and the wiring.
The project turns a small inexpensive ESP32 board into a compact audio receiver for your amplifier, capable of multi-room audio in sync, with a screen for album art, the song and the artist, and a weather clock when nothing is playing. It can also be built with a single button to control it, or with nothing at all so that you can hide it behind the television or the stereo.
The origin story in the README explains the design decisions. It started as an experiment to see whether the ESP32-S3 Zero would work with Sendspin, and the reason it might work is that the board has 2 MB of PSRAM. Once that worked, the author asked why build yet another Sendspin speaker instead of a tiny receiver for an amplifier.
So the audience is a Home Assistant user with a stereo or amplifier, not a general electronics hobbyist. Sendspin is the multi-room sync protocol, and this firmware speaks it well enough to join your existing speakers in a group.
Nine variants from one firmware family
The build matrix is small and explicit. Each version can be built with one of three hardware options, display, no display, or big button, and the README states that this gives a total of 9 variants.
The firmware installers are published as web pages, one per configuration, under realdeco.github.io/SendspinZero. The naming makes the matrix readable: Sendspin Zero Button Analog, Sendspin Zero Button Digital, Sendspin Zero Display Analog, Sendspin Zero Display Digital, Sendspin Zero No Display Analog, Sendspin Zero No Display Digital, Sendspin Zero Control Analog, Sendspin Zero Control Digital, and Sendspin Zero Display plus Button Analog.
Two additional builds appear alongside the receiver matrix. SendspinZero Speaker and Sendspin Supermini Headphones have their own installer pages, which tells you the firmware and the configuration files travel with more than just the amplifier receiver.
The analog and digital suffix is the one piece of the matrix the README does not explain in prose. The table of contents of the README stops before the pin mapping detail is complete, so if you are choosing between the analog and digital builds, the difference is something you will have to read in the configuration files or the wiring diagram rather than in the description.
The practical upshot is that picking a variant is a two-part decision: hardware options first, then the installer page for that exact combination.
The MAX98357 amplifier chip gave way to a PCM5102A DAC
The hardware change that turns a speaker into a receiver is described in the About the Project section. The author replaced the MAX98357 with a PCM5102A DAC, designed a custom case, and added a display for cover art and a weather clock.
The MAX98357 is a class D amplifier chip, which is what you would use to drive a speaker directly. A PCM5102A is a DAC, a digital to analogue converter, which produces a line level signal you feed into an amplifier. That is exactly the difference between this project and a speaker, and it is why the parts list is short and cheap.
The parts list has three entries. One ESP32-S3 Zero board, one PCM5102A DAC, and one 1.54 inch LCD screen, each with a direct AliExpress link. There is one important warning attached to the board: be sure you select esp32-s3, not esp32-c3 which the page defaults to. That kind of note is the signature of a project that has been built by its author and then documented from experience rather than from a schematic.
The pin mapping section in the README starts to assign the ESP32-S3 GPIO pins to the DAC pins, with GPIO4 going to LRCK and GPIO5 to BCK, and the mapping continues beyond that point. The full pin assignment lives in the wiring diagram image and in the configuration files rather than in the text.
The assembly notes prevent a teardown
The Assembly Notes section is short and saves real work. If you plan to mount everything inside the case, do not solder header pins to the DAC, the ESP32, or the display; solder wires directly to the boards instead, otherwise they will not fit.
That is a constraint on assembly order, not a preference. A project that arrives with pre-soldered headers cannot be closed up, so the choice is between a tidy case and a wall of loose wires, and the project picks the case.
The second note handles displays that already have pins: you may need to bend two pins slightly to make room for the audio jack. This is the kind of detail that only appears in a project somebody has actually assembled more than once.
The case itself is part of the repository, since a 3D_Files directory sits at the root alongside the configuration files. That is worth noting for anyone evaluating the build: you are not only flashing firmware, you are printing a case, or at least the option exists to print one.
The cost figure is the last number worth repeating. The README says all parts were sourced from AliExpress and added up to just over 10 dollars, as last checked. That excludes the amplifier, the speakers, the soldering equipment and the printer time, so treat it as the cost of the electronics, not the cost of the project.
Flashing happens in the browser, one installer per variant
The firmware installers are hosted web pages, and each configuration in the README links to its own installer under the SendspinZero path, with a button labelled flash firmware. The URLs follow a predictable pattern, for example the Button Analog build at realdeco.github.io/SendspinZero/Sendspin_Zero-Button-Analog/ and the Display Digital build at realdeco.github.io/SendspinZero/Sendspin_Zero-Display-Digital/.
Each of those pages offers a button labelled flash firmware, so the flashing happens from a browser rather than from a command line tool on your workstation. The README does not describe which transport the pages use or what the board must be in before the write starts, so treat that page as the source of truth for the procedure.
The repository layout supports the same flow from the other direction. The root of the project holds one YAML file per variant, named after the configuration, plus a Sendspin_Zero-Source.yaml and a configs/ directory. Those files are the source of the firmware images, so the build is reproducible from the repository rather than dependent on a binary someone else compiled.
The README does not document the build toolchain for those YAML files, so if you want to compile the firmware yourself rather than flash a prebuilt image, that is the gap you will have to fill by reading the files and the workflow definitions in the .github directory.
The ready-made players the README points you to instead
The project is explicit that it is not for everyone who wants a Sendspin device. It opens by saying this is a DIY project, and that those who prefer an off-the-shelf device they can buy and use right away should look at a different repository, RealDeco/sendspin-guition, linked from the README.
That is the same author offering a supported, ready-to-use path for people who do not want to solder. The distinction is between a project you build and a product you buy, and the README puts the reader in charge of which one they want.
The second alternative comes from a different vendor. The README notes that Apollo Automations has ready-made Sendspin players that come with firmware preinstalled, so they are plug and play, and it links two of them: CAST-1, an audio casting device, and CAST PRO-1.
So there are three ways to get a Sendspin player into a room, and the differences are concrete. The DIY route gives you a receiver that outputs to your own amplifier, with a screen, for about ten dollars of electronics plus assembly effort. The sendspin-guition route is a device from the same project author that you can buy and use. The Apollo devices are commercial hardware with preinstalled firmware.
For a multi-room audio setup, that last option is the one with the least friction, and the README is candid enough to say so.
A repository of YAML, 3D files and no tagged releases
The top level of the repository is the clearest summary of what the project delivers. Alongside the README and the LICENSE, it holds a 3D_Files directory, a configs/ directory, one YAML file per firmware variant, and a Sendspin_Zero-Source.yaml. The .github directory holds the workflow definitions.
There are no GitHub releases, and the project is not archived. The last push was on 2026-10-18, so the tree is being worked on.
The absence of releases is the practical detail to plan around. Firmware is distributed through the installer web pages rather than through tagged archives or a package registry, so there is no version history for an installer page, and you cannot tell from the page itself which firmware revision you flashed. If you are deploying several units around a house, keeping a note of what each one is running matters, because the per-variant YAML files in the repository are the only versioning that exists.
The license is MIT, which is permissive enough for a personal build and for anyone who wants to modify the configuration for their own case and display.
The documentation is also uneven in a way that matters if you build more than one. The variant table, the parts list, the cost and the assembly notes are all clear, while the analog versus digital control difference and the full pin mapping are not explained in the text of the README.
Editorial conclusion
SendspinZero fits a maker who already has an amplifier and speakers, is comfortable with a soldering iron, and wants a Sendspin receiver with a small screen for cover art and a clock rather than another speaker. It is the wrong choice if you want a device that works out of the box, since the README itself points to ready-made players for that, and it is the wrong choice for anyone who cannot source the ESP32-S3 Zero and the DAC board, since the build depends on parts chosen from a specific marketplace listing. Verify first that you have the esp32 variant of the board rather than the esp32-c3 that the product page defaults to, that you are comfortable with the no-header-pins assembly constraint before ordering parts, and which of the nine firmware variants you actually need, because the flash installer differs for each configuration.
Frequently asked questions
What does SendspinZero do?
It is a firmware and hardware project that turns an ESP32-S3 Zero into a Sendspin media player for Home Assistant, acting as an audio receiver for your amplifier with multi-room audio in sync. The build can include a display for cover art, song, artist and a weather clock, or a single button, or nothing at all.
How much does a SendspinZero build cost?
The README says all parts were sourced from AliExpress and added up to just over $10 as last checked. The parts are one ESP32-S3 Zero board, one PCM5102A DAC and a 1.54 inch LCD screen, and that figure excludes the amplifier, the speakers and the assembly work.
How do I flash the SendspinZero firmware?
The README publishes a web installer page for each variant under realdeco.github.io/SendspinZero, for example Sendspin_Zero-Button-Analog and Sendspin_Zero-Display-Digital, each with a flash firmware button. The repository also contains one YAML file per variant, a Sendspin_Zero-Source.yaml and a configs/ directory.
What is the difference between the analog and digital Sendspin Zero builds?
The README lists separate installer pages and configuration files for analog and digital variants of the button, display, no display and control builds, but it does not explain in text what changes between them. The wiring diagram and the per-variant YAML files are where that difference is recorded.
Is there a ready-made Sendspin player instead of building one?
Yes. The README points to RealDeco/sendspin-guition for an off-the-shelf device you can buy and use right away, and it also lists Apollo Automations CAST-1 and CAST PRO-1 devices that come with firmware preinstalled for plug and play use.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/realdeco-sendspinzero)Was this useful?