• The Vendor's Bazaar forum is for commercial offers and transactions. Only unmoderated members can post here.

    diyAudio provides this forum for the convenience of our members, but makes no warranty nor assumes any responsibility. We do not vet any members. Use of this facility is at your own risk. Customers can post any issues in those threads as long as it is done in a civil manner. All diyAudio rules about conduct apply and will be enforced.

New FIFO buffer for RPI/SBCs

Speaking in general, the different ESS DAC chips need different initialization and control commands.

The 9018S is a little different than the 9018K2M.

The 9018S is very different from the 9028PRO, which is the same as the 9038PRO.

Then there are the 9026PRO, the 9028Q2M etc etc.

What I'm saying is that it is not impossible, but it is not easy either.

It would be nice if the scope of the project could be made a little more narrow.

But it is definitely doable.
 
Where's the trickle down ESS9123 drop in chip, with the less-goofy, er, hyperstream2 that these new pro chips are sporting? 😀 And man, working around this closed source stuff... jeeze, a sub processor to pull it off.

Just a friendly jab*... looks like a fun design, and first hat with an interesting output stage.

*not a sabre fan
 
Last edited:
interesting output stage.

Do you know more then we do?? 😀


Planning for a flexible plugin-outpustage-HAT would be nice.

There are people who might would like to try e.g. transformers - which
a. can sound very good (IMO even better then class-A)
b. would require much less hazzle on the power side.

or others might want to work with tube stages.

Just keep it flexible.
 
Two questions: will your open source driver + microcontroller support the DAC chip's built-in digital volume control? I know digital vs analog volume control is its own debate, but for me I favor the convenience of digital. It's easy enough to opt out of you don't want to use it.

Will the output be single-ended or balanced?

Excited to see this new DAC. I got a Boss recently and love it. The only "problem" is that it's hurt my motivation to work on my various other diy DAC projects, since the Boss is so simple yet sounds phenomenal.
 
Hi.

Moode Audio 3.8 was just released with kernel 4.9.40 (and special audio and rt kernels - which include all latest Allo Piano21 updates).

However.
Allo still didn't manage - after all these weeks - to get the final piano-plus (= piano2.1 🙄) driver approved by the kernel maintainers.
We'll probably see it popping up with the next kernel release (4.9.41).

Why then did we go ahead with just a driver patch for the Piano21?
We just didn't want to wait any longer. It's been quite a while.
The code was finalized and made available to me already. Nice. The SW bugs were corrected. (Let's not talk about documentation any more - I think I made my point)
We then decided to go ahead with a driver patch for Moode in the audio kernels instead.

Let's hope Allo appreciates all our (not just the Moode folks!) extra efforts and patience to get their stuff (and business) going for all the folks out there.

Note: You might not find the documents updated properly! You'll rely on PcP, Volumio, Moode, DietPi and related forums/threads to get some related information
on the new functionalities.

Enjoy. --- I do think - after all - the Piano21 in DualMono is quite an enjoyable and good sounding DAC.
 
Last edited:
Enjoy. --- I do think - after all - the Piano21 in DualMono is quite an enjoyable and good sounding DAC.

I really appreciate the work you've done on this. I'm getting odd things happening from Moode 3.8 with Kali/Piano 2.1 in Dual Stereo. I'm finding (as I posted in the Moode thread) that I have to upsample to 352.8 or 384kHz to get playback working in the Advanced Kernel. Will do more investigation but I think Dual Stereo is not working as it should.
 
Last edited:
I really appreciate the work you've done on this. I'm getting odd things happening from Moode 3.8 with Kali/Piano 2.1 in Dual Stereo. I'm finding (as I posted in the Moode thread) that I have to upsample to 352.8 or 384kHz to get playback working in the Advanced Kernel. Will do more investigation but I think Dual Stereo is not working as it should.

Interesting. How about dual-mono?
 
I also tested switching dual-modes during playback. Works OK over here.

I don't have a Kali on the stack though.

Let see what Tim is coming up with.

Thanks for your input. I can confirm that playback in Dual Stereo works for me only at 352.8 or 384kHz, so maybe it's Kali that's creating this issue.
Dual Mono plays only through the L channel.
Edit:Having changed to Dual Mono I'm unable to get back to Dual Stereo. No sound at all. I expect I can get there with a reflashed card.
 
Last edited:
It seems Tim found a bug in his user interface.


For now - as a workaround I'd say, try to use alsamixer via ssh to set the related controls properly.
Make sure the volume control sliders for the DAC channels are on equal levels.
(Please tell us if the alsamixer approach works - that how I do it - for me it's "set and forget")

I wouldn't use HW volume controls during operation - at least for now!

There IMO shouldn't be any need to reimage.


As usual, there'll be a bug-fix release soon. As usual Tim collects all the issues for a couple of days and then releases a bug-fix release.

We might manage to get Allos new driver update which probably (or hopefully) comes with kernel 4.9.41.
That'll make things easier for all of us since both DACs in dual mode
would then be manageable by a single master control.

Enjoy.
 
It seems Tim found a bug in his user interface.


For now - as a workaround I'd say, try to use alsamixer via ssh to set the related controls properly.
Make sure the volume control sliders for the DAC channels are on equal levels.
(Please tell us if the alsamixer approach works - that how I do it - for me it's "set and forget")

My knowledge of ssh is pretty minimal so I'll wait for the bugfix and the Allo release. For now it's playing nicely in Dual Stereo at 352.8kHz.
Thanks.
John
 
Just some cmdline procedures to initialize alsa and its settings
for the Piano21.

Volume will be set to 100% !!!! Make sure you won't blow up your system!

If you prefer you can just use different % values (e.g. 60% vs. 100%) in below examples.

Just copy/paste below command blocks all at once as user root :

Code:
sudo su

Dual-Mono:
Code:
###Dual Mono######################################
rm /var/lib/alsa/asound.state
CARD="$(cat /proc/asound/cards | grep "\[PianoDACPlus"  | awk -F " " '{print $1}')"
alsactl init $CARD >/dev/null 2>&1
amixer -q -c $CARD set 'Dual Mode' 'Dual-Mono'
amixer -q -c $CARD set 'Digital' 100%
amixer -q -c $CARD set 'Subwoofer' 100%
alsactl store $CARD


Dual Stereo:
Code:
###Dual Stereo#####################################
rm /var/lib/alsa/asound.state
CARD="$(cat /proc/asound/cards | grep "\[PianoDACPlus"  | awk -F " " '{print $1}')"
alsactl init $CARD >/dev/null 2>&1
amixer -q -c $CARD set 'Dual Mode' 'Dual-Stereo'
amixer -q -c $CARD set 'Digital' 100%
amixer -q -c $CARD set 'Subwoofer' 100%
alsactl store $CARD

To control the results just run:

Code:
alsamixer

You might have to reboot or restart the audio app (mpd or squeezelite) to activate the alsa settings.


And you just have to do it once. Then you can leave it alone.
(I'd appreciate if you could try it Jonners.)


Good luck.
 
Last edited:
One more:

1.
Those who run the Kali:
Are you running the Piano21 in local-master or Kali-master clock mode?
See /boot/config.txt !

Code:
cat /boot/config.txt

is it:

dtoverlay=allo-piano-dac-plus-pcm512x-audio

of for better performance (potentially preferred option) :

dtoverlay=allo-piano-dac-plus-pcm512x-audio,glb_mclk

I'd strongly recommend to find out what difference these make.
I don't know if any OS has this switch implemented in the GUI though.

2.
Those who do not need subwoofer modes with its DSP firmware and just run the dual modes and the 2.0 mode can (and IMO should) remove the Allo DSP files altogether:

Code:
sudo rm -rf /lib/firmware/allo




Good luck.
 
Last edited:
Hi.

Below the command sequence to enable/disable Kali master clock for the Piano21:

As user root:

Code:
sudo su

Kali master-clock ON:
Code:
sed -i "s/allo-piano-dac-plus-pcm512x-audio.*/allo-piano-dac-plus-pcm512x-audio,glb_mclk/g" /boot/config.txt
sync
reboot

Kali master-clock OFF:
Code:
sed -i "s/allo-piano-dac-plus-pcm512x-audio.*/allo-piano-dac-plus-pcm512x-audio/g" /boot/config.txt
sync
reboot


Note: These commands will not work on PiCorePlayer, PcP is structured differently - they are not mounting their boot partition by default!!!


@Jonners: Your copy/paste went wrong. If you're on Windows just use "putty" for ssh.