• 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

I'm trying to install a stock Botic distro, but the BBB seems to freeze with all 4 LEDs turned on after I add Botic to the Debian Stretch install.

I'm basically following what Twluke previously wrote here:
https://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver-211.html#post4946336

1) I flash Debian 9 stretch on the SD card
2) Boot from SD card and modify uEnv.txt to remove comment on last line to flash to eMMC
3) Reboot and allow it to finish flashing eMMC
4) Remove SD card while powered off
5) Restart booting from eMMC
4) wget http://repo.ieero.com/botic/pool/main/l/linux-upstream/linux-image-4.8.13-botic7-rc3_1_armhf.deb
5) dpkg -i linux-image-4.8.13-botic7-rc3_1_armhf.deb
6) Modify /Boot/uEnv.txt to add dtb=am335x-boneblack-botic.dtb
7) Shutdown and power back on. At this point the 4 LEDs turn on and stay that way without the BBB appearing back on my network

Perhaps there's a step I missed, or am I not giving it enough time to reboot?

If I can get that working, I'll try and install gmediarenderer to add UPnP capability to the BBB and try streaming DSD to it again.
 
After a lot of time spent reading and trying to get a functioning Debian build with Botic, MPD and Upmpdcli (gmediarenderer can't do DSD as it turns out), I managed to get Debian 9 stretch with Botic installed on the uSD card (could never get it to flash the eMMC successfully though). The problem at that point was that I couldn't install MPD and Upmpdcli because I had no more space in the uSD partition (the Debian image capped the partition at about 3.2 Gb). I tried to expand the partition, but without any luck.

I then tried Twluke's last posted image (thank you!). With that install I was able to add Upmpdcli, but every time I booted the BBB I would have to ssh into it and apply:
Code:
 sudo mount -o remount,rw /dev/mmcblk0p1 /
And then restart both MPD and Upmpdcli.
Once that was done, I could see the UPnP device in Audirvana, but upon playing a track I would get an error saying that it couldn't start the device.
I tried to see if I would stream from Roon/HQPlayer to the NAA on the BBB and that worked only once. All subsequent tries resulted in Roon saying it lost control of the device.

I'm obviously out of my depth at this point; any suggestions on how I can try to debug?

Thanks
 
Member
Joined 2007
Paid Member
Last edited:
-snip-
With that install I was able to add Upmpdcli, but every time I booted the BBB I would have to ssh into it and apply:
Code:
 Code:
      sudo mount -o remount,rw /dev/mmcblk0p1 /
IMHO, the boot file system should be usually in /dev/mmcblk1p1, whether it is eMMC or uSD. Did you check your /etc/fstab? and uuid of the booting device (lsblk -f).
I tried to see if I would stream from Roon/HQPlayer to the NAA on the BBB and that worked only once. All subsequent tries resulted in Roon saying it lost control of the device.
The botic-BBB system works fine as NAA for HQP. The problem may be associated with the setup of HQP in Roon setting, particularly with the IP address setting of NAA.

Regards,
 
Joey, not sure if this might work for you. I use a Japanese Linux distribution for BBB/BBG that incorporates Botic and appears to have the Upmpdcli functionality that you are wanting. I have never used that aspect of the software and therefor cannot comment on its usefulness. However, the basic portion of LightMPD does work quite well as an MPD server for a BBB / Hermes/ Cronus front end. It is a very lightweight install and runs in RAM.

The download link for the software is: lightMPD-v1.1.0-botic7-4.9.38.zip - Google Drive

The software page for BBB is: beaglebone - デジファイのおと

The install / config instructions are on this page: lightMPD - lightweight Music Player Daemon (MPD) - デジファイのおと. The only add that I would make to his instructions are to make the FAT32 partition you have created bootable (add boot flag).

The site is only available in Japanese so you will have to struggle with translated Japanese.

Regards
 
Thanks Kirks!
I was trying to combine the LightMPD and Botic files in one from the websites you posted yesterday, but wasn't sure I had the right ones.
From what I gather, the extracted folder is copied directly to a Fat-32 formatted uSD card, the .conf files are edited to add the network addresses, audio output to Botic and optargs in uEnv.txt, and then the partition must be made active. Will give it a try in the coming days.
 
Hey guys, could someone please advise me in building Botic driver for somewhat different platform?

I want to build it for the BeagleBone Enhanced by Sancloud. It has the advantage of 1G ethernet, which could be beneficial for higher DSD rates of HQPlayer, when used as NAA.

I have latest Debian image installed on the BBE, as well as linux headers for the current kernel (4.14.108-ti-r103).

What I did so far, was to checkout latest from Miero's botic-dev repo, and tried to run "make" inside cloned folder in various ways. It always wants to find the "am33xx.dtsi" which do exist in the "/opt" folder, but I can't figure out how to tell the compiler to look there.

This must be pretty obvious for someone who's dealing with this on a regular basis, but I just can't get my head around this.

Would appreciate any help.

Thanks,
Fedor
 
Anyway, I've built the driver, now I'm struggling to install it. Running "make install" doesn't help, as I still see "card 0: Black [TI BeagleBone Black]" in the aplay -l output.

I've copied the compiled *.dts into corresponding boot folder, and set dtb variable in the uEnv.txt. But there is no change.

I fear that the only way to proceed is to rebuild the kernel.
Or maybe there could be some other way?
 
-snip-
6) Modify /Boot/uEnv.txt to add dtb=am335x-boneblack-botic.dtb

7) Shutdown and power back on. At this point the 4 LEDs turn on and stay that way without the BBB appearing back on my network

Well, I found the cause of this 4-LED-tunred-on problem. This is due to the line below in /boot/UEnv.txt left uncommented.

enable_uboot_cape_universal=1

Turning it into a comment by # should solve the problem. If still interested in this method, you might give it a try.

Regards,
 
Well, I found the cause of this 4-LED-tunred-on problem. This is due to the line below in /boot/UEnv.txt left uncommented.

enable_uboot_cape_universal=1

Turning it into a comment by # should solve the problem. If still interested in this method, you might give it a try.

Regards,

Your suggestion completely fixed it. I got it to flash Debian 9 stretch to the eMMC successfully, and then proceeded to add botic7 and then install MPD and Upmpdcli. Aplay reported no soundcard but that seemed to have been fixed by also commenting out enable_uboot_overlays=1.
I tried unsuccessfully to compile a newer version of MPD so I had to settle with the older version in the Debian repo (0.19.21).

The only issue left is that it only plays DSD64, all higher rate DSD get downsampled to PCM 768 kHz by MPD. According to the changelog, MPD version 0.19.21 should be compatible with DSD512.

The MPD log shows the following:
Code:
alsa_mixer: Failed to read mixer for 'Botic': no such mixer control: PCM
pcm: Failed to convert for "Botic" [alsa]: PCM conversion from f to dsd is not implemented
Perhaps it's something I missed in my BBB-Botic configuration?

Thank you all for your help!
 
Your suggestion completely fixed it.
Okay, that would be good for you.

The only issue left is that it only plays DSD64, all higher rate DSD get downsampled to PCM 768 kHz by MPD. According to the changelog, MPD version 0.19.21 should be compatible with DSD512.
When I start to install MPD, I first to install the current MPD by 'apt-get install' because this brings the files and libraries necessary for later building of custom MPD. You might try it.

Regards,
 
I just tried to remove MPD and then re-install it by compiling a new version (as per the directions in the MPD manual) but I get multiple errors and it aborts.

Do you think the inability to play DSD256 and 512 is related to the MPD version 0.19 vs 0.21?

First of all, playing DSD512 on MPD requires a big endian format like DSD_U32_BE. However the debian system on BBB only support a DSD format of little endian type like DSD_U32_LE, which can not play the DSD source higher than DSD256. So, using MPD on botic BBB for the purpose of playing DSD512 can be said almost impossible.

Of course, the botic BBB can be still used as NAA for HQ player, in which, the ALSA on botic BBB can deal with the DSD512 signal of DSD_U32_LE format from HQP, which will give you excellent sound quality.

If you want to still try DSD512 on MPD, then you have to switch the system from debian to Arch linux, which can accommodate with DSD512 file on MPD. I had confirmed it previously by preparing a small uSD of Arch linux system but the advantage of botic system, i.e., I2S connection must be abandoned.

Coroner21 is currently working with Arch linux with botic support but I'm not sure his system can play DSD512 on MPD.

Regards,
 
Hello,
finally installed Linux and botic on bbb.
Followed some instructions to install Roon too. And all woks out perfect.

Only problem for me is to get Apple Music to play with this setup. As roon does not support Apple Music. Is there a way to use the bbb with biotic (Hermès, Cronus) to play my Apple Music (AirPlay?) ?

BR

Branko