• Disclaimer: This Vendor's Forum is a paid-for commercial area. Unlike the rest of diyAudio, the Vendor has complete control of what may or may not be posted in this forum. If you wish to discuss technical matters outside the bounds of what is permitted by the Vendor, please use the non-commercial areas of diyAudio to do so.

Support for Botic Linux driver

No, it should be enough to decompile botic.dtb using dtc, then following add lines relevant to serial port and compile it again to dtb.


&am33xx_pinmux {
uart4_pins: pinmux_uart4_pins {
pinctrl-single,pins = <
0x70 0x16
0x74 0x26
>;
};
};

&uart4 {
pinctrl-0 = <&uart4_pins>;
};


If above lines will not enable serial port, then I made mistake and you'll need to decompile dtb with serial port and compare the numbers in pinctrl-single,pins.
 
Thanks miero,

I have successfully managed to enable ttyO4 together with the botic driver. The way I did it was by adding the following in the pinmux@44e10800 section of am335x-boneblack-botic.dts file:

Code:
                pinmux_uart4_pins {
                        pinctrl-single,pins = <0x70 0x36 0x74 0x6>;
                        linux,phandle = <0x46>;
                        phandle = <0x46>;
                };

then in the serial@481a8000 changed/adding the following strong typed lines:

Code:
                serial@481a8000 {
                        compatible = "ti,omap3-uart";
                        ti,hwmods = "uart5";
                        clock-frequency = <0x2dc6c00>;
                        reg = <0x481a8000 0x2000>;
                        interrupts = <0x2d>;
                        status = "[B]okay[/B]";
                        [B]pinctrl-names = "default";
                        pinctrl-0 = <0x46>;[/B]
                };

compiling back to dtb and using that on the uEnv.txt did the trick.

I finally can control the DAM1021 isolated serial port through minicom on beaglebone with the botic driver working as well 🙂.

I also noted that when the ALSA driver is closed (nothing playing) and while beaglebone is powered on the DAM1021 is trying to lock unsuccessfully to a signal printing an L384 line every second on its serial port and producing a loud click noise on every second as well. The click noise is also heard each time a track is paused or skipped. As well as each time the sample ratio changes.

Would it be possible for the botic driver to have an optional setting and always transmit silence on the i2s interface even if ALSA is closed? I think that would solve the issue of the DAC trying to sync to a signal and producing those lousy clicks every second.
 
I also noted that when the ALSA driver is closed (nothing playing) and while beaglebone is powered on the DAM1021 is trying to lock unsuccessfully to a signal printing an L384 line every second on its serial port and producing a loud click noise on every second as well. The click noise is also heard each time a track is paused or skipped. As well as each time the sample ratio changes.

Would it be possible for the botic driver to have an optional setting and always transmit silence on the i2s interface even if ALSA is closed? I think that would solve the issue of the DAC trying to sync to a signal and producing those lousy clicks every second.

Or according to the maker of the DAC for the I2S interface to satisfy the following:

* If bitclk active, provide word clock and output zeroes on data line if no data otherwise.
* If bitclk inactive, still keep data line at zero.
 
I'm interested in the question: How are people controlling their BBB appliances? I believe Miero has some advances planned for Botic 6, and I am working on a few things that are specific to my BBB implementation. I started a thread on the topic and invite your contributions there. Best, Frank
I found the easiest to control with nicest apps was to install Squeezelite on top of the botic driver and have an LMS server on the network. But I'm also very interested to see how Roon works out over the next few months.
 
I found the easiest to control with nicest apps was to install Squeezelite on top of the botic driver and have an LMS server on the network. But I'm also very interested to see how Roon works out over the next few months.

On the other thread (this link) I'm interested in not only in these (non-Botic related) questions but also other kinds of control functions - like: physical source switching, playback modes, DSP control, integration with other components, etc. ... people's various software and hardware control setups for the BBB. Anybody using Brian's 'playground' on Hermes? 😛

PS: Squeezelite with iPeng is my choice as well for wrangling the music library.
 
nautibuoy: You can try to install ARM package of hqplayer and report results, here is an example:

wget https://www.signalyst.eu/bins/naa/v3/jessie/networkaudiod_3.0.0-24_armel.deb
dpkg -i networkaudiod_3.0.0-24_armel.deb

then try to execute /usr/sbin/networkaudiod

I do not expect that DSD will be working, because native DSD is not supported in linux yet.

This morning I've finally been trying to run the HQPlayer NAA module on my Botic setup and I think I'm very close to getting it working...

Starting with a Botic4 install I have managed to install the NAA package (slightly different to the one above) and start up networkaudiod. This NAA instance is seen by HQPlayer running on my music server (Win10 PC) but playback fails and networkaudiod terminates. In fact everything seems to be OK and the issue seems to be that ALSA doesn't understand the data HQPlayer is passing to it but I'm not sure where to go from here so open to suggestions please.

Below are the screengrabs of networkaudiod activity.

If I can get this working I'll do a post with the how...

Cheers

Ray

An externally hosted image should be here but it was not working when we last tested it.



An externally hosted image should be here but it was not working when we last tested it.
 
Last edited:
Try to choose one format/rate (if possible) and retry; for example regular 44100/16bit ... from the msg "ConvertSamplesI(): unknown format" it is not clear where is the problem.

IMHO you could contact authors of HQplayer for help, because playback from other applications works and they know what is their application doing.
 
Try to choose one format/rate (if possible) and retry; for example regular 44100/16bit ... from the msg "ConvertSamplesI(): unknown format" it is not clear where is the problem.

IMHO you could contact authors of HQplayer for help, because playback from other applications works and they know what is their application doing.

Thanks miero. I sent a mail with the screengrabs and the HQPlayer logfile to Signalyst before I posted here; we'll see....

Ray
 
No, I have been living in the PCM world and will probably continue there. Main reason is that I have been able to implement a very reasonable LADSPA active 3-way speaker crossover on the BBB, and the filters adapt to avoid resampling. However, I believe DSD offers advantages over PCM for many common transducers and I follow your work with interest. ...best of luck for success!
 
hello miero,

the author of HQPlayer has produced a new build of his network audio adaptor module that he thinks will fix the problem I encountered. Unfortunately I'm unable to use it because of a dependency issue. The new NAA release is built on Stretch but you use Wheezy for Botic.

I first tried to update to Botic5 to see if that would resolve the dependency but without success, I get this message;

An externally hosted image should be here but it was not working when we last tested it.


I uninstalled networkaudiod and ran the Botic5 update anyway.

So I need V5.2 of libstdc++6 to proceed with testing the new HQPlayer NAA release. Do I:

1. Try to install the V5.2 release of libstdc++6 from the stretch library on Botic5.
2. Install a Stretch image onto the BBB and then try to Boticize it.

Grateful if you could give me a steer. Success feels close but I'm not confident of my Linux skills.

Cheers

Ray
 
Hm, the v5.2 is too new from the Debian point of view, because it is not in the stable distribution. The stable has v4.9 and botic which is now used oldstable has v4.7.

The best option would be if HQplayer author would provide version for v4.9 and we would updgrade botic to current Debain stable. From my PoV I also would need to port ALSA patches to new version.

If you do not need 352/384 sample rates you can try to update botic first to stable and then to testing. But I expect many non-trivial issues to solve, so I do not recommend this one.
 
Thanks miero.

I've asked the HQPlayer author if he could release the fix for Wheezy or Jessie; as he doesn't seem to have a Wheezy library I guess Jessie is the most likely if he's prepared to do it.

Incidentally in the NAA change file for the fix release the note says;

"Do not include unsigned sample formats in the format mask"

Is that anything Botic5 could be configured to resolve?

Lets see how this goes...

BTW, my primary interest in hooking Botic up to HQPlayer is to upsample my CD rips to DSD128/256 to pass to my Buffalo IIIse as I like the sound it produces.

Ray