Taking things apart is always fun, and this What Cracking Open a Sonos One Tells Us About the Sonos IPO”>excellent writeup of a teardown of a Sonos and Amazon smart speaker by [Ben Einstein] shows what you can learn. [Ben] is a Venture Capitalist and engineer, so much of his write up focuses on what the devices say about how the company spends money. There are plenty of things to learn for hackers, though: he details how the Sonos One uses a PCI daughterboard for wireless communications, while the Amazon Echo has a programmable radio on the main board.
When [Chris Campbell]’s children wanted to play an album in the background over dinner, switching the outputs on his family’s Sonos sound system was perhaps too involved for their budding mastery of technology. This got him thinking about using kid-friendly inputs so they could explore his music collection. Blending QR codes, some LEGO, and a bit of arts and crafts, a kid-friendly QR code reader media controller comes out!
Working with a Raspberry Pi 3 Model B and a cheap camera, [Campbell] whipped up some code to handle producing and reading the QR codes — though he’s running the media server on another computer to maintain fast response times. Once [Campbell] had his QR codes, he printed them out and got his kids involved in cutting and gluing the double-sided cards. Additional cards access different functions — starting a playlist queue, switching output channels, and full album playback, among others. Cue spontaneous dance-parties!
[Jason] has a Sonos home sound system, with a bunch of speakers connected via WiFi. [Jason] also has a universal remote designed and manufactured in a universe where WiFi doesn’t exist. The Sonos can not be controlled via infrared. There’s an obvious problem here, but luckily tiny Linux computers with WiFi cost $10, and IR receivers cost $2. The result is an IR to WiFi bridge to control all those ‘smart’ home audio solutions.
The only thing [Jason] needed to control his Sonos from a universal remote is an IR receiver and a Raspberry Pi Zero W. The circuit is simple – just connect the power and ground of the IR receiver to the Pi, and plug the third pin of the receiver into a GPIO pin. The new, fancy official Raspberry Pi Zero enclosure is perfect for this build, allowing a little IR-transparent piece of epoxy poking out of a hole designed for the Pi camera.
For the software, [Jason] turned to Node JS, and LIRC, a piece of software that decodes IR signals. With the GPIO pin defined, [Jason] set up the driver and used the Sonos HTTP API to send commands to his audio unit. There’s a lot of futzing about with text files for this build, but the results speak for themselves: [Jason] can now use a universal remote with everything in his home stereo now.
One of the problems that has accompanied the advent of ever more complex home entertainment systems is the complexity of the burgeoning stack of remote controls that manifest themselves alongside your system. It doesn’t matter if you have a fancy does-the-lot universal remote, you are still left with a slew of functions to perform before you can sit down to enjoy the music.
[Robert Cowan] had this problem with his whole-house audio system. Playing music required a fiddle with the remote, and the moment was gone. What was needed was an automatic system that simply issued the relevant commands to the stereo without all the fuss.
His solution was to have everything happen when an audio output was detected from his Sonos Connect streaming media player. He tried rectifying its line output to detect music but hit problems, so instead used a SparkFun audio detector module. This in turn speaks to an Arduino, which then talks via a level shifter to the stereo’s RS232 port. [Robert] included all the relevant parts, schematic, and software is links in the video description. It’s a project that should almost be a feature built into a decent stereo, yet the manufacturers prefer the awful interfaces of their remote controls.
Not everyone can agree on what good music is, but in some cases you’ll find that just about everyone can agree on what is awful. That’s what the people over at Neo-Pangea discovered when they were listening to Internet radio. When one of those terrible songs hits their collective eardrums, the group’s rage increases and they just need to skip the track.
Rather than use a web app or simple push button to do the trick, they turned the “skip” button into a NERF target. They call their creation the Boom Box Blaster and made a fantastic demo
film video about it which is found after the break.
Inspired by a painting in the office, the target takes the form of a small hot air balloon. The target obviously needed some kind of sensor that can detect when it is hit by a NERF dart. The group tried several different sensor types, but eventually settled on a medium vibration sensor. This sensor is connected to an Arduino, which then communicates with a Raspberry Pi over a Serial connection. The Pi uses a Python script to monitor the Arduino’s vibration sensor. The system also includes some orange LEDs to simulate flames and a servo attached to the string which suspends the balloon from the ceiling. Whenever a hit is registered, the flames light up and the balloon raises into the air to indicate that the shot was on target.
Ahh, toddlers. They’re as ham-fisted as they are curious. It’s difficult to have to say no when they want to touch and engage with the things that we love and want them to play with. [Shawn] feels this way about his son’s interest in the family Sonos system and engineered an elegant solution he calls Song Blocks.
The Sonos sits on a dresser that hides a RasPi B+. Using bare walnut blocks numbered 1-12, his son can use the Sonos without actually touching it. Each block has a magnet and an NFC tag. When his son sticks a block on the face of the right drawer containing embedded magnets and an NFC controller board, the B+ reads the tag and plays the song. It also tweets the song selection and artist.
The blocks themselves are quite beautiful. [Shawn] numbered them with what look like Courier New stamps and then burned the numbers in with a soldering iron. His Python script is on the git, and he has links to the libraries used on his build page. The Song Blocks demo video is waiting for you after the jump.
IR control for your home theater doesn’t have to look ugly. [Rhys Goodwin] put his IR blasters inside his audio equipment.
Steam powered windshield wiper. Need we say more?
An assembled version of the FaceDancer is now available for purchase. This is a man-in-the-middle USB tool developed by [Travis Goodspeed]. When [S.A.] sent us the tip he mentioned that the board is a pain to hand solder if you’re making your own; this is an moderately affordable alternative.
[Aaron] makes it easy for audiophiles to listen to Soundcloud on their Sonos hardware.
While you’re still laughing, this most useless machine taunts you in more ways than one. It uses audio clips and theatrics to vary the way in which it shuts itself off. [Thanks Itay and David]