Tone Board Left and Right Channels swapped when playing DSD over PCM

HI.
I have noticed a possible bug with the tone board generic version.
I have connected it via USB to a SBC (nano pi neo) and it is working perfectly until I noticed that when playing DSD material, the left and right channels are swapped.
I made sure that it wasn’t caused by something else by connecting a different USB DAC with DSD capabilities on the same SBC.This other DAC plays the same material using the same SBC and software as it should be. Not swapped.

How did I noticed the channels were swapped? By using the DSD material in two different ways: 1) Software converts it to PCM ,then playback.
2) Software transports it as DoP, then playback.

I am pretty sure it is not caused by something else.

Is there a firmware version for the toneboard available that fixes this issue?

strong textEdit:*The solution to this problem might be found on page 17 of the ES-9038Q2M-Datasheet. It indicates a possibility to swap channels if I am not mistaken.
Please verify on your side that this issue is reproducable and let me know when and how it can be fixed.
Thanks for your reply.

https://dl.khadas.com/Firmware/ToneBoard/

Khadas_Tone_Board_dfu_1223_Upgrade_Notes
1、Solve DSD reverse problem and fixed other bugs.

2 Likes

Thanks for the response. I tried to download the file from the location indicated above.
The file Khadas_Tone_Board_dfu-2018-1223-Upgrade-Firmware.zip is not present (any more).

Was it removed again?

Thanks in advance for you reply.

What’s wrong? I downloaded and updated. What was other issue withe the new fw since I haven’ tested yet. One thing I noticed was the previous version was v6.F2 while the new one is v6.C5

When I last checked. The file wasn’t there. Could be me going crazy ;). I checked again and now it’s there. I will download it and update via dfu tool and report back the results. This is the only issue I reported. Happy holidays.

I can confirm that the firmware 2018-1223 has fixed the dsd channel swapping issue. After compiling the dfu tool for arm and uploading the new firmware it plays dsd via dop perfectly! Thank you!

1 Like

I guess I was jumping to conclusions a little too soon. After one hour of playing with the tone board with firmware revision 1223 the system crashed. Powering it up again resulted in a tone board which appear to be working ok, but the sound is muted. I have checked the alsa controls but they are all at maximum level.
The only way I could get the sound back was to downgrade to another firmware version: I used 1207 Default maximum volume.zip.
Flashing it again to the 1223 version resulted in a muted system. Is there anything I am doing wrong or might have overlooked?

Thanks in advance for your reply.

I’ve used the new version for over 24h with no problems, mixed DSD and PCM usage.

2 Likes

Thanks for sharing your experience. Perhaps there’s something I might have overlooked.
This is my setup:
Linux Ubuntu 32 bit legacy kernel 3.xxxx (don’t know exactly, have to check)
Nano Pi Neo Air onboard usb pins connected to Khadas USB pins on the 40 pins header.
5V/4A power supply connected to the 5V and GND pins on the 40 pins header.
Custom made headless linux software audio player software.

Perhaps your setup is different from mine and is connected via the USB-c connector in stead?

I am running in Windows 10 64bits with Foobar2000. Haven’t tested with Audiophile linux yet but it did detect. Won’t have time to test with linux until I finish modding my tube amp caps. So far it;s working fine in windows.

1 Like

https://dl.khadas.com/Firmware/ToneBoard/

Khadas_Tone_Board_dfu_1226_Upgrade_Notes
1、Upgrade the XMOS firmware version to 6.f2
2、Fix the MAC machine does not recognize Tone Board

Notes:

  • 1.【DFU firmware 】is directly used to upgrade Flash which already contains TB firmware (such as the board we have shipped);
  • 2.【Flash firmware】is the initialization of the burning firmware, we call the 【factory firmware】, which contains some logical function of the configuration;
  • 3.If XMOS’s Flash already has firmware, they can be used to upgrade.The difference between them is that the 【DFU firmware】 displays 【Khadas Tone Control】 name, while the 【Flash firmware】 does not display our name for ODM consideration.

Hi Ben007,
I just installed the firmware and noticed the same behavior: Sound was muted after update.
I investigated a little further for I suspected it being a linux issue and not a tone board issue.
I removed the asound.state file rebooted the system. Now, with this new firmware (2018-1226) and after removing the asound.state file, the sound is back again. I do not fully understand why this action helped me to get back the sound, perhaps someone with more alsa knowledge can explain?

Thanks for the continuing upgrades. I will let the system run for a while and see if it remains stable.

Best Regards……

1 Like

OK. It is running fine now with the channels in the right place. But……
after a reboot the sound is muted again. It seams it always requires to do the following steps before startup, which is not normal:

rm -rf /var/lib/alsa/asound.state
chmod -x /usr/sbin/alsactl
reboot
chmod +x /usr/sbin/alsactl

When going back to the default factory firmware this issue does not happen but then the channel swapping is there again. Any idea’s?

Thanks

My guess is that the default for alsa is to keep whatever hardware volume there is and with new firmware it has changed to mute, take a look here how to set default volume in alsa https://unix.stackexchange.com/questions/210113/default-sound-volume-for-all-alsa-devices

I have no problem with reboot with FW:1226. Running Audiophile Linux. Probably your linux OS or something in the configuration need to change.








Thanks for the nice pictures! Looking interesting, Audiophile Linux.
One small note, though: If you look at the sound device, it’s name is xCORE USB Audio.
Looking at the latest firmware from 1226, it has a name changed to Khadas Tone Control.
So what you are showing is definitely not using the latest firmware :wink:

New “Khadas_Tone_Board_dfu-2018-1226-Upgrade-Firmware” zip file contain two bin files (Khadas_Tone_Board_dfu_1226 and Khadas_Tone_Board_Flash_1226), which file I have to use to upgrade Tone Board? I already upgraded my Tone Board with previous firmware “Khadas_Tone_Board_dfu-2018-1206-Upgrade-Firmware” and “Khadas_Tone_Board_dfu_1207-Default maximum volume”.

Audiophile linux was built sometimes in April 2017 without any update so it detected with the compatible driver which the driver didn’t have the Khadas name.

The same as drivers for windows. The name is not important except the driver needs to be compatible to ride the board.
-Thesycon-Stereo-USB-Audio-Driver-v224 ---->This driver would give you different name
-XMOS_TUSBAudio_eval_v4.11.0_2017-05-16 —>XMOS XS1-UB DJ (EVAL)

I upgraded both Khadas_Tone_Board_dfu_1226.bin then Khadas_Tone_Board_Flash_1226.bin. So far , it’s working fine.

Are the boards that shipped this month running the latest firmware? How can we tell which firmware version we have?

thanks

I did check mine with DSD content and seems to be fine with a board I got a couple of weeks ago. Not sure what firmware it has tho sorry.