Path to noiseless Linux streamer...

Amazing work. I'm going to replicate soon.

Two comments or doubts: (excuse if i'm noob)

1)Dont you need to change the governor aswell from default 'ondemand' to a more conservative one, or fixing the frequencies is enough?

2)Don't you need to apply realtime kernel patches aswell to that specific kernel version?

Thanks for your useful guide.
 
1. Yes, the governor is changed to user-space, so no governor is used at all, fixed freq at 550mhz

2. No. I tried the RT patches and deceided against them. We want high throughput instead of low latency, which is the opposite of RT patches. RT patches have a different purpose than what we want for a PCM Player.

...but you can try...thats just a different project.
 
Last edited:
  • Like
Reactions: 1 user
I have noticed grammatical errors along with some instructions that could be clearer. I think folks familiar with this will know what I mean. Nonetheless, I am going to make corrections and post what I SINCERELY hope will be the final revision unless Blitz would like the instructions for NAS and Rpi type boards to be included as an addendum.

My enthusiasm for this project is my excuse for wanting to post it as soon as possible.

Every time I listen to it I am amazed at how good it is. One usually expects for the warts to start making themselves apparent after a week or so. Hasn't happened yet.
 
Very interesting indeed. I want to try it in an UP Squared x86 Intel Pentium N4200 connected to an external USB card via mini-pcie. Quite a different setup from the proposed in the guide, just 4 cores, intel platform..... However I still have to finish to mod my DAC before testing...
 
Because Dietpi/Debian during its install process determines you specific hardware and preselects the necessary drivers and setting, downloads them dynamically for your specific hardware. So, we can anticipate that even when we are on x86, the images will look differently quiet a bit.

A good example is the upsquared x86 board mentioned above...some of those boards have a direct i2s interface out, so no usb needed anymore...when /if debian recognizes this board and installs the required upsquared i2s driver to make this board work...same for Amd vs intel drivers etcetc.

The other thing which i found frustrated are all the img of different distros for specific hardware being not actual or relevant for my selected hardware anymore or not maintained anymore (like archphile).

Yes, you can apply the manual for any dietpi version in principle. They do change the kernels and kernels do change drivers and driver do sound differently...but the manual will work as well for the future, no matter which version will come.
 
Doing the work on the kernel is hardly arduous work and is, in fact, interesting to get a glimpse of all that is involved in an operating system.

I had used NTlite for WINDOWS years ago when cMP was active and I was surprised how similar this is to that. I tend to think Blitz has minimized the kernel to its limits. Being one who has to try things I did build a kernel with about everything removed I could think I could get away with.

Since the client player, unless you turned it off, will start where it left off after reboot I knew the thing would play music with my further minimized kernel but I could no longer reach the server with MPDctrl - so I had ruined the LAN connectivity, there was no way to control MPD.

I discovered an interesting tool and I am trying to figure out what use it may have for kernel building. I am obsessed with the OS being as small as possible. It is the less command.

I installed it and when who ask for lsmod it will tell you the modules that are installed on your kernel and what, I assume, is the default CPU core the module is assigned to. Of course, Blitz's boot instructions override this but my thought was that it could be interesting to use this tool and only install the modules that DIETPI really needs. Of course, it is not that simple.

The worst part of making one's own kernel is that the process takes a long time after asking for make . When I made my bad kernel I had already set the CPUs to 550MHz and that made the process take a REALLY long time. The BLITZ kernel with the CPUs set at 2200MHz took a little over two hours to complete.

Another wonderful thing about DIETPI is the ability to make a backup without buying other software like one would have to do with WINDOWS. All one has to do is restore the good image and all is well after screwing something up. Assuming a backup was made!
 
Thats actually a good little detail you observed here...before compiling the kernel with the make statement, one should NOT isolate CPU-Cores and set the governor to performance and max freq (use dietpi-config)....and start the process with make -j8 to use all cores...that brings it down to 20 min on a RP4 it takes 3 hours. Normal waiting time.

If you want a mini.mini kernel there s a simple way of getting there:

Once your system is fully operational...let music play...use everthing you use, sothat Linux need to enable all the modules which are set to "M" in menuconfig.

After that you can go into the process to compile a new Kernel , but instead of using

make olddefconfig

you use

make olddefconfig
make localmodconfig

...this will enable only stuff, which is really used NOW: ""make localmodconfig" Create a config based on current config and loaded modules (lsmod). Disables any module option that is not needed for the loadedmodules."

The Kernel is even smaller, but you have the risk, that something afterwards is not working...e.g. you SATA or your LAN...tried it, been there.

Dietpis Kernel is only 80MB...so i saw no need to take the risk that you have a non functional system...but you can try...
 
Last edited:
  • Like
Reactions: 1 users
And you, my friend, are supposed to be taking a vacation from audio foolishness!

Of course your counsel is always welcomed!

Hope all is well. If I try it again I will keep the above in mind.

You know how I am: what started as a pep talk for making one's own kernel got off track all too quickly.

Take care,
 
No, we do not use WTFPlay...only dietpi as a very light version of debian with lots of little nice implementations which make installation and configuration much easier...plus good things like ramdisks for log files etc...its just a breeze to work with and works from Raspi, Socs to x86, very universal platform.

But its always debian.

The asus board is the best sounding version IMHO and I run it incl. CPU without graphics card at 35W, everything included, measured with a poweradapter.

But you could use any platform you like which dietpi supports. Rp4 sounds very well, but is no longer cheap and not better than x86...softer sounding, less transparent. A very good budget soltution is a N5100 minipc from amazon or ebay, around 200-250...they consume 11W. Got one here as well.

The remote control for mpd is any phone or tablet, i use ipad and soundirok. Nice cover arts.
 
Thanks Blitz,
For a start I will go with N5100 to compare it to my Ram booted Server 2016.
Dos Debian run in ram too or are just the Music files loaded into Ram?
For Server 2016 Ram booting made a significant difference.
As an off topic how can I find a schematic of Andrea's Dac?

Klaus
 
I boight this one...passive cooling is important...https://www.amazon.de/Wifujoy-Windows-Computer-Expandable-Performance/dp/B0B5YTVZQM

There are similar ines from other suppliers...the usb 3.0 output sounds best as it is directly part of its SoC...

Well, the system runs in RAM (no paging, set by dietpi ), you can check this with HTOP in Linux/Dietpi. The Linux log files are in a ram disk as well, so no disk traffic. With the MPD settings given MPD loads always a complete song in RAM and than plays it. Even i got convinced that i could not hear a difference anymore if it come now from sata or LAN as a source and there is no longer a need to keep a separate core for LAN, which helps.

In A four core system like N5100 you use core 0 for housekeeping (Linux, all other stuff), core 1 for USB output, core 2+3 for MPD (MPD has 4-5 child processes like small sub programms working together, example: Flac-decoder if u use flac (better u use wave)).

So, the bigger the ram you order, the more titles will be stored in ram over time while playing. Once Ram is full, the oldest title will be kicked out of memory by MPD to make space for the titles you selected.

And yes, this made and audible difference...the playback from ram.


No, Andreas Fifo/Dac is not open source...but he got a webside with to s of documentation. thewellaudio

I had many dacs, modified my soekris as a great r2r dac etc...played with custom filters from tnt and others...but kn the end i preffered the soekris with NOS filter, fewest mods to the digital signal somehow was my taste. I always like Doede Doumas dddac work as well. Very clear, very dynamic and life like.

Andreas DAC now came as a package with NOS as one feature...so a big checkmark for me...than very easy to integrate his highend clocks...next checkmark...than i2s input, so i can select my input board...same with psu options...it was open at those places where i want to do my own stuff and influence the sound. Salas Shunt regs everywhere except the clocks are on supercap in battery mode.
 
Last edited: