New gadget: Wireless speaker

March 25, 2017

new-gadget--wireless-speaker  Facebook  Twitter  Google +  

When amazon echo first released at 2014, i impressed with it's shape and unique reflex port design at first sight. The other features such as voice recognition & cloud services looks like chef's special sauce of the meal. useless, tastes bad but increases the price anyway.

The motivation to develop an alexa replica started with release of the orange pi zero at november 2016, it's in a matchbox dimensions, powerful enough to process 4k video and ridiculously cheap ($10 was on first release, even $7 today)

I purchased the board, installed armbian and conducted few tests with shairport and got acceptable results. Sound quality is exactly what i hear at pc, got 5-10 ms delay however it's still faster than speed of sound when considered we're going to use this thing at 20 meters away. By the way shairport is reverse engineered port of apple's airplay protocol to stream audio between iphone and mac. original git repository seems dead but it's fork shairport-sync still active today.

Case design
I was considering a shiny chrome pipe at same dimensions of amazon echo then decided to go with aluminium in case if i need to cut & drill with household tools. Processing the metal is whole another story, an instructable and a video available if interested.

Audio Output
Used 3W PAM8403 module as audio amplifier, luckily found two speakers on my scrap box with in exact power. Glued the woofer into a sink pipe to the imitate alexa's sound system and attached tweeter to bottom. There is a lot of teardown videos on the web, This article most clear one that described how original product works.

Apple's devices still supporting airplay today, I'm using tuneblade for windows and using Allconnect for the android. Also another app called AirReceiverLite allows to stream from pc to android.

+ First problem was the power supply, i had to use two separate 5v-2a cellphone charger for audio amplifier and orange pi. eliminated the emf based resets and audio noise problem by dedicated power sources.

+ Wifi connectivity was another issue, orange pi's embedded chip XR819 nothing but a placebo. Easily affected by interference and got high latency. I used my pc's wifi dongle TL-WN727 which is dramatically changed the visual look. Armbian has limited support on third party devices, you have to find driver's source code and compile from scratch.

Currently attached a microphone array for a possible voice recognition feature, but that's shifts things to a fulltime job from a hobby. A pir and adc module on the shipment for the playing audio only when someone exists on room, takes couple minutes to implement when it's arrived.

Cost Table
+ Orange pi zero: $10
+ 5mm aluminum pipe: $8
+ PAM8403 amplifier: $3
+ 2x 5v2a cellphone charger: $5

Wifi dongle and speakers was household items but let's give $10 to them, so total cost to me $36 plus 5~8 business days to work on.
Alternatively, working on a freelance job about two weeks and purchasing an airplay compatible speaker also an option.

watch at youtube if having problems with video

  Most popular entries

VR Experiences #1: Oculus Rift

The 80's childs are familiar with virtual reality term. we seen this subject in the action at johnny mnemonic, the lawnmowerman etc.if you're not living in a cave, probably should know the

Stealing sneakers from NIKE

as the whole crafty geeks knows, nike has a rvsp system via twitter. they

Bytecheleby at revision

Looks like our portable shell "Bytecheleby" still useful on scene. im started to enhance it by using my newest libraries and lots of new stuff. stay connected for latest releases

Pain and Suffer inside: Displaylink Adapter

as mentioned on my recent tweets, was looking for a low cost multi-display solution about couple weeks. gaming oriented gfx cards already

Entering system level command line

I get this trick from a sysadmin friend. it allows to enter system level shell access in Windows Vista and later versions. useful for bypass UAC and ntfs file permission create SuperC