Thank you for your donation!

Khadas Tone Board

I noted your "New MoOde player" post. Nice.

Have you resolved the Hardware Volume issue?

Your posts have got me interested in the Khadas Tone Board. If you are willing and have the time, could you do the following couple of steps?

Step 1:

pi@moode:~ $ lsusb
Bus 001 Device 002: ID 041e:3125 Creative Technology, Ltd
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

This is just an example with my Creative W2 USB-Audio adapter plugged in. Note that it had USB VendorTongueroduct ID 041e:3215.

I expect you'll see an entry like xCore ... or XMOS ... for your KTB. Please note the USB VendorTongueroduct ID XXXX:YYYY and use it in the following step.

Step 2:

pi@moode:~ $ sudo lsusb -v -d XXXX:YYYY > ktb-lsusb.txt

The ktb-lsusb.txt file generated in this step may be long (it was 235 lines for my Creative-W2). Please send it as an attachment to your reply. Thanks.

Hi Kent

Not solved for now, and as i do not have so much experience i let as it is. I will do a check with volumio again.

What you ask for:
step 1 Bus 001 Device 004: ID 20b1:000a XMOS Ltd
step 2 attached


Attached Files
.zip (Size: 1.92 KB / Downloads: 4)
(03-30-2019, 10:53 PM)liv_s Wrote: Hi Kent

Not solved for now, and as i do not have so much experience i let as it is. I will do a check with volumio again.

What you ask for:
step 1 Bus 001 Device 004: ID 20b1:000a XMOS Ltd
step 2 attached


Thanks for that. I'll let you know if I can spot any clues.

So I've been diagnosing the Khadas Tone Board with Moode r5.3 and shooting Tim posts as I do. We've figured out the Hardware Volume Control detection problem. It was due to a blunder in the Khadas XMOS firmware which was inconsistently encoding the USB string descriptors for the interfaces. Tim has adjusted for this behavior in the moOde r5.3.1 update.

The good news? moOde now detects the presence of the KTB's Hardware Volume Control and the MPD config panel offers all three choices for volume control: Hardware, Software, and Disabled.

The not-so good news? The Khadas hardware control function seems to work only for PCM playback. With DSD material, I have either to select Disabled or select Hardware and set moOde's volume at 100 percent. I can then play native DSD and DSD-over-PCM while controlling volume at my amplifier.

This is a Khadas issue, not a moOde issue; it affects that other FOSS RPi music player too. The DAC chip spec sheet says it can do hardware control and Tim tells me it works with his Allo Katana, which uses the same chip.

I've spent a lot of time on the Khadas forum reading all the back posts and then posting about the string descriptor problem. Candidly, I'm not holding my breath until they fix either this problem or solve the DSD hardware control problem. The XMOS controller is well documented and third parties have hacked a bit at the firmware. Perhaps one of the DIYaudio cognoscenti will solve the problems.

Since last firmware update nothing happen, as expected. I will not see soon something as guys from Khadas intend to provide a second edition of KTB.
I am not looking for a solution right now, as I want to keep hardware volume at 100%, as I did before.
And another solution is to do Sox settings as 32 bits and 384, maximum for KTB (I know is not ok for quality).

However, it seams that KTB has a higher volume at output and this will generate distorsions.
I discover this as I install between KTB and AVR (ONKYO TX609) an EQ Kenwood GE7030. And the bargraph for some songs are shown at high limits. If I set the volume in alsa at 90% (or lower) the sound level is going down and distortions fade away. But in this case I can not play DSD, which point me to the solution above (Sox).
My question is if there is an other possible setting to decrease output level and to maintain hardware volume at 100%.
I hope I was clear.
Where is the distortion being generated? If the downstream equipment is being overdriven by the KTB, try inserting a passive attenuator between them. 

Hi Kent,

What I know:
- KTB to power amplifier - distorsions at 100%
- KTB to AVR (with or without EQ) - distorsions at 100%, none or inaudible at 70%
- CD player to AVR, same input - none
With the same flac source for first two, different cd's for last.
So I have to go with your solution, thanks.
Or to make settings in AVR to reduce input with lets say -5dB (Onkyo Intellivolume).
Analog part of KTB deliver higher level which has an impact downstream.
I will do further tests.

I do several tests for last 2 hours and I have to admit I was wrong.
The culpit is EQ. It induce several distortions by increasing for some eq curves the output. I do not think is normal, but this is another discussion.
So my conclusion is KTB = ok.

Kent, can you delete my last posts please, does not help the topic
Hi guys

sorry to revisit this thread, but i've just ordered KTB. Clearly I didn't search far enough to discover any compatibility issues with moode which is very much my software of choice. With the KTB 2 seemingly on hold since one of their main developers left to start his own product line, i gather the original ktb will persist for a bit longer. I hope they fix this issue. In the meantime, just to recap, what should I do - avoid any EQ tweaking, set volume control to hardware and 100%? 

Perhaps  I ought to add my voice to the requests that Khadas fix this issue in the firmware.
Hello, here again.

this time with a Khadas Tone Board dac just acquired
There is a HAT card installed (HiFiBerry Digi+ Pro) but moOde is configured to use the usb dac
Everything is going fine except a PHP warning in the Audio Info

PHP Warning: Invalid argument supplied for foreach() in /usr/local/bin/moodeutl on line 189

I suppose this is just a "cosmetic" issue ... but I'm not sure

Thanks in advance

here the moodeutl -l info

pi@moode-pt:~ $ moodeutl -l
20200206 102541 worker: -- Start                                                                                                                      
20200206 102541 worker: Successfully daemonized                                                                                                      
20200206 102541 worker: Integrity check (passed)                                                                                                      
20200206 102541 worker: Session loaded                                                                                                                
20200206 102541 worker: Debug logging (off)                                                                                                          
20200206 102541 worker: Device raw: (0:ALSA|1:Control|i2s:none)                                                                                      
20200206 102541 worker: Device cfg: (USB audio device|1|1|Khadas Tone Control |0)                                                                    
20200206 102541 worker: ALSA volume set to (0%)                                                                                                      
20200206 102542 worker: -- System                                                                                                                    
20200206 102543 worker: Host name     (moode-pt)                                                                                                      
20200206 102543 worker: moOde release (6.4.1 2020-01-23)                                                                                              
20200206 102543 worker: Raspbian OS   (10.2)                                                                                                          
20200206 102543 worker: Linux kernel  (4.19.83-v8+ #1277)                                                                                            
20200206 102543 worker: Platform      (Pi-4B 4GB v1.1)                                                                                                
20200206 102543 worker: Architecture  (aarch64)                                                                                                      
20200206 102543 worker: MPD version   (0.21.16)                                                                                                      
20200206 102543 worker: CPU governor  (ondemand)                                                                                                      
20200206 102543 worker: USB boot not available                                                                                                        
20200206 102543 worker: File system expanded                                                                                                          
20200206 102543 worker: HDMI port off                                                                                                                
20200206 102543 worker: File check (OK)                                                                                                              
20200206 102543 worker: -- Network                                                                                                                    
20200206 102543 worker: eth0 exists                                                                                                                  
20200206 102543 worker: IP addr (                                                                                                          
20200206 102543 worker: Netmask (                                                                                                      
20200206 102543 worker: Gateway (                                                                                                            
20200206 102543 worker: Pri DNS (                                                                                                            
20200206 102543 worker: Domain  (None)                                                                                                                
20200206 102543 worker: wlan0 does not exist                                                                                                          
20200206 102543 worker: -- Audio                                                                                                                      
20200206 102543 worker: ALSA outputs unmuted                                                                                                          
20200206 102543 worker: ALSA card number (1)                                                                                                          
20200206 102543 worker: Audio output (USB audio device)                                                                                              
20200206 102544 worker: Audio formats (PHP Warning:  Invalid argument supplied for foreach() in /usr/local/bin/moodeutl on line 189)                  
20200206 102544 worker: ALSA mixer name (Khadas Tone Control )                                                                                        
20200206 102544 worker: MPD volume control (disabled)                                                                                                
20200206 102544 worker: Hdwr volume controller exists                                                                                                
20200206 102544 worker: Max ALSA volume (100%)                                                                                                        
20200206 102544 worker: -- Services                                                                                                                  
20200206 102544 worker: Reset renderer active state                                                                                                  
20200206 102544 worker: MPD conf updated                                                                                                              
20200206 102544 worker: MPD started                                                                                                                  
20200206 102545 worker: MPD accepting connections                                                                                                    
20200206 102545 worker: Configure MPD outputs                                                                                                        
20200206 102545 worker: MPD output 1 ALSA default (on)                                                                                                
20200206 102545 worker: MPD output 2 ALSA crossfeed (off)                                                                                            
20200206 102545 worker: MPD output 3 ALSA parametric eq (off)                                                                                        
20200206 102545 worker: MPD output 4 ALSA graphic eq (off)                                                                                            
20200206 102545 worker: MPD output 5 ALSA polarity inversion (off)                                                                                    
20200206 102545 worker: MPD output 6 ALSA bluetooth (off)                                                                                            
20200206 102545 worker: MPD output 7 HTTP stream (off)                                                                                                
20200206 102545 worker: MPD crossfade (off)                                                                                                          
20200206 102545 worker: Audio source (Local)                                                                                                          
20200206 102545 worker: Output device (Local)                                                                                                        
20200206 102545 worker: UPnP renderer started                                                                                                        
20200206 102545 worker: Shellinabox SSH started                                                                                                      
20200206 102545 worker: USB auto-mounter (udisks-glue)                                                                                                
20200206 102545 worker: -- Music sources                                                                                                              
20200206 102545 worker: USB sources (none attached)                                                                                                  
20200206 102545 worker: NAS and UPnP sources (none configured)                                                                                        
20200206 102545 worker: -- Miscellaneous                                                                                                              
20200206 102545 worker: Saved MPD vol level (0)                                                                                                      
20200206 102545 worker: Preamp volume level (0)                                                                                                      
20200206 102546 worker: MPD volume level (0) restored                                                                                                
20200206 102546 worker: ALSA volume level (100%)                                                                                                      
20200206 102546 worker: Auto-play (Off)                                                                                                              
20200206 102546 worker: Maintenance interval (3 hrs)                                                                                                  
20200206 102546 worker: Screen saver activation (Never)                                                                                              
20200206 102546 worker: Session permissions (OK)                                                                                                      
20200206 102546 worker: Watchdog started                                                                                                              
20200206 102546 worker: Ready

and the aplay -l info (if needed)

pi@moode-pt:~ $ aplay -l
**** List of PLAYBACK Hardware Devices ****                                                                                                          
card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]                                                                                    
 Subdevices: 7/7                                                                                                                                    
 Subdevice #0: subdevice #0                                                                                                                          
 Subdevice #1: subdevice #1                                                                                                                          
 Subdevice #2: subdevice #2                                                                                                                          
 Subdevice #3: subdevice #3                                                                                                                          
 Subdevice #4: subdevice #4                                                                                                                          
 Subdevice #5: subdevice #5                                                                                                                          
 Subdevice #6: subdevice #6                                                                                                                          
card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 IEC958/HDMI [bcm2835 IEC958/HDMI]                                                                      
 Subdevices: 1/1                                                                                                                                    
 Subdevice #0: subdevice #0                                                                                                                          
card 0: ALSA [bcm2835 ALSA], device 2: bcm2835 IEC958/HDMI1 [bcm2835 IEC958/HDMI1]                                                                    
 Subdevices: 1/1                                                                                                                                    
 Subdevice #0: subdevice #0                                                                                                                          
card 1: Control [Khadas Tone Control], device 0: USB Audio [USB Audio]                                                                                
 Subdevices: 1/1                                                                                                                                    
 Subdevice #0: subdevice #0                                                                                                                          
card 2: sndrpihifiberry [snd_rpi_hifiberry_digi], device 0: HiFiBerry Digi+ Pro HiFi wm8804-spdif-0 [HiFiBerry Digi+ Pro HiFi wm8804-spdif-0]        
 Subdevices: 1/1                                                                                                                                    
 Subdevice #0: subdevice #0    
moOde only supports a single configured audio device either I2S, On-board or USB.

Forum Jump: