Hacker News new | past | comments | ask | show | jobs | submit login
Modernizing my 1980s sound system (yossarian.net)
121 points by woodruffw on Nov 7, 2022 | hide | past | favorite | 147 comments



As someone who used to do all this kind of stuff, what I settled on in the end was having a subwoofer and two speakers on a desk with a 3.5mm cable strewn across in case anyone wanted to use it.

I mostly gave up on wireless this and that and constantly on electronics doing things in the background. Now I just watch shows on my laptop, keep my media on a 2.5" sata HDD with a sata to USB cable, and be sure to copy anything I've downloaded onto it every once in a while. I keep it simple, I'm now of the opinion that if you spend more time administering than using software it's not worth it. And to me, the amount of time I'd put into setting this stuff up, troubleshooting, updating software and whatever else just doesn't make up for having to plug things in when I need to.


Same here. I tried setting up a "system" for my family, with Raspberry Pi, etc. It always required futzing, and rebooting, and never just worked. Also, everybody in the family already had something that they wanted use, ranging from Spotify to physical CDs. So I made a little box with a 20-Watt amplifier board from Ali Express, a potentiometer for a volume control, and a cord with an 1/8 inch plug. Heaven.


"It turns out that nothing really runs well on a 32-bit x86 machine anymore, including major Linux distributions and web browsers."

Not true. The EeePC 701 netbook is a really minimal underpowered machine, still it will run small Linux distros just fine (it was actually sold with Linux in the first place). If you want a music player that you can control from another room, you can do that by installing a very small distro such as the x86 Alpine Linux image (https://alpinelinux.org/downloads/) then the mpd daemon (https://www.musicpd.org/ - it's in standard repositories install it with "apk add mpd" from root shell) which can work headless, therefore requiring very few resources, then a suitable control app for your phone or tablet (search for mpd control app), so that you can do pretty much everything through your home WiFi from any room, basement, backyard, etc.

Should you experience noises, cracks, hum and static when connecting the netbook to an amplifier and to a mains adapter, that is a common problem of ground loops and not of that particular netbook, that will be easily solved by adding a small audio transformer in between.


I'll grant that I hadn't tried installing Alpine -- I tried a few different Debian/Ubuntu variants and ran into the same handful of issues (including a few installers failing completely.)

That being said, MPD is not a good solution for my particular use case: I have family and friends that come over regularly, and they want to play music. None of them are technical and are easily dissuades by anything that doesn't immediately work with AirPlay or another UPnP-style setup.


MPD works great for non-tech-savvy friends over, you just need to install a web-based client and they can point their smartphone browser to it.

To make it even easier for friends and family, I set up a dynamic DNS with a friendly URL like myjukebox.duckdns.org that points to the 192.168.xxx.xxx address where this is hosted.

Mopidy (https://mopidy.com/) as the MPD server with Iris (https://mopidy.com/ext/iris/) as the client is a good setup for this.

Even the tech-illiterate can get along with it.


> MPD works great for non-tech-savvy friends over, you just need to install a web-based client and they can point their smartphone browser to it.

There are different standards for this: my non-technical friends could probably browse to a local website on their smartphones. My parents would forget how to do it each time, and would be annoyed that it doesn't look like Spotify or Apple Music.

As it is, everybody on my network is able to auto-discover the Pi using their phone or computer's native AirPlay/DLNA support and play music using their application of choice (meaning my server, their own MPD server, Spotify, whatever). That kind of flexibility was a necessity for my case.


Doesn't that have the drawback, though, that you aren't able to share the playlist? My biggest complaint about Airplay (and also Bluetooth) is that someone might put their music on but when I want to put "my" music on I can't because they're paired to the given speakers.

The MPD approach is far better because each person's client view is a shared view of a single playlist. People can all add or update that playlist together.


This is definitely true -- there's no shared playlist state, as far as I can tell, with this setup. I think HiFiBerryOS supports MPD, but I haven't looked too closely into it.

At least for my purposes, this isn't too big of a drawback: HiFiBerryOS seems to take a "FIFO" approach, so taking over control just involves playing over AirPlay and booting the last person off. Someone could of course do that do me, but that's what social etiquette is for :-)


> I tried a few different Debian/Ubuntu variants and ran into the same handful of issues (including a few installers failing completely.)

Did that include plain Debian?


Yep. I think the problem with plain Debian happened when the base install momentarily exceeded the available disk space (probably while decompressing packages during install). I didn't bother debugging it further.


The EeePC 701 netbook is a really minimal underpowered machine, still it will run small Linux distros just fine

Really? I brought mine to be recycled about six months ago because I couldn't find a distro that would work on it anymore.

I tried at least a dozen over two days, all of which claimed they were minimalist, and some that specifically claimed they would work on an eeePC 701. None did.

All the information making this claim is very outdated, and even the minimalist installations have moved on so that they no longer work on a 701. Some wouldn't boot; the rest were unusable or unstable.

The only thing that still worked on the machine was the image that it shipped with, but the Firefox was so anemic, it could barely show any web sites, and certainly none with fancy JavaScript.


> Really? I brought mine to be recycled about six months ago because I couldn't find a distro that would work on it anymore.

Yes, it's really low powered, and storage is minimal so it can't run even base installs of most known distros. That's why I suggested Alpine; it is aimed primarily at virtual machines (where less is better), but it installs fine on real iron and can be extended up to the point it becomes a full desktop, although still much smaller than the equivalents due to most software being rebuilt against musl therefore being lot smaller than libc. The 701 will probably be too small even for a Alpine based desktop, but the OP needed a music player, which seems doable to me.


Yeah, no, it won't work well as a desktop machine, but it's OK for networky things. File or print server. Sound server. Gateway for your homebrew IoT wireless network. Data logger for your electronics workbench.


International banking systems still rely on mainframes that don't even support time sharing! I'm sure an x86 rack would blow the socks off of the guy who has been maintaining the COBOL clusters by himself for 30 years. On another note, my EeePC still seems to work as well some old 32 bit Thinkpads I've seen recently. It actually doesn't have overheating problems like modern laptops do and I can simply replace the ram, network card, pcmcia slots if I needed to. We need to stop x86 discrimination :c


> International banking systems still rely on mainframes that don't even support time sharing!

[citation needed]


I think I mixed up this information with the fact that DOD is still running a cluster of IBM Series/1s to administer the US nuclear force. (pretty sure there's no time sharing). Definitely more interesting than international banking ;) https://en.wikipedia.org/wiki/Strategic_Automated_Command_an...


Another approach is to get a used thin client instead of a netbook. You can get a HP t630 or similar wyse with a AMD SoC for <$100.

Much better build quality than a cheap consumer device.


The eee line were gems.


Not sure how it's this complicated. I have normal laptops, desktops and phones connected to 70s and 80s vintage stuff all over the house. $10 Bluetooth dongle here, £10 DAC there, and Bob's my uncle. Sounds fine most of the time; over to vinyl for whisky time.

Examples:

  - USB to basic DAC to RCA from desktop to huge 70s Sansui G-7000 receiver
  - 1/8" jack to RCA jack input from desktop to Tivoli Audio radio
  - 1/8" jack to RCA jack input from Echo Dot to McIntosh MX-115 preamp
  - Bluetooth dongle to RCA from iPhone to 60s Leak Stereo 70 amp


At the end of the day, I don't think it actually is that complicated. The narrative style makes it sound that way (since I wrote it as a culmination of trying a few different things), but the final setup with the Pi only took about 3 hours including the patching.

The two constraints that I mentioned in the post should help explain the residual complexity: I didn't want to buy any new equipment (including a Bluetooth dongle, which I don't own), and I wanted the setup to be maximally accessible to my friends and family while still working with my own computers (in different rooms). AirPlay and DLNA achieve that; Bluetooth is finnicky and wouldn't connect at the distance between my receiver and my office.


As a person who routinely spends hours trying to save 5 minutes, I get you ;) I also hear that a lot of people like to have sound through multiple rooms and be able to control it remotely, which I don't really do.

And to be fair, I sometimes hate the Bluetooth dongle, which works fine for streaming and longer albums and if I'm sitting still, but powers off annoyingly (even when plugged in) 2 minutes after the signal stops or if I dare to step out of range.

I switched the dining room system over to an old iPhone with 1/8" jack (I'm hoarding those) after looking for a DAC for the iPhone and basically seeing that the onboard is not so bad. Wifi to Amazon Music, done.


AirPlay/DNLA receivers also do exist all over Amazon, they seem to be around $60-90. I see a product for under $25 on AliExpress.

The Pi with boot storage and power adapter isn't that far from that cost, plus you had to blow 3 hours of labor.

I think it was a neat exercise but it was also not really the most logical constraint for the task at hand.


It was a fun side project. I didn’t “blow” 3 hours; I enjoyed fiddling with it (so much that I wrote a blog post about it, which I also do for fun).

Not everybody has to do that, much less wants to, which is perfectly fine! I don’t expect anybody else to do this, unless they want to. But if they do, they now have a resource to follow, one that’ll cost them (next to) nothing, will keep working even if it’s not in a company’s profit interest, and doesn’t involve shipping yet another doohicky over the ocean.


I understand, I don't mean to knock a solid hobby project.

Still, to be pedantic, the Raspberry Pi didn't cost next to nothing ($35+PSU+boot storage) and was shipped over an ocean.


Right -- emphasis on yet another. This one's been sitting in my closet for at least 5 years. The PSU is a wall wart from an old phone.

Of course, maybe it'll all stop working in a couple of weeks, at which point I'll break down and buy the doohicky. We'll see!


I once worked for a PA "contractor" and the thing that blew me away the most was how not one of the self professed audiophiles could reliably tell the difference between a universal audio preamp with flat presets and a 1.50$ crapbox I built with some scrap op-amps and a soldering iron.


That's awesome. =)

    self professed audiophiles 
The positive news here is that in recent years, there has been a growing trend of objective audiophiles who understand things from an engineering perspective and eschew that kind of snake oil stuff.

We would find it totally unsurprising that your $1.50 "crapbox" was indistinguishable from the fancy gear. And congratulate you for helping to expose those frauds.


Please cite actual research defining "objective audiophiles"? What is "objective" about sound? Do you realize that all gear is tuned by ear - someone listens to it to adjust how it sounds?


Please don't bring the 35 year flamewar on rec.audio.high-end here.


It's only a flamewar on one side.

"Objectivists" have decades of controlled research output regarding audio reproduction on their side. After all, audio has been a multizillion dollar industry for well over a century -- certainly it would be surprising if we weren't good at measuring sound and correlating it to listener preference!


Oh, I'm not interested in the flame war! lol I'll stand by my opinions but won't force them on you. People can use their own ears/brain. Always have, always will. Enjoy the music, ladies and gents.


    Please cite actual research defining "objective audiophiles"
Sure, absolutely. Hope you've got time to read.

First, I want you to consider for a moment how remarkable it would be if we had no idea how to objectively measure "good" sound considering that this is a multibillion dollar industry that has existed for over a century. A world where we can calibrate televisions and movie screens objectively by automated means but not, for some reason, their audio counterparts. As rational minds might expect we don't live in such a world.

You'd want to look into research by Sean Olive, Floyd Toole. Here's probably your best starting point: https://www.amazon.com/Sound-Reproduction-Psychoacoustics-Lo...

The TL;DR is that it turns out that most people prefer sound reproduction that (like video reproduction) is accurate to the source material, with a bit of a "house curve" that accentuates the bass frequencies that roughly corresponds to the Fletcher-Munson equal loudness curve. In the end, it's signal reproduction.

    Do you realize that all gear is tuned by ear - someone 
    listens to it to adjust how it sounds?
I don't realize it because it's not true. A person's hearing can change rather markedly from day to day due to factors like congestion, humidity, etc. This would be a remarkably laughable and irreproducible way to calibrate audio reproduction devices.

Audio technology companies that are serious about high quality sound reproduction make use of anechoic chambers: https://nrc.canada.ca/en/certifications-evaluations-standard...

...and/or measurement devices like the Klippel NFS to simulate anechoic measurements: https://www.audiosciencereview.com/forum/index.php?threads/u...

...and/or measurement devices like Audio Precision gear: https://www.ap.com/

Of course, audio companies do tinker with their sound to some extent for subjective purposes. A lot of brands try to achieve a bit of a house sound. Ultimately though, audio reproduction is not wine tasting. We can objectively measure what is good and isn't good.

There is also room for subjective personal preference. Everybody's hearing is a little different. And even Floyd and Toole's research reveals average listener preferences. But ultimately...

    What is "objective" about sound?
Well, everything. As you know, "sound" is pressure waves in the air. Those pressure waves can be objectively measured in terms of frequency and amplitude. And those 1's and 0's in a digital audio stream for example have objective meaning. They are not a series of opinions. They represent frequency and amplitude. Anybody telling you otherwise is simply uninformed, or trying to pull the wool over your eyes and sell you something.


I asked in good faith and I think we share similar perspectives, however it seems an implicit assumption in your statements is that we know all there is to know about hearing, and we can measure it precisely, thus any claims of audio qualities, for lack of a better word, are by definition psychological biases. Maybe that's not exactly what you mean, but it'll do for here.

Fair enough to consider although I suspect we'll wind up agreeing to disagree. Not interested in flame wars, and thanks for obliging me.


    however it seems an implicit assumption in your statements 
    is that we know all there is to know about hearing
Hearing involves the human brain and I'm absolutely sure we don't know everything there is to know about it. So at least we agree on that!

However, it seems to me that the question is, "can System A reproduce sound with a 'sound quality' relative to System B that cannot currently be measured, but can be recognized by listeners?"

I don't believe we need to know all there is about hearing to answer that question.

    thus any claims of audio qualities, for lack of a 
    better word, are by definition psychological biases
Psychological biases are huge but for the purposes of this good-faith discussion I'm assuming they're controlled for.

I'd put it this way...

A suite of measurements such as those produced by e.g. the Klippel NFS measurement system such as those seen here represent a rather large quantity of data.

https://www.audiosciencereview.com/forum/index.php?threads/t...

Do you claim that two audio playback systems could produce identical measurements on the Klippel, and yet have audibly different "sound quality" that could be discerned in a repeatable double-blind fashion by human listeners?


No, you said that, not me! ha ha ha

And as you note below, if it's fun for you to trot out all this "science" then please, don't let me spoil your broth. I'll just contend that science is about testing hypotheses and leave it at that.

Lastly, yes, lots still to learn about hearing and audio. Someday maybe we'll have measurements that allow for certain comparisons to be valid across human aural experience and electrical transducers.


when I no longer have self professed audiophiles to deal with I will always possess the ability to start audiophile flame wars :)


It's always fun!


Therein lies the rub, wouldn't you say? ;-)


Why is there such disdain for audiophiles? Do you have the same opinion of people who claim to taste notes of honey and oak in wine? Genuinely curious as to why everyone thinks they can hear the same as others when it's clear that humans don't. And why thus it seems it's fashionable to crap on people who like good sound?


There is no disdain for audiophiles.

There is a lot of disdain for audio-fools: people who go beyond the entirely defensible "This is what I like" and enter into counter-factual explanations of why their preferences constitute truth.

It's always fashionable to crap on people who waste their money on things which are at best immaterial and at worst actively harmful to sound quality. Drawing with a green marker on the edge of your CDs will not improve the sound. Shun Mook Mpingo disks do not and cannot do anything for audible resonance control of your room. Replacing your volume knob with mahogany might look nice, but will not change the sound quality. Unless you live in a particularly bad region of the world, a line conditioner will not improve your sound; if you do, a UPS does a better job. Under no circumstances will replacing a working, up-to-code electrical outlet with an audio-rated outlet improve anything about the sound. In general, an amplifier does an excellent job of removing noise from the power supply before adding it to the signal, and there's a nice objective measurement you can perform to see how good a job each one does.

Ethernet cables are not directional. Speaker cables are not directional. Interconnects are not directional. Anyone selling you one of the above cables and claiming that it is directional is at best a fool and at worst a liar who is selling you a product that is defective.

Raising your cables off the floor with expensive blocks may look good to you, but it doesn't change the sound.

Paying for gold connectors improves the corrosion resistance, but the going rate varies from quite reasonable to extortionate. Silver cables and connectors are a bad idea; copper is excellent. Lamp cord works well. For short runs, an unbent wire clothes hanger will work in a way indistinguishable from a properly constructed cable.

Claims of audibility need to be subjected to measurement, both of the systems and of the people claiming distinguishability. Tests must be double-blind: that is, the experimenter and the subject should both not know what the tested article is during the test.

In conclusion: people like to fool themselves. That's fine, as long as they don't fool other people, too.


  > There is a lot of disdain for audio-fools: people who go
  > beyond the entirely defensible "This is what I like" and
  > enter into counter-factual explanations of why their
  > preferences constitute truth.
I wish those would go away. Ditto for the objectivists that tell me I'm listening to music the wrong way because I don't happen to enjoy gear that perfectly matches their averaged response targets.


Well, you can trot out the green pens and all, but I think there is more to electricity and its role in "audio" that is unknown than is known. Thanks for sharing your point of view. My experience differs. So it goes, cheers.


as a reminder, this thread started because I was wondering why all those who had hired me couldn't tell a difference between a crapbox and a professional preamp. Of course people have different tastes and likings but not being able to hear a difference between vastly different sources just means that your claims are invalid. and of course, taste isn't something that can be measured or recorded, so it isn't very useful as an analogy of who it is right to crap on.


Well naturally not, because obviously you were using low-quality speaker cable and the cable capacitance would muddy the sound. Also, the speakers were probably the wrong brand. /s


> PA contract work < referred to very very low-quality work with professional gear, because that's what clients assume must be better! I was refferring to a high qualiy preamp vs my 1.50$ crapbox as used when connected to a (I think telefunken) microphone. Self professed audiophiles were listening on headphones


Cheap crappy £5 bluetooth chip PCB off eBay, small mod to the cassette player in the factory stereo in my 1997 Range Rover, and I now have a bluetooth stereo that my phone works through without any annoying dangly dongles or aftermarket bodged-in stereo wiring.

I could have spent a couple of hundred quid on a decent head unit, and then some more on the interfaces to go down to line level for the amps in the doors and subwoofer, and then some more on interfaces to make the steering wheel controls and CD player work, and then some more to ensure the door amps actually switch on.

Or, PCB the size of my thumb, covered in heatshrink and held against the cassette drive PCB with a dot of hot glue.


I have a similar setup with a TEAC receiver, a technics truntable , and some nice speakers I got from my dad.

When the fan went out on the TEAC, I just wired it to a tiny power amp I got off amzn which had bluetooth, and just stream off bluetooth from whatever device I am wanting to use.

I'd ditch the receiver all together (cause I don't really need FM or CDs), but it has a phono preamp for the turntable and I occasionally like to listen to records. It's nie when we can make these things simple.


Yeah, I do similarly.

But OP wanted something that any guest could connect to over WiFi. OP's setup also offers the advantage of AirPlay which offers true lossless 44.1/16 streaming and other advantages relative to Bluetooth.


When playing a single source on multiple speakers, I'd expect bluetooth latency to present a synchronization problem. How is it in practice?


Seems like a good use-case for the chromecast audio (RIP). It lets you stream to it over wifi and connects to the receiver with 3.5mm to RCA cable


It was also an spdif optical out which was super nice to hook into a better DAC.


Yes, although the actual streaming was lossily compressed, which more than negates any gains from using a better DAC.

(edit - this is incorrect; the Chromecast Audio was apparently updated at some point to support lossless streaming)


No, that is not true. Chromecast streaming is lossless, so it is certainly possible to stream hi-res flac files bit-perfect.


Thanks for the correction. I think Chromecast Audio initially didn't support lossless streaming, but at some point it was updated to support it?

Regardless, thanks, and I updated my post!


Still using mine to this day

You can also put multiple chromecast audios in a group in google home and they will perfectly sync audio across multiple rooms like a ghetto Sonos setup!


One of the best dollar-to-performance purchases for home audio.


Which is especially nice if you install Owntone ( https://github.com/owntone/owntone-server/ ) -- now you have a nice web interface for playing music to any or all of your systems.


https://www.amazon.com/Bluetooth-MultiRoom-Preamplifier-DLNA...

Handles AirPlay, DNLA, Spotify Connect, Qplay, UPnP


Depending on how you feel about using outdated network hardware, an Apple AirPort Express functions as an AirPlay receiver, DAC, and USB to network printer adapter. Have it join your existing network or, depending on the version, connect it via ethernet.

The 1/8" stereo audio out has a fiber optic digital out in it if you want to BYO DAC.

Using the network printer requires Bonjour for Windows. It generally works out of the box on most Linux distros.


    Apple AirPort Express 
I agree with you. It's absolutely the biggest bargain secret in the audio world. Glorious dirt cheap dead simple lossless 44.1/16 bit perfect streaming. Install one in every room for the world's easiest multiroom audio solution.

They're available dirt cheap and in plentiful supply on eBay.

The only drawback is a lot of apps don't work with Airplay directly on Windows, need a third-party sound driver app or whatever (it's been ages since I looked)


I didn't know AirPort Expresses could do that! That would definitely have been an option, if I owned one :-)


They are dirt cheap on eBay if you ever get the itch. No DLNA, though, which your current solution supports. So many guests would be left in the cold.

But an Airport Express plus an RPi serving as a simple DLNA-to-Airplay bridge might be a way to go

(Thank you for the great article, by the way!)


To add, it is readily available on eBay and costs less there than the usual price of Raspberry Pi.


> Using the network printer requires Bonjour for Windows.

Offtopic, but I'm shocked that Windows still doesn't support Bonjour/Zeroconf out-of-the-box.

I guess RFC 6762/6763 aren't enough for them?


Windows does support zeroconf networking out of the box, just different flavors from what Apple does out of the box. NetBIOS and LLMNR are Zeroconf DNS/service advertising in the same vein as Bonjour.


AFAIK, NetBIOS & LLMNR handle only the hostname lookup. Zeroconf adds the crucial ability to advertise services (SSH, VNC, IPP...), so they're not really the same thing.


They're most known for hostname lookup but they can also do service discovery. Although service discovery is then tied closr to things like SSDP or WSD.

My Windows machine knows my home theater receiver is a home theater receiver and knows it's a DLNA and a web server running on it. My Windows machine knows my Brother printer is a printer and scanner and can auto configure the WSD drivers for it. My Windows machine can see my NAS and can know it has fileshares on it to access as well as knowing it has some DLNA functionality.

It does this through zeroconf networking protocols. Different protocols from Bonjour, but it would be incorrect to say it does not have any zeroconf networking support out of the box.


It functions as an Airplay receiver, does it also function as DLNA receiver? A friend has some sort of Apple thing attached to his audio system, it works fine for streaming audio for anyone with itunes, but doesn't do anything for android folks.


> some sort of Apple thing

That is probably an AirPort Express: https://en.wikipedia.org/wiki/AirPort_Express


That's the only (admittedly, a dealbreaker for many!) downside. It does not do DLNA.


Thanks, had an 802.11n one sitting here and just tried, though seems like it doesn't want to join an existing network. Even when I had it create a network and joined, macos Ventura didn't seem to see it as Airplay device.


I have a similar setup and it works. Here's my info in case it helps.

AirPort Express 802.11n 2nd gen running firmware 7.8.1. It's joined to my 5Ghz network using 802.11n.

I have my home wifi configured with both 2.4 and 5Ghz networks and the AirPort Express is aware of both. Not sure if this makes a difference.


Thanks! Was old firmware, update did the trick.


That's exactly how I would "modernize" the system. Maybe add a modern DSP equalizer for room correction, too - his receiver has two monitor loops.


     Maybe add a modern DSP equalizer for room correction, 
     too - his receiver has two monitor loops.
Oooh, that's nice. I hate that most modern systems don't include these.

DSP correction to compensate for speaker+room issues is just stunning when done well. Turns many cheap speakers into legitimate hifi.


Is there a minimum model that we need or even the first version is ok?


I'm not sure an 802.11g one will work -- I'm not sure it uses AirPlay to receive network audio.

I'm not sure the first gen 802.11n will work either -- I have a second gen one and no longer have the older ones. Sorry.


I know that it's probably pretty well insulated with the layer of black crinkle paint, but I still get uneasy seeing that picture of the bare Raspberry Pi printed circuit board sitting directly on top of the conductive metal case of the receiver while powered on. At least put a piece of paper or something behind it, right? Does anyone else worry the solder blobs or connector pins on the bottom of the board will short out?


I do indeed worry about it -- I plan on putting it in a case pretty soon.

(This is not a justification since you're absolutely right, but I've had a handful of different Pis running for years while sitting on painted metal. In my experience, SD corruption is much more common than shorts.)


I used to use my Raspberry Pi as an Octoprint server but after the third dead SD card, I unplugged it.

Are you doing anything on this setup to prolong the life of your SD card?


Nothing in particular: I believe HiFiBerryOS does some stuff under the hood to minimize unnecessary writes, but I didn't look too closely into it. The also provide shutdown and reboot buttons via their Web UI, which I greatly appreciate (and presumably help avoid any corruption that can happen when just yanking the power).

For the other Pis I use, I see corrupted SDs roughly once every 18 months. I replaced a couple of repeat offenders with new cards (from a different vendor) a while back and things seem to have stabilized, so my (lay) guess is that some cards are just more finnicky on the Pi than others.


I suspect that most of the SD card corruption could be remedied by an overlay fs.

The way I did this before - with excellent results - was to run openwrt on a pi, which is designed well in this respect. There is no continuous logging or other nonsense to corrupt the filesystem when you lose power.

I recently found out raspbian now allows you to do a (read-only) overlay filesystem:

  $ sudo raspi-config
  4 Performance Options -->

  P3 Overlay File System Enable/disable read-only file system


Is it entirely read-only, or would I be able to still write when I want to? For example, Octoprint isn’t much use if I can’t upload models to print.

My problems weren’t due to file system corruption. I think the cards wear out quickly due to writing.


I had the same thought when I saw the photo. I agree with you on this, I'd put something in between (probably at least cardboard).


If you want something which runs on the Raspberry PI and can do airplay/DLNA etc to a USB DAC without any hacks, try RoPieee XL: https://ropieee.org/xl/


I just use the RCA plug to feed stereo to my 1980s Carver preamp, then 1980s Carver amp, then 1980s Dahlquist speakers.

Been doing that forever. It all runs basically 16 hours a day, every day, for decades.

No complaints about it.


>Been doing that forever

^H^H^H^H^for the last 42 years


> Been doing that for<ACK>or the last 42 years


I have a similar setup: a raspi 3B+ with a Hifiberry dac pro, running vanilla raspbian (or whatever it is called now), connected to a mid-90s Yamaha AX amplifier.

I set up PulseAudio to run as a system daemon on the raspi so it can receive all audio from my laptop. On the laptop side, I switched to pipewire - it was practically a drop-in replacement, I don't remember having to do much configuration.

I also use Raspotify so the raspi appears as a Spotify Connect device.

The biggest challenge for me was getting uninterrupted audio playback when watching video content on my laptop, as i'm using wifi to connect to the home network. Everything was ok with my cheap TP-Link router running OpenWRT until I decided to upgrade to a Mikrotik hAp ac2. I got a lot of dropouts when using RouterOS on the MT, tried everything I could think of, even submitted a problem report directly to MT, but they decided that my use case was too unique for them to care about it. After upgrading the MT to OpenWRT, everything is in sync and I don't get any dropouts.

As for the volume control problem, I connected a basic IR LED module to the raspi, set up the correct remote in lirc [1] and added buttons to my OpenHAB dashboard for changing the volume, inputs and toggling power.

[1]https://lirc-remotes.sourceforge.net/remotes-table.html


Ah, very interesting to read about Subsonic being used here. I was in the market for a similar setup a while ago and tried a bunch of different servers. Navidrome was clearly one of the better ones but didn't seem to support folder-based navigation, which I want to use (since most of my music is not structured as album-per-folder but rather as playlist-per-folder).

Like a good HN user I ended up writing my own Subsonic compatible server [0]. It also does things mentioned in this blog post series, like automatically grab cover art and metadata from Musicbrainz/CoverArtArchive, Discogs and last.fm. I haven't officially released it yet since it's missing a few features (most notably transcoding, documentation and support for deleting files) but looks like it might be worthwhile to spend that effort. If you're feeling brave, you can compile it from source or grab the Docker edge image[1].

It looks like I missed evaluating https://github.com/sentriz/gonic though, so I might give that a go as well.

[0] https://github.com/datatrash/beatlocker [1] https://hub.docker.com/r/datatrash/beatlocker-server


I think this may have changed since the last time you checked it out! For my setup (Navidrome with Sonixd as the client), I can navigate through folders just fine.

Screenshot here[1].

[1]: https://imgur.com/a/NPHyjgC


Are these folders actual folders on your disk, though? Last time I checked I could use Navidrome to browse folders, but it would actually be browsing through albums instead.


Yeah, each of those corresponds to a folder on disk. However, each of my artists is auto-managed by beets[1] so I end up with one folder per artist, including one folder per "feat." artist (like in the screenshot). So this may be a case where my folders happen to align with the artists/albums, which might not work for you.

[1]: https://beets.io/


Right, I think your assumption is correct - it just happens to align. Kudos for organising your collection so well, though :)


I have a Technics SU-C800U and SE-A900S with the wonderful VU Meters. I have a Pi running Volumio.

Volumio can do all that HifiberryOS does but is not hardware tied, ie you can use any DAC https://volumio.com/en/get-started/ Volumio has a great web UI. Jellyfin is a great OS server. I use Plex as my music server and the rather wonderful Plexamp app on my phone but it's paid and proprietary, but worth it.


Another plug for Volumio. I added smart features to my hifi system with it. Very reliable and great Spotify integration.


Thanks for sharing! I definitely saw Volumio at some point and completely forgot about it; I'll have to give it another try.


Did they finally upgrade from jessie? They had really outdated versions when I last checked them out?


I went the other way. I tried laptops and raspis wirelessly, and then with audio over ethernet but the difference in timing caused by differences in signal decoding meant that you can couldn't sit in one room with the door open with the speakers in the next room also going because of microshift flanging (although I say micro, some rooms were over 100ms out of sync, which is unbearable).

What I ended up doing instead of just running TRS cables along the ethernet cables that were already going to the various rooms I care to spend most of my time in, with some 4x4 audio interfaces that take care of sending the audio to the various speaker sets in those rooms (for rooms with more than one set). Any interface's output can route to any other interface, so if there's more than one thing playing you just press enable that input in the room you're in, and done.

And of course, you can get the same done with some second hand professional audio routing rack units, but (a) those are rather inconveniently sized, and (b) you kinda need to have a hookup for those, or get lucky, whereas audio interfaces are a few clicks away and designed to at least look reasonably decent sat on a bookshelf =)

More expensive? Probably. "Perfectly" synced audio across rooms? Very much so.


It's effectively impossible to "sync" audio across a large area (because if it is perfect in one area it will be imperfect in another) so often the best you can do is adjust it until it "sounds right".

Some software and some hardware have built-in delays you can use to adjust as they do in a stadium, but often just getting everything "speed of light" in a house is good enough.

The main thing is that you don't hear a delay when standing in the doorway between rooms.


Unfortunately, decoding drift makes that seem initially fine, and then half an hour later you're going "w. t. f." so after several days of "why the f does this audio not STAY synced?" I gave up and went cables.


Yeah, I really like physical cables myself, and if necessary you can buy analog audio delay units.

For real fun, you can get into 70 volt speakers, which many people don't even know exist: https://www.parts-express.com/70-volt-systems-beginners


Don't Sonos, Ultimate Ears, Echo, Google Home etc solve this problem pretty effectively? I know there was a bit of a patent war between them for a while, but don't they still have this feature?


It's not open source or free, but Roon provides multi-zone synchronized playback and has excellent Linux support (including x64 and arm easy install scripts). See:

http://roonlabs.com

https://help.roonlabs.com/portal/en/kb/articles/linux-instal...

Many Roon users use Raspberry Pi's as audio "bridge" devices for their various audio setups around the house. There's even dedicated RPi distros that offer Roon packages:

https://ropieee.org (semi-open source)

https://dietpi.com (GPL)

You can read more about how Roon handles playback clock sync using its RAAT protocol here:

https://community.roonlabs.com/t/raat-and-clock-ownership/69...

Disclaimer: I work at Roon Labs LLC.


It's not free, to the tune of $10/month! I'm willing to pay for things, but I'm sorry, that's just not workable. I'm not going to pay for yet another subscription service, especially one for my speakers.

I was really hopeful for a competitor to Sonos too. Ah well, back to hoping Google ever brings back Chromecast audio.


Shout out for the open source option:

Snapcast - https://mjaggard.github.io/snapcast/


Interesting... so this isn't a device-specific firmware hack, but a pipe? Does that mean it only works on things running user-accessible Linux, not your typical smart speaker?


The client doesn't run on typical smart speakers, but it can run on Android, or through a web page, or on a Raspberry Pi, amongst other things.


OpenWRT also got it packaged. So a solid and easy way to run it is to just throw the client on some old routers with OpenWRT support, connected to $20 USB DACs with S/PDIF.

https://www.behringer.com/product.html?modelCode=P0484


Yes, you wouldn't get this running on an existing smart speaker (without first rooting it and some serious hacking).

If you'r in the Apple ecosystem and are using AirPlay with your smart speaker(s), it's however possible to also play synchronized audio across to your own DIY speaker setup, using another open source project.

https://github.com/mikebrady/shairport-sync

Or you could of course choose to only use your old dumb speakers with this, and they will pop up as easily selectable sound output devices on all Apple devices connected to your network.

Or combine it (and librespot[2], owntone[3]...) with Snapcast to create a virtual speaker for your whole house that shows up everywhere.

[2] https://github.com/librespot-org/librespot

[3] https://github.com/owntone/owntone-server


FWIW, most of the patent war was about how Sonos syncs the volume controls so that changing a master volume level changes all the synced volumes. Seems obvious (and therefore unpatentable) but there is an ever-so-slightly-not-quite-obvious-at-first-glance aspect to it.

I believe Google caved on this and doesn’t allow master level control with their devices. And of course they have been counter suing Sonos on other patents as a result.


What an interesting tibid! I didn't realize that. Thanks for sharing :)

What is it about the volume controls that are anymore non-obvious than multi-room syncing to begin with?


It has to do with tracking the levels in the group.

You want to be able to slide a master level up and down and have the levels maintain the "same" balance, even if one of the players ends up going to (effectively) zero level when you have turned it down. Takes a little bit of thinking about how you represent the range of the levels.

I think the patent is actually quite a bit broader, and covers using a UI that has a master volume control across players whose individual volume levels are displayed as well.

Google pulled all "master" level control in response.


Apple still has one when casting to multiple HomePods; I wonder if they licensed it.


I suppose the argument would be that the "volume setting" is metadata or out-of-band compared to the audio itself.


Those send the actual file data to the speakers, so you're not "playing the audio" so much as each speaker literally playing its own copy of the file, using synced playback timing.


Is that the case even when you're streaming from Spotify or Airplay, or say using their wireless 5.1 setup from the soundbar?

And I mean, in the age of wireless speakers... aren't all digital speakers receiving "file data", whether it's one file at a time or one chunk at a time? What's the difference?

Even if it's just timing data, I don't think I would be able to figure out how to sync up two different devices' times down to that level of precision. A little bit off and you'd build up weird interferences, wouldn't you?


There are speakers/etc that use actual streaming protocols - but that's become relatively rare.


They do - if you're using one kind for all. That's why starting a song can sometimes take a bit as it buffers/aligns.

It's when you're mixing software systems that the fun can begin.

(Also if you can route cables in your walls whole-home audio is way cheaper than you might expect: https://www.monoprice.com/product?p_id=10761 kicks ass)


Or just multiple chromecasts in the same group (chromecast audio ideally but theoretically I suppose you could use any chromecast with an HDMI converter to whatever audio format you need)


Roon actually does a really good job of matching timing between different devices if they are all using the same Roon transport, even when some are wifi and some are wired.


I found some nice bookshelf speakers in a thrift store, which got me wondering if there’s modern amplifiers available which are compact for my desk and simple, i.e.: not loaded with software for airplay etc that will be obsolete in 5 years. It turns out they are easily findable on Amazon or aliexpress, and they are under $60 (although they were half the price a couple of years ago).

They generally have bluetooth, which I don’t see as adding the same type of complexity as airplay as there’s no network or configurable software component. I did research to find one with high quality components and a good Qualcomm bluetooth chipset.

I do have airplay available because it’s usually connected to my desktop PC with an airplay server running, but if my main use case was a standalone setup like the author’s, I think his solution of using a raspberry Pi is a better long-term solution than buying a similar amplifier which includes airplay. Then the amplifier has a good chance of being useful for decades.


This would have been a perfect opportunity to use a Chromecast audio, it's a shame Google canned it when it was still useful.


Which HiFiBerry DAC are you going to use? Looks like they have about a dozen different DACs and I'd love some guidance on what would probably be a decent default choice.

Also, you mentioned that volume control is a next step. For me, that feels like a pretty fundamental thing. Isn't that built-in to the Spotify, AirPlay protocols, and DNLA protocols?


For hifi use, the HiFiBerry DAC2 HD is reasonable. All the other HiFiBerry DACs are good "for the price" but not that great on an absolute scale.

You'd be much better off with a USB DAC. For example, the Topping D10s or the JDS Atom DAC+ are both about $100 and you're unlikely to be able to tell the difference between them and literally any other DAC available at a higher price.


One thing that doesn't seem immediately obvious with the HiFiBerry DAC+ ADC Pro I have is that input and output are separate devices.

I assumed it would be a checkbox or two, but I couldn't mix the input jack into the output without doing it in software, and PulseAudio would drop samples at lower latencies. I admit I didn't troubleshoot this very long though.

MPD, Bluetooth and an AUX input was all I wanted, and I could make it work for scenarios that didn't need the low latency part.


I bought the DAC2 Pro. I don't know if it's the right pick for me yet -- I guess I'll find out!

The part about volume control was a little ambiguous: I can absolutely control the volume via the "soft" controls in AirPlay, DLNA, or my desktop's own soft mixer. What I meant was the "main" volume control on the receiver itself, which is motorized and controllable via an IR remote.

It's kind of a non-issue since I can just set the receiver's volume sufficiently high and then moderate using the "soft" controls, but I thought it'd be fun to try and automate the main control as well.


This looks great. I wish I had heard of HiFiBerryOS a year ago.

I ended up going with two Sonos Amps (one requirement for me was everything be wired) to play music in 2 zones. I searched a bit and didn’t come across anything like this.

Nonetheless, it seems worthwhile enough that I might tinker with it.


He mentions a Yamaha RX-495 and asks "circa late 1990s, I think?". I can confirm that it is. I bought that same model in 1997 or 1998 and still use it for my turntable.


Forgive my thread hijacking, but I suspect this is a place with people who might know the answer to my question.

Given that I have a pair of reasonably nice speakers but a lack of convenient wiring opportunities, I had thought to come up with something like an RPi based amplifier connected to each, with WiFi linking the two to form a stereo pair.

I.e. I have two speakers. Putting both of them near mains electricity is easy. Having wires connecting both to the same amp is a PITA. What cover thing could I do?


Not an expert but I think synchronising the signals might be challenging if you hack it yourself. I know Airplay 2 has the feature to pair speakers so perhaps if you can get Airplay 2 working on rpi then it might work. But in my experience the rpi experience is sub par; it was working great while it was working and then all of a sudden it stopped working.


It's very difficult and fighting an uphill battle to get two totally independent wifi music receivers to together output a single stero signal split across them. I don't think even dedicated systems like Sonos support it. Run speaker wire around the room perimeter to an amp and you will be infinitely happier.


It’s a massive challenge implementing this yourself but various smart speaker protocols have supported syncing speakers for a while now. I can’t speak for if they also split stereo signals (I think I read Yamaha can) but splitting a stereo signal is very easy even without comparing it to the challenge of syncing speakers.


> I don't think even dedicated systems like Sonos support it.

They do. So do HomePods, other mass brands. Not my cup of tea, but people seem to love them when they work.


If you want to attempt this you should use jack and one of the real time jack network protocols. I had it working for an hour, but the setup is too complex for leave everything in place setup. Was cool when it worked. I might have played more but I discovered that I couldn't do a mixer in the one room and keep the sync. (I was trying to do live music with listening in the next room so latency was important and I couldn't add delay to cheat)

I wish someone would spend time making the above easy, jack has some neat abilities that are lacking in all the whole house systems i've seen. Or maybe I just want to do weird things?


Bookshelf speakers in a small room only really need to be 4' apart, up to 6' or 8' for floor-standers in a large room. You could run the wires behind items on a shelf, under the floor, through a "wiremold" cover, paint the wire and tack it along a baseboard, or try "flat speaker wire".


I'm unclear of the exact problem. Are you having a problem with powering two passive speakers from the same amplifier? Or you have two active speakers (each with its own internal amplifier and plug into the wall) and you have a problem with connecting a stereo music source to them?


I did something similar, except I netboot a diskless hp thin client (cheap for previous gen and no/bad storage) with openelec. I opted specifically to not use a pi because I've had atrocious luck with reliability, especially of the sd drive. Once Kodi is running under openelec, everything can be controlled via Kodi remote on a phone. No bluetooth, but that's a feature imo.


I prefer diet-pi to HifiBerryOS, even for HiFiBerry devices. diet-pi can survive power failures, whereas HiFiBerryOS bricks itself. I use Roon on an old Intel NUC for the source usually, but it supports AirPlay etc.


If you are in the apple ecosystem an airport express or apple tv is the way to go. Instant multi room hifi, and super cheap.

You can even redirect your laptop/system audio into it with a click in the sound menu


I would love a USB audio(4) (OpenBSD) compatible FM transmitter. That's it, an FM transmitter detected as a USB sound card.


I have the same FM transmitter that the author mentions. If you're worried about an extra digital-to-analog step somewhere in your audio pipeline: it's a moot point. The transmitter's acoustics leave _a lot_ to be desired: there's background hum, bass goes very flat, there's tons of intermodulation around center frequency, and center frequency itself tends to jump around when amplitude increases. For small Part 15 transmitters, this sort of thing seems like the norm.


Why not just solder on an FM transmitter to an existing USB Sound card? Seems like a 5-minute hack.


This is incredible! I wonder if there is any limitations with audio streaming rate, especially for large flac files.


Uncompressed 2ch 44.1kHz 16bit PCM is only 1.4Mbps. Even 7.1ch 96khz 24bit is only 18.4Mbps. Should be plenty of headroom even on "only" 100Mbps.


If you are referring to in-network, I've never had issues with FLAC files up to 24/192. Out of network, I use Plex and PlexAmp which can encode the same files to OGG for more mobile friendly streamging


That's on my list of things to find out! I believe the Pi I'm using (the Model 3B) only supports 10/100 Ethernet, so bandwidth might be a concern. From a quick search plenty of other people are using Pis (including via HiFiBerryOS) as FLAC players, so that part shouldn't be an issue.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: