• 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

Getting Botic configured for Cronus/Hermes with 1794 DAC

Hi Miero,

I have build the Cronus/Hermes, plugged into the BBB and flashed your botic to a card.
I have been able to connect to a remote directory using SSH into the BBB. Ympd is running fine but no music output yet.
So far so good for a Linux Noob :eek:

Now I am reading your configuration notes and it seems that I need to make some configurations before I am able to get it to play music.

Do I need to configure the external clocks? I have 45mhz on ex1 and 49mhz on ex2 on Cronus board.

I want to connect to a dddac1794. Do I need to configure the channels in SW?

Is there no software volume control?


Regards,
 

Attachments

  • Foto 25-04-15 15 01 25.jpg
    Foto 25-04-15 15 01 25.jpg
    629.3 KB · Views: 441
@supersurfer

Use the 1:2 jumper for hermes BBB then the BBB will see the default frequencies 22/24Mhz. Follow the guide for setting up for external clock here:
http://bbb.ieero.com/

--------------------
Clocks configuration
--------------------

Installed clocks are configurable via:
- kernel option snd_soc_botic.ext_masterclk

Examples:
0 ... no external clocks, just onboard for 48k freq (default)
1 ... external clock for 44k1 + onboard for 48k
2 ... external clock for 48k only
3 ... external clocks for 44k1 and 48k (needed for cape)
+4 ... invert polarity of clock selection switch GPIO0_15
9 ... external clock for 44k1 only

You want 3
 
Also read this:

-----------------------
Changing kernel options
-----------------------

Kernel options can be changed in the uEnv.txt file, which can be edited:
- within Linux on BBB: /boot/uboot/uEnv.txt ... for example it can be edited by 'nano' command
- using SD card: uboot/uEnv.txt file on the first partition
This file can be edited also from Windows, but one needs to use better editor than notepad, e.g. PSPad.
 
Hi,

After making some modifications in mpd.conf (thank you Stijn!) I can now connect with an external mpd client and use extended browsing facilities. Also software volume control is enabled (for serious listening always set at 100% but during the day it comes in handy ;) )

A BIG thanks to Miero for putting it all together!

Regards,
 
Last edited:
Miero,
I am still testing squeezelite with Botic.
I have another isuee with WMA streams:
Code:
/usr/local/bin/squeezelite -o hw:CARD=BOTICAudio,DEV=0 -n BBB -m ab:cd:ef:12:34:53 -a 16384:1024:: -R -u vI:::28 -r 192000 -f /opt/squeezelite.log -d all=info -D 
[14:39:06.162804] stream_init:290 init stream
[14:39:06.167043] output_init_alsa:817 init output
[14:39:06.167186] output_init_alsa:846 requested alsa_buffer: 16384 alsa_period: 1024 format: any mmap: 1
[14:39:06.167403] output_init_common:410 supported rates: 192000 176400 96000 88200 48000 44100 32000 24000 22500 16000 12000 11025 8000 
[14:39:06.167548] output_init_alsa:860 unable to lock memory: Cannot allocate memory
[14:39:06.188923] decode_init:129 init decode, include codecs:  exclude codecs: 
[14:39:06.189684] register_dsd:624 using dsd to decode dsf,dff
[14:39:06.503233] output_thread:638 open output device: hw:CARD=BOTICAudio,DEV=0
[14:39:06.503463] alsa_open:355 opening device at: 44100
[14:39:06.504190] alsa_open:385 reopening device hw:CARD=BOTICAudio,DEV=0 in plug mode as plughw:CARD=BOTICAudio,DEV=0 for resampling
[14:39:06.506603] alsa_open:406 opened device plughw:CARD=BOTICAudio,DEV=0 using format: S32_LE sample rate: 44100 mmap: 1
[14:39:06.507306] alsa_open:485 buffer: 16384 period: 1024 -> buffer size: 15052 period size: 940
[14:39:06.509764] load_ff:621 loaded libavcodec.so.54 (54.92.100)
[14:39:06.515993] load_ff:638 loaded libavformat.so.54 (54.63.104)
[14:39:06.523733] load_ff:652 loaded libavutil.so.52 (52.18.100)
[14:39:06.552612] register_ff:731 using ffmpeg to decode alc
[14:39:06.552826] register_ff:715 using ffmpeg to decode wma,wmap,wmal
[14:39:06.560230] load_faad:610 loaded libfaad.so.2
[14:39:06.560409] register_faad:640 using faad to decode aac
[14:39:06.561393] load_vorbis:300 loaded libvorbisfile.so.3
[14:39:06.561518] register_vorbis:329 using vorbis to decode ogg
[14:39:06.563924] load_flac:258 loaded libFLAC.so.8
[14:39:06.564107] register_flac:286 using flac to decode flc
[14:39:06.564163] register_pcm:384 using pcm to decode aif,pcm
[14:39:06.565269] load_mad:383 loaded libmad.so.0
[14:39:06.565412] register_mad:412 using mad to decode mp3
[14:39:06.575369] load_soxr:268 loaded libsoxr.so.0
[14:39:06.575608] resample_init:361 resampling sync recipe: 0x16, flags: 0x00, scale: 0.89, precision: 28.0, passband_end: 0.00000, stopband_begin: 0.00000, phase_response: -1.0
[14:39:06.575837] discover_server:756 sending discovery
[14:39:06.576819] discover_server:767 got response from: 192.168.0.1:3483
[14:39:06.577229] slimproto:848 connecting to 192.168.0.1:3483
[14:39:06.577951] slimproto:881 connected
[14:39:06.578091] sendHELO:124 mac: ab:cd:ef:12:34:53
[14:39:06.578145] sendHELO:126 cap: Model=squeezelite,AccuratePlayPoints=1,HasDigitalOut=1,HasPolarityInversion=1,Firmware=v1.8,ModelName=SqueezeLite,MaxSampleRate=192000,dsf,dff,alc,wma,wmap,wmal,aac,ogg,flc,aif,pcm,mp3
[14:39:06.831607] decode_flush:190 decode flush
[14:39:06.831805] output_flush:423 flush output buffer
[14:39:06.832117] decode_flush:190 decode flush
[14:39:06.832260] output_flush:423 flush output buffer
[14:39:35.795983] decode_flush:190 decode flush
[14:39:35.796230] output_flush:423 flush output buffer
[14:39:36.578258] codec_open:218 codec open: 'w'
[14:39:36.585118] ff_open_wma:552 open wma chunking: 1 playstream: 0 metadatastream: 4
[14:39:36.585328] stream_sock:384 connecting to 195.245.217.7:80
[14:39:36.603984] stream_sock:413 header: GET /program3 HTTP/1.0
Accept: */*
User-Agent: NSPlayer/8.0.0.3802
Host: stream.polskieradio.pl
Pragma: xClientGUID={0ea31572-3280-2656-c418-70defdfd459d}
Pragma: no-cache,rate=1.0000000,stream-offset=0:0,max-duration=0
Pragma: stream-time=0
Pragma: request-context=2
Pragma: LinkBW=2147483647, AccelBW=1048576, AccelDuration=21000
Pragma: Speed=5.000
Pragma: xPlayStrm=1
Pragma: stream-switch-count=2
Pragma: stream-switch-entry=ffff:1:0 ffff:4:0 


[14:39:36.725923] stream_thread:176 headers: len: 501
HTTP/1.0 200 OK
Content-Type: application/x-mms-framed
Server: Cougar/9.6.7600.16564
Date: Sun, 26 Apr 2015 12:39:34 GMT
Pragma: no-cache, client-id=3154430248, xResetStrm=1, features="broadcast", AccelBW=1048576, AccelDuration=20139, Speed=1.000
Cache-Control: no-cache
Last-Modified: Sun, 26 Apr 2015 12:39:34 GMT
Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.predstrm, com.microsoft.wm.fastcache, com.microsoft.wm.startupprofile
Connection: keep-alive


[14:39:36.992995] _parse_packlen:147 asf packet len: 4127
[14:39:37.025338] ff_decode:288 format: name:asf lname:ASF (Advanced / Active Streaming Format)
[14:39:37.054936] ffmpeg: Estimating duration from bitrate, this may be inaccurate
[14:39:37.055177] ff_decode:298 using wma stream sent from server: 0
[14:39:37.061700] ff_decode:340 setting track_start
[14:39:37.061825] resample_newstream:188 resampling from 48000 -> 192000
[14:39:37.266966] process_newstream:123 processing: active
[14:39:37.430167] _output_frames:61 start buffer frames: 58824
[14:39:37.430445] _output_frames:146 track start sample rate: 192000 replay_gain: 0
[14:39:37.440649] output_thread:638 open output device: hw:CARD=BOTICAudio,DEV=0
[14:39:37.441178] alsa_open:355 opening device at: 192000
[14:39:37.442296] alsa_open:406 opened device hw:CARD=BOTICAudio,DEV=0 using format: S32_LE sample rate: 192000 mmap: 1
[14:39:37.442489] alsa_open:485 buffer: 16384 period: 1024 -> buffer size: 16384 period size: 1024
[14:39:37.747956] ffmpeg: next_block_len_bits 6 out of range
[14:39:37.748203] ff_decode:377 avcodec_decode_audio4 error: -1 Operation not permitted
[14:39:39.983927] ffmpeg: overflow in spectral RLE, ignoring
[14:39:39.984247] ffmpeg: frame_len overflow
[14:39:39.984322] ff_decode:377 avcodec_decode_audio4 error: -1 Operation not permitted
[14:39:53.423202] ffmpeg: overflow in spectral RLE, ignoring
[14:39:53.423494] ffmpeg: next_block_len_bits 5 out of range
[14:39:53.423564] ff_decode:377 avcodec_decode_audio4 error: -1 Operation not permitted
[14:39:54.370000] ffmpeg: frame_len overflow
[14:39:54.370249] ff_decode:377 avcodec_decode_audio4 error: -1 Operation not permitted
[14:39:58.139460] ffmpeg: overflow in spectral RLE, ignoring
[14:39:58.139975] ffmpeg: prev_block_len_bits 6 out of range
[14:39:58.140082] ff_decode:377 avcodec_decode_audio4 error: -1 Operation not permitted
[14:39:59.087175] ffmpeg: overflow in spectral RLE, ignoring
[14:39:59.093028] ffmpeg: next_block_len_bits 4 out of range
[14:39:59.093232] ff_decode:377 avcodec_decode_audio4 error: -1 Operation not permitted
[14:40:00.107093] ffmpeg: packet fragment position invalid 0,4104 not in 4096
[14:40:00.107358] ffmpeg: ff asf bad header 4a  at:409619
[14:40:00.107429] ffmpeg: ff asf skip 2096 (unknown stream)
[14:40:00.107490] ffmpeg: ff asf bad header 97  at:413792
[14:40:00.107537] ffmpeg: invalid padsize 53279 at:413797
[14:40:02.139359] ffmpeg: overflow in spectral RLE, ignoring
[14:40:02.139669] ffmpeg: next_block_len_bits 4 out of range
[14:40:02.139741] ff_decode:377 avcodec_decode_audio4 error: -1 Operation not permitted
[14:40:03.070923] ffmpeg: next_block_len_bits 4 out of range
[14:40:03.071179] ff_decode:377 avcodec_decode_audio4 error: -1 Operation not permitted
[14:40:06.856646] ffmpeg: overflow in spectral RLE, ignoring
[14:40:11.996773] ffmpeg: next_block_len_bits 4 out of range
[14:40:12.002584] ff_decode:377 avcodec_decode_audio4 error: -1 Operation not permitted
[14:40:18.374890] ffmpeg: overflow in spectral RLE, ignoring
[14:40:18.375331] ffmpeg: overflow in spectral RLE, ignoring
[14:40:18.375437] ffmpeg: frame_len overflow
[14:40:18.375495] ff_decode:377 avcodec_decode_audio4 error: -1 Operation not permitted
[14:40:20.644424] ffmpeg: next_block_len_bits 6 out of range
[14:40:20.644692] ff_decode:377 avcodec_decode_audio4 error: -1 Operation not permitted
[14:40:31.372031] ffmpeg: next_block_len_bits 5 out of range
[14:40:31.376213] ff_decode:377 avcodec_decode_audio4 error: -1 Operation not permitted
It seems like installed packages: libavcodec-dev libavformat-dev v54 are little bit obsolete. How can I upgrade these packages to version 56 efficiently?
Unfortunately, I do not know Debian.too well..:scratch1:.
 
Hi,

I tried flashing botic image to eMMC but it failed due to running out of space. Maybe my library is to big?
Is there a way to put the OS on eMMC and keep the library on SD card?

Or is it possible that when using: /opt/scripts/tools/eMMC/beaglebone-black-make-microSD-flasher-from-eMMC.sh

It does not use the total capacity of the flash memory?
 
bern: I have *55 version installed from backports repository:
# dpkg -l libav*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=======================-================-================-====================================================
ii libavahi-client3:armhf 0.6.31-2 armhf Avahi client library
ii libavahi-common-data:ar 0.6.31-2 armhf Avahi common data files
ii libavahi-common3:armhf 0.6.31-2 armhf Avahi common library
ii libavcodec-dev 6:10.1-1~bpo70+1 armhf Development files for libavcodec
un libavcodec-extra-55 <none> (no description available)
ii libavcodec55:armhf 6:10.1-1~bpo70+1 armhf Libav codec library
ii libavformat-dev 6:10.1-1~bpo70+1 armhf Development files for libavformat
ii libavformat55:armhf 6:10.1-1~bpo70+1 armhf Libav file format library
ii libavutil-dev 6:10.1-1~bpo70+1 armhf Development files for libavutil
ii libavutil53:armhf 6:10.1-1~bpo70+1 armhf Libav utility library

BTW: this is out of scope of support for Botic Linux driver. If you want to recompile to the latest driver, please seek information on https://libav.org/