• 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

Hi Miero,

thanks for Botic5 update, tried different power off situations and all works fine with my bone. Squeezelite is running fine too.

My next try was flashing MMC with your script, but I got always this error
Error: [/dev/mmcblk1] does not exist
writing to [/dev/mmcblk1] failed...

First try was a 16GB SD, took another one with 4GB and Botic4 image, but error was always the same. Any idea???
Should I change the BBB hardware or use a smaler SD?

Thanks in advance.
 
Member
Joined 2004
Paid Member
Solved..........

ichiban....

do not look into "nfs-uEnv.txt" but into the "uEnv.txt" ...

So, I went and purchased a new SD card, formatted and placed an .img file on it.
It flashed. :blush:

Truly appreciate all the help. I learned some while researching all this, just enough to be dangerous! :scared:

Hope to put the BBB together with the Hermes/Cronus/BIII and hear music tonight.
 
How to Squeezlite in Botic

Here is a detailed instruction set for new-bees for Squeezlite installation on Miero's botic distribution for peeps who only know windows

Make sure you have flashed eMMC of BeagleBone Black(BBB) with correct distro from here
https://rcn-ee.com/rootfs/2015-04-0...an-jessie-console-armhf-2015-04-09-2gb.img.xz (make sure you are not using IE for obtaining the file)
extract the image using 7-zip file manager not using winrar or winzip (Download)
Write that image into a 4/8 GB microSDHC card (using win32diskimager Win32 Disk Imager | SourceForge.net)
Insert the card into slot in BBB and plug the power cable ,(while pushing down and holding Boot Button (S2) on the top right (near the SD card slot) )
Wait until the LEDs stop blinking and all 4 LEDs are fully lit (5-6 sec)
Then wait for the flash process to complete taking 15-30 minute. At the end of flashing the BBB board will power down by itself.
Take the SD card out before turning power back on.
Connect BeagleboneBlack through USB cable to your PC and make sure it is recognized by typing this address in browser(again no IE) http://192.168.7.2
Download the latest Botic image from here Index of /botic4
Extract the image using 7-zip and write image to microSDHC card using win32diskimager

-Insert microSDHC card into BBB and power on with LAN cable connected
-Download winScp in PC and install PSPad and make it default text editor.Believe me it will make your life 10 times easier with Linux
-Use your router's network page to identify your BBB's IP address listed as Botic, in the devices page in router
-If your router allows assigning permanent IP address using MACid, do it. It will help changing /formatting the SD card easy with even different distros.
Default user name : root password: botic
Now you are getting ready to install Squeezelite into Botic

###update the date and time (very important)
Code:
ntpdate pool.ntp.org
### add multimedia wheezy-backport repository (needed only once)
Code:
[B]
 [COLOR=#666666][FONT="Courier New"]echo "deb http://www.deb-multimedia.org wheezy main" >> /etc/apt/sources.list[/FONT][/COLOR]
 [COLOR=#666666][FONT="Courier New"]echo "deb http://www.deb-multimedia.org wheezy-backports main" >> /etc/apt/sources.list[/FONT][/COLOR]
[/B]
### update package list and install needed dependencies
Code:
apt-get update
ignore the error message starting with w:GPG error
### package with signing keys for multimedia packages
Code:
apt-get install deb-multimedia-keyring
...............Install these packages without verification [y/N]? y
### packages needed for soxr && squeezelite compilation
Code:
apt-get install git gcc make libasound2-dev libavcodec-dev libavformat-dev libavutil-dev libflac-dev libmad0-dev libfaad-dev libmpg123-dev cmake libvorbis-dev
just hit enter key and don't answer y/n ,WHEN PROMPTED

### clone, build and install soxr resampling library (if this fail, try to synchronize time as described above)
Code:
git clone git://git.code.sf.net/p/soxr/code soxr-code
Code:
cd soxr-code
Code:
cmake ./
Code:
make
(this step will take about 3 minutes to complete,and will appear like stuck at [47%] for some time),patience....:D

Code:
make install
Code:
cd ..
###symlink to enable squeezelite using libsoxr (resampling)
Code:
ln -s /usr/local/lib/libsoxr.so.0.1.0 /usr/lib/libsoxr.so.0
### clone, build and install squeezelite player (with soxr support) single command at a time
Code:
git clone [URL]https://code.google.com/p/squeezelite/[/URL]
Code:
cd squeezelite
Code:
make OPTS="-DDSD -DFFMPEG -DRESAMPLE"
Code:
cp squeezelite /usr/local/bin/
To auto start player at boot up
Use winScp and create a file 'startup.sh' in folder
/etc/init.d/

######copy the code below
Code:
 #!/bin/bash 
### BEGIN INIT INFO 
# Provides: Startup 
# Required-Start: $local_fs $network 
# Required-Stop: $local_fs 
# Default-Start: 2 3 4 5 
# Default-Stop: 0 1 6 
# Short-Description: Startup 
# Description: Startup daemon to start Squeezelite 
### END INIT INFO 
squeezelite -o hw:CARD=[COLOR=red]output device[/COLOR],DEV=0
where 'output device' is the hardware you are using and need to be changed ;save and close the file startup.sh , then log into Putty
enter the following commands

Code:
chmod +X /etc/init.d/startup.sh
Code:
insserv startup.sh
Install Logitech Media server(if not already) ,click advanced settings ,which will open webinterface ,under the player the Botic player is listed.You can use the ipad app for squeezebox to control the player.
 
Last edited:
I am glad to be of some use for you guys and Miero ,just a little help for you so that you can focus on the big stuff.. :p
I have to mention help from DIYer bern to resolve my issue with hardware.
Now I need to find out how to get the I2S out from Beaglebone for Hermes-Cronus combo.
I will use squeezlite over volumio any day,since I am familiar with squeezebox and has nice mobile apps available to control.
what should I do to next for I2S
 
Last edited:
Does squeezelite replace ympd? I ask because I have ympd working, but I don't much like it. I don't want to get rid of it just yet though, in case I like squeezelite even less!

miero, the botic_helper and daccfg_es9018 scripts, do I just have to type them in at the command line? Are they saved in a file that I need to create? Do they require additional connections between Cronus and DAC/s (I'm using dual-mono Buffalo IIs)?
 
Last edited:
I've also finally managed to crack this, hurray.

Here's the Linux newbies step by step guide to a very simple
Install of a music library on a hard drive direct into the BBB usb socket:

Ensure BBB connected to your router via ethernet cable and you have the BBB's IP adress off the admin page of your router. No computer should be connected to the BBB by the supplied USB cable.

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



a) Plug in the hard drive with your music collection to USB socket of the BBB.
b) Boot up puTTY on your laptop and login to the BBB's command line.
Host name: BBB's_IP_address
login: root
password: botic​

You will now have to do some command line coding. This is easy but note the following:
You can only use keyboard keys , e.g. arrow keys for moving cursor up and down etc.
^G = Ctrl + G in linux notation.
Number keypad may also not work.​
c) Link your hard drive to the ympd player on the BBB by doing the following:
# Type the following command:
blkid -o list
# it will show all connected devices including the name of your hard drive e.g musicHD.
#Also the corresponding device ID for your drive. You have 2 options:
either the UUID number, something like: UUID=1514-1619 or
the device reference, something like: /dev/sda1
# And finally the file system type of the drive e.g vfat . Note these.
# Create a mount point path off of root, for example data/local is fine to use. Type:
mkdir /data/local
# Open up the fstab boot file:
nano /etc/fstab
# Go to the bottom line of the file (navigate with arrow keys only) and type in your boot mounting instruction line, of the format
<device> <mountpoint> <filesystemtype><options> <dump> <fsckorder>
/dev/sda1 /data/local vfat auto 0 0
# or UUID=1514-1619 /data/local vfat auto 0 0
# where UUID is the device ID displayed
# /data/local is the mount point you set up above and
# vfat is the file system format of your hard drive
# finish off with auto 0 0 and dont worry about it.

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



Hit [Ctrl]X to exit the fstab file,
Y to save the changes to the file and
[enter] to confirm the filename.

d) Now power down and restart by doing the following:
i) Exit puTTY.
ii) Power down by pressing the power button and waiting 4 seconds or so, then once powered off pull out the power plug.
iii) Reboot, by holding down S2 reboot button and inserting the power plug, wait a few seconds till starts to reboot starts before releasing the boot button.
iv) After 30 seconds or so, log in again via puTTY as above.
v) # execute the following command again
blkid -o list
You should now see your hard drive shows as having a mount point of /data/local rather than being (not mounted).

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


vi) you can now close down puTTY.

If you don't get this, you may have to go through the whole process again. I had to repeat the whole sc card writing process to get success 2nd time round.
e) Refresh MPD database in your browser by refreshing the web page and hitting the Update DB button in the ympd gui. This may take some time (10s of minutes - hours rather than seconds) if you have a large collection the first time round. You should see plenty of activity on the D4 LED as well as the normal heartbeat on D2 led, also your hard drive should feel active. It took 10 mins with 350 albums of .wav files for me.

when you look again you should see the loca l folder in the ympd GUI and opening that all your music files showing.

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


For more information on fstab read here https://wiki.debian.org/fstab
or here https://help.ubuntu.com/community/Fstab#Useful_Commands
or here fstab file format or syntax in linux with fstab manpage link

cheers
Ced
 
Last edited:
Hi Kinku,

and congratulations for also cracking the squeezelite install!!

Aw for sure I doubt I'll stick with ympd that long.
I'm very keen to try out squeezelite so will be following your instructions very soon no doubt. But as a linux newbie with little patience, i thought I'd get up and running on the most basic system first and then progress. Its taken me 12 hours to get this far and tomorrow I want to get my hermes cronos up and running. This is for me after all the whole point.

Can wait to hear the difference between my RPi and this little setup.

And if all that doesn't work out, I'll probably move over to Volumio which has served my pretty well over the last year.

cher
 
Cher,I can tell you something after trying volumio and squeezelite, BBB and Raspberri pi over the years. This BBB with squeezlite through my humble USB DAC HRT streamer pro is the best so far. LMS server is so easy to setup ,almost plug and play and squeezelite seamlessly integrate with it. If you are not good with Linux(like me) there is no need to hesitate.If you follow my instructions it will be up and running in less than an hour. But with I2s Dac I am still waiting to hear from Miero and experts here.But do not think it will be tough.
 
Hi Kinku,
aw shoot, looks like its going to be the squeezelite next on the to-do list then. You've sold me.

After I get the soldering iron out again tomorrow morning and finish off installing the hermes Cronus. Midnight and just setting up the work bench so no excuses for pfaffing around. I wanna be hearing toones by lunchtime.

cheers
Ced
 
Duffy don't know if ympd has any advantage over squeezelite.
You're comparing apples to pears. ympd is an MPD-controller application, and only a basic one at that. Squeezelite is a renderer.

If anyone's interested, I posted a basic description of network-based audio systems in the "Slice Media Player" thread -
http://www.diyaudio.com/forums/digital-source/267074-slice-media-player.html#post4183982
which goes some way towards clarifying the terms and definitions involved. These terms are often misused - I have even seen inaccurate (and misleading) terms used on a manufacturer's own website. The most commonly misused term is "streaming".

I doubt I'll stick with ympd that long.
I consider ympd just a quick-and-easy solution to get you going in the initial setup stages. For day to day playback of your MPD server you would surely want a nicer interface, and running on a tablet computer or smartphone for convenience -
- for iPad/iPhone - MPaD/MPoD
- or for Android - MPDroid or MPDMan

In that regard the choice between running MPD or SqueezeBox Server (now LMS) often comes down to your preference of control interface - so in the case of iPad, it comes down to MPaD versus SqueezePad.
 
You need both. But those 2 functions might be handled by separate devices (and separate software), or be bundled within a single device.
It might be a useful exercise for you to list the components of your own SqueezeBox setup, to get a better understanding. Remember, these are the components:

1 - music server
2 - data storage
3 - client (controller)
4 - renderer

I don't know the full details of your setup, except 4-renderer -
you have Squeezelite installed on Beaglebone Black, outputting via HRT Streamer. Hardware is BBB+HRT Streamer, sofware is Squeezelite.

Obviously 1-music server is LMS, but I don't know where you have it installed.
 
miero,
I edited and changed section 'Compilation of custom kernel module (e.g. driver for UWN200 USB wifi stick)' in the 'Botic HOWTOs for driver & tools' document.
I added 'CC=gcc-4.7' to 'make' command and two last steps (unfortunately two anwanted "Enters" as well;)). Pls see if it is OK and correct the "Enters"
 
Last edited:
You need both. But those 2 functions might be handled by separate devices (and separate software), or be bundled within a single device.
It might be a useful exercise for you to list the components of your own SqueezeBox setup, to get a better understanding. Remember, these are the components:

1 - music server
2 - data storage
3 - client (controller)
4 - renderer

I don't know the full details of your setup, except 4-renderer -
you have Squeezelite installed on Beaglebone Black, outputting via HRT Streamer. Hardware is BBB+HRT Streamer, sofware is Squeezelite.

Obviously 1-music server is LMS, but I don't know where you have it installed.

I have LMS running in a windows home server in HP machine.
It will be nice to include LMS in BBB
My attempt failed
root@botic:~# dpkg -i logitechmediaserver_7.8.0_all.deb
Selecting previously unselected package logitechmediaserver.
(Reading database ... 23257 files and directories currently installed.)
Unpacking logitechmediaserver (from logitechmediaserver_7.8.0_all.deb) ...
dpkg: error processing logitechmediaserver_7.8.0_all.deb (--install):
cannot copy extracted data for './usr/share/squeezeboxserver/CPAN/arch/5.10/powerpc-linux-thread-multi/auto/Font/FreeType/FreeType.so' to '/usr/share/squeezeboxserver/CPAN/arch/5.10/powerpc-linux-thread-multi/auto/Font/FreeType/FreeType.so.dpkg-new': failed to write (No space left on device)
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
logitechmediaserver_7.8.0_all.deb
 
I have LMS running in a windows home server in HP machine.
It will be nice to include LMS in BBB
My attempt failed
root@botic:~# dpkg -i logitechmediaserver_7.8.0_all.deb
Selecting previously unselected package logitechmediaserver.
(Reading database ... 23257 files and directories currently installed.)
Unpacking logitechmediaserver (from logitechmediaserver_7.8.0_all.deb) ...
dpkg: error processing logitechmediaserver_7.8.0_all.deb (--install):
cannot copy extracted data for './usr/share/squeezeboxserver/CPAN/arch/5.10/powerpc-linux-thread-multi/auto/Font/FreeType/FreeType.so' to '/usr/share/squeezeboxserver/CPAN/arch/5.10/powerpc-linux-thread-multi/auto/Font/FreeType/FreeType.so.dpkg-new': failed to write (No space left on device)
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
logitechmediaserver_7.8.0_all.deb
Are you sure you want to run such heavy server package on the BBB? I would not recommend it.