Hmm, it should work. Please check the botic configuration values:
grep . /sys/module/snd_soc_botic/parameters/*
and also the "aplay -l" output.
If there is no Botic sound card, then the dtb= selection in the uEnv.txt does not work as intended. A workaround could be to replace am335x-boneblack.dtb by am335x-boneblack-botic.dtb file.
cp /boot/dtbs/4.5.0-botic7-rc1/am335x-boneblack-botic.dtb /boot/dtbs/4.5.0-botic7-rc1/am335x-boneblack.dtb
grep . /sys/module/snd_soc_botic/parameters/*
and also the "aplay -l" output.
If there is no Botic sound card, then the dtb= selection in the uEnv.txt does not work as intended. A workaround could be to replace am335x-boneblack.dtb by am335x-boneblack-botic.dtb file.
cp /boot/dtbs/4.5.0-botic7-rc1/am335x-boneblack-botic.dtb /boot/dtbs/4.5.0-botic7-rc1/am335x-boneblack.dtb
Hey miero, the capture device shows up now I'm just having issues trying to record now. This is what I'm getting:
root@botic:~# arecord -v -D hw:0,0 -f S16_LE -r 11025 -c2 -t raw -d 2
Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 11025 Hz, Stereo
Hardware PCM card 0 'Botic' device 0 subdevice 0
Its setup is:
stream : CAPTURE
access : RW_INTERLEAVED
format : S16_LE
subformat : STD
channels : 2
rate : 11025
exact rate : 11025 (11025/1)
msbits : 16
buffer_size : 5512
period_size : 1378
period_time : 124988
tstamp_mode : NONE
period_step : 1
avail_min : 1378
period_event : 0
start_threshold : 1
stop_threshold : 5512
silence_threshold: 0
silence_size : 0
boundary : 1444937728
appl_ptr : 0
hw_ptr : 0
arecord: pcm_read:2031: read error: Input/output error
Hmm. I've tested the record only with internal BBB clock. There might be an issue.
Does the playback work for you? It should be clocked from the same clock.
Please retry with the concurrent playback of the same sampling rate.
I do not. If you control Roon using their iOS or Android remote apps, there is a 'side-by-side' option. The 'NetIO' app would not run "within" Roon's own remote control but 'right next door' on the remote device. I use a separate player app and NetIO to control the BBB and DACs via I2C. With the iPad you can change between the two apps using a 4-finger swipe.
NetIO APP
http://www.diyaudio.com/forums/twisted-pear/281776-control-bbb-based-audio-appliances.html
I have it sorted and it was very simple! 🙂
I already have Squeezelite installed on top of my Botic driver. Seems it was as simple as enabling Squeezebox support within Roon and including the IP of the roon server in the squeezelite startup command using the '-s' argument to define a specific server.
So my squeezelite startup string now looks like:
squeezelite -o hw:CARD=Botic -n JRdddac -a 16384:1024:: -s 192.168.1.27
And my Roon now looks like
An externally hosted image should be here but it was not working when we last tested it.
And beautiful music is filling my room from my BBB Botic > Hermes > Cronus > DDDAC player. Happy days! 🙂
Hmm, it should work. Please check the botic configuration values:
grep . /sys/module/snd_soc_botic/parameters/*
and also the "aplay -l" output.
If there is no Botic sound card, then the dtb= selection in the uEnv.txt does not work as intended. A workaround could be to replace am335x-boneblack.dtb by am335x-boneblack-botic.dtb file.
cp /boot/dtbs/4.5.0-botic7-rc1/am335x-boneblack-botic.dtb /boot/dtbs/4.5.0-botic7-rc1/am335x-boneblack.dtb
I noticed the May 13 update to Debian 8.4 on the BBB site so I started fresh by installing the 8.4 image on a uSD chip. Then:
Code:
root@beaglebone:/# dpkg -i linux-image-4.5.0-botic7-rc1_4.5-botic7-rc1_armhf.deb
Selecting previously unselected package linux-image-4.5.0-botic7-rc1.
(Reading database ... 85220 files and directories currently installed.)
Preparing to unpack linux-image-4.5.0-botic7-rc1_4.5-botic7-rc1_armhf.deb ...
Unpacking linux-image-4.5.0-botic7-rc1 (4.5-botic7-rc1) ...
Setting up linux-image-4.5.0-botic7-rc1 (4.5-botic7-rc1) ...
Error! Error! Your kernel headers for kernel 4.5.0-botic7-rc1 cannot be found.
Your kernel headers for kernel 4.5.0-botic7-rc1 cannot be found.
Please install the linux-headers-4.5.0-botic7-rc1 package,
or use the --kernelsourcedir option to tell DKMS where it's located
Error! Please install the linux-headers-4.5.0-botic7-rc1 package,
or use the --kernelsourcedir option to tell DKMS where it's located
Your kernel headers for kernel 4.5.0-botic7-rc1 cannot be found.
Please install the linux-headers-4.5.0-botic7-rc1 package,
or use the --kernelsourcedir option to tell DKMS where it's located
update-initramfs: Generating /boot/initrd.img-4.5.0-botic7-rc1
zz-uenv_txt: Updating /boot/uEnv.txt [uname_r=4.5.0-botic7-rc1]
I edited /boot/uEnv.txt with 'dtb=am335x-boneblack-botic.dtb'
sync
reboot
then...
Code:
root@beaglebone:~# grep . /sys/module/snd_soc_botic/parameters/*
/sys/module/snd_soc_botic/parameters/blr_ratio:64
/sys/module/snd_soc_botic/parameters/clk_44k1:22579200
/sys/module/snd_soc_botic/parameters/clk_48k:24576000
/sys/module/snd_soc_botic/parameters/dai_format:16385
/sys/module/snd_soc_botic/parameters/dsd_format_switch:1
/sys/module/snd_soc_botic/parameters/ext_masterclk:3
/sys/module/snd_soc_botic/parameters/pinconfig:default
/sys/module/snd_soc_botic/parameters/serconfig:MMMM
root@beaglebone:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Botic [Botic], device 0: external botic-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
...will check back later before making any other additions in order to check for sound via Hermes/Cronus... 😉
I have it sorted and it was very simple! 🙂
...And beautiful music is filling my room from my BBB Botic > Hermes > Cronus > DDDAC player. Happy days! 🙂
Stellar. Volume controlled in player software, then?
yup 🙂Stellar. Volume controlled in player software, then?
sean03, recording should work with the botic7, but a sampling rate, for both playback and recording, should not be smaller than 1/2048th of the clock frequency.
For example, using 45.1584MHz clock the smallest supported fs is 22050Hz.
For example, using 45.1584MHz clock the smallest supported fs is 22050Hz.
root@botic:~# uname -a
Linux botic 4.5.0-botic7-rc1 #1 PREEMPT Tue May 17 00:51:35 CEST 2016 armv7l GNU/Linux
root@botic:~# grep . /sys/module/snd_soc_botic/parameters/*
/sys/module/snd_soc_botic/parameters/blr_ratio:64
/sys/module/snd_soc_botic/parameters/clk_44k1:45158400
/sys/module/snd_soc_botic/parameters/clk_48k:49152000
/sys/module/snd_soc_botic/parameters/dai_format:16385
/sys/module/snd_soc_botic/parameters/dsd_format_switch:1
/sys/module/snd_soc_botic/parameters/ext_masterclk:3
/sys/module/snd_soc_botic/parameters/pinconfig:default
/sys/module/snd_soc_botic/parameters/serconfig:MDR-
root@botic:~# arecord -D hw:0,0 -f S16_LE -r 22050 -c2 -t raw | hd -n 8192
Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 22050 Hz, Stereo
00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00002000
root@botic:~# arecord -D hw:0,0 -f S16_LE -r 11025 -c2 -t raw | hd -n 8192
Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 11025 Hz, Stereo
arecord: set_params:1297: Unable to install hw params:
...
I have it sorted and it was very simple! 🙂
I already have Squeezelite installed on top of my Botic driver. Seems it was as simple as enabling Squeezebox support within Roon and including the IP of the roon server in the squeezelite startup command using the '-s' argument to define a specific server.
....
Any comments please regarding the sound quality of Roon (500$ ??) compared to the MPD (0$ ;-) ? Is Roon worth its price?
Best regards
If you want to control your BBB via oldschool infrared TV remote, you can try it with this LIRC driver:
https://github.com/miero/lirc-bbb
For compilation of the kernel driver for botic7-rc1, you will need to install also a DEB with headers:
http://repo.ieero.com/botic/pool/ma...ers-4.5.0-botic7-rc1_4.5-botic7-rc1_armhf.deb
Enjoy! 🙂
https://github.com/miero/lirc-bbb
For compilation of the kernel driver for botic7-rc1, you will need to install also a DEB with headers:
http://repo.ieero.com/botic/pool/ma...ers-4.5.0-botic7-rc1_4.5-botic7-rc1_armhf.deb
Enjoy! 🙂
There is no sound quality difference. Roon doesn't replace mpd, nor is it just a remote control tool. I already have remote control and Spotify /Tidal integration via Squeezelite and LMS server. I paid the $119 annual cost for Roon because of the experience of exploring, finding new music and even old music I have forgotten. I enjoy reading the biography of the artists and albums, making connections and learning. I also love the radio functionality where it will continue playing similar tunes when a playlist has ended. This week i have enjoyed my existing collection and heard new things I would not have done otherwise via Tidal and I have expanded my musical education, and for me that is well worth the cost of 1 cd per month 🙂Any comments please regarding the sound quality of Roon (500$ ??) compared to the MPD (0$ ;-) ? Is Roon worth its price?
Best regards
Anyway, this has been discussed at length many other places so I won't take this thread off track, just to say I am very pleased that Roon>Squeezelite >botic>hermes >cronus play together so nicely 🙂
If you want to control your BBB via oldschool infrared TV remote, you can try it with this LIRC driver:
https://github.com/miero/lirc-bbb
For compilation of the kernel driver for botic7-rc1, you will need to install also a DEB with headers:
http://repo.ieero.com/botic/pool/ma...ers-4.5.0-botic7-rc1_4.5-botic7-rc1_armhf.deb
Enjoy! 🙂
Hi, thanks for making this!
I have installed headers, but when I try "make prepare" I get this:
root@botic:/usr/src/lirc-bbb-master# make prepare
make -C /lib/modules/`uname -r`/build scripts
make[1]: Entering directory `/usr/src/linux-headers-4.5.0-botic7-rc1'
Makefile:667: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler
CC scripts/mod/empty.o
cc1: error: unrecognized command line option '-fstack-protector-strong'
make[3]: *** [scripts/mod/empty.o] Error 1
make[2]: *** [scripts/mod] Error 2
make[1]: *** [scripts] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-4.5.0-botic7-rc1'
make: *** [scripts] Error 2
Any idea what I'm doing wrong?
Best regards
There is no sound quality difference. Roon doesn't replace mpd, nor is it just a remote control tool. I already have remote control and Spotify /Tidal integration via Squeezelite and LMS server. I paid the $119 annual cost for Roon because of the experience of exploring, finding new music and even old music I have forgotten. I enjoy reading the biography of the artists and albums, making connections and learning. I also love the radio functionality where it will continue playing similar tunes when a playlist has ended. This week i have enjoyed my existing collection and heard new things I would not have done otherwise via Tidal and I have expanded my musical education, and for me that is well worth the cost of 1 cd per month 🙂
Anyway, this has been discussed at length many other places so I won't take this thread off track, just to say I am very pleased that Roon>Squeezelite >botic>hermes >cronus play together so nicely 🙂
many thanks for the quick reply and the feedback!
best regards
Hi, thanks for making this!
I have installed headers, but when I try "make prepare" I get this:
...
Any idea what I'm doing wrong?
I tried using 'root@beaglebone:/# dpkg -i linux-image-4.5.0-botic7-rc1_4.5-botic7-rc1_armhf.deb'
It ran. There were three errors reported and I am investigating them now. I imagine (hope!) they are inconsequential.
a) temperature-mod
b) debugss-mod
c) cmem-mod
Frank
Hi, thanks for making this!
I have installed headers, but when I try "make prepare" I get this:
root@botic:/usr/src/lirc-bbb-master# make prepare
make -C /lib/modules/`uname -r`/build scripts
make[1]: Entering directory `/usr/src/linux-headers-4.5.0-botic7-rc1'
Makefile:667: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler
CC scripts/mod/empty.o
cc1: error: unrecognized command line option '-fstack-protector-strong'
make[3]: *** [scripts/mod/empty.o] Error 1
make[2]: *** [scripts/mod] Error 2
make[1]: *** [scripts] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-4.5.0-botic7-rc1'
make: *** [scripts] Error 2
Any idea what I'm doing wrong?
Best regards
Hmm, that I see. You need at lest gcc version 4.9, but that one is not available for Debian Wheezy.
So, I've prepared compiled version for you. You can install it on the BBB:
After the reboot, the /dev/lirc0 should be available (if it is added in the /etc/modules).cd /
wget http://bbb.ieero.com/botic7-rc1/lirc-bbb-4.5.0-botic7-rc1.tar.gz
tar xvzf lirc-bbb-4.5.0-botic7-rc1.tar.gz
rm lirc-bbb-4.5.0-botic7-rc1.tar.gz
depmod -a
reboot
Hi,
I'm trying to add lirc module to /etc/modules file.
When I add only
it works (see /dev/lirc0 file)
but when I 'm adding line:
after reboot lirc module is not loaded.
How can I fix this?
I'm trying to add lirc module to /etc/modules file.
When I add only
Code:
lirc_bbb
but when I 'm adding line:
Code:
lirc_bbb gpio_in_pin=66
How can I fix this?
Last edited:
Hi guys,
How do I get the botic build to have a different default sound output device?
I am trying to set botic to give 2 split channels (left and right) of right justified data output and I think I have the necessary work done, but I don't know how to set this new botic-split device as default output.
I have edited the /boot/uboot/uEnv.txt so the last line looks like this:
I have created an alsa output device which splits left and right by creating a /etc/asound.conf file with this in
and aplay -L lists 'botic-split' as an output
I have edited /etc/mpd.conf to have a new audio output option.
But I'm stuck on the final hurdle, because I can't work out where the default output is set or how to change it.
Any pointers gratefully received 🙂
James
How do I get the botic build to have a different default sound output device?
I am trying to set botic to give 2 split channels (left and right) of right justified data output and I think I have the necessary work done, but I don't know how to set this new botic-split device as default output.
I have edited the /boot/uboot/uEnv.txt so the last line looks like this:
Code:
optargs=snd_soc_botic.ext_masterclk=3 snd_soc_botic.serconfig=MMMM snd_soc_botic.dai_format=16386 snd_soc_botic.blr_ratio=32
I have created an alsa output device which splits left and right by creating a /etc/asound.conf file with this in
Code:
pcm.botic-split {
type route;
slave.pcm "hw:0,0";
slave.channels 4;
ttable.0.0 1;
ttable.0.1 1;
ttable.0.2 1;
ttable.1.3 1;
}
ctl.botic-split {
type hw;
card 0;
}
and aplay -L lists 'botic-split' as an output
I have edited /etc/mpd.conf to have a new audio output option.
Code:
audio_output {
type "alsa"
name "Botic-Split"
device "botic-split"
format "*:24:2"
dsd_usb "no"
dsd_native "yes"
dsd_native_type "3"
priority "FIFO:32"
period_time "1"
mixer_type "software"
# mixer_device "default" # optional
# mixer_control "PCM" # optional
# mixer_index "0" # optional
}
But I'm stuck on the final hurdle, because I can't work out where the default output is set or how to change it.
Code:
sysdefault:CARD=Botic
Botic,
Default Audio Device
Any pointers gratefully received 🙂
James
Greetings James,
This is probably going to seem like a sketchy reply - sorry - but in practice ALSA can be fairly sketchy. Clearing things up could take us far away from Botic per se. So, depending on the following, I may suggest that we move to a thread in which ALSA is the topic.
ALSA can do that, no problem. If you want to proceed, let me know and we'll pick up the ALSA discussion here: http://www.diyaudio.com/forums/twisted-pear/277564-ladspa-filters-digital-crossovers-bbb.html
Looking at and copying working ALSA syntax is one of the most effective ways to get things functioning. 😉
This is probably going to seem like a sketchy reply - sorry - but in practice ALSA can be fairly sketchy. Clearing things up could take us far away from Botic per se. So, depending on the following, I may suggest that we move to a thread in which ALSA is the topic.
Botic doesn't specify the output device. The applications that run under Botic typically do so. Some applications will not accept ALSA plugins as output devices, but can accept 'hardware' output addresses (the correct term escapes me at present) like 'hw:0,0'. Unfortunately, I have never gotten MPD (nor Ecasound) to accept anything other than such addresses that bypass ALSA's programming space. That is why in my own system I am using squeezelite, because it does permit output to ALSA plugs. If this limitation of MPD is a deal breaker, then I can't help. You mentioned configuring squeezelite for Roon. If squeezelite is part of the system about which you inquire, then chances for success are good.How do I get the botic build to have a different default sound output device?
I am trying to set botic to give 2 split channels (left and right) of right justified data output and I think I have the necessary work done, but I don't know how to set this new botic-split device as default output.
ALSA can do that, no problem. If you want to proceed, let me know and we'll pick up the ALSA discussion here: http://www.diyaudio.com/forums/twisted-pear/277564-ladspa-filters-digital-crossovers-bbb.html
Looking at and copying working ALSA syntax is one of the most effective ways to get things functioning. 😉
Hi,
I'm trying to add lirc module to /etc/modules file.
When I add only
it works (see /dev/lirc0 file)Code:lirc_bbb
but when I 'm adding line:
after reboot lirc module is not loaded.Code:lirc_bbb gpio_in_pin=66
How can I fix this?
Try it again without gpio_in_pin parameter and check the kernel log:
root@botic:~# dmesg | grep lirc
[ 13.404177] lirc_dev: IR Remote Control driver registered, major 245
[ 13.418228] lirc_bbb lirc_bbb.0: lirc_dev: driver lirc_bbb registered at minor = 0
[ 13.418253] lirc_bbb: driver registered!
[ 14.371099] lirc_bbb: auto-detected active low receiver on GPIO pin 66
If it does not work, please post here the dmesg output with the parameter.
I'm having same problems as Bern.
Lirc0 is only showing in /dev when I only add "lirc_bbb" in /etc/modules:
Tried to run dmesg | grep lirc:
It says that reciever is connected on GPIO pin 60? That is on the P9 header.
I have connected my IR-reciever on GPIO pin 66.
Does this have anything to do with line 81 in lirc_bbb.c?:
Lirc0 is only showing in /dev when I only add "lirc_bbb" in /etc/modules:
Tried to run dmesg | grep lirc:
Code:
root@botic:~# dmesg | grep lirc
[ 2.498762] lirc_dev: IR Remote Control driver registered, major 245
[ 2.565920] lirc_bbb lirc_bbb.0: lirc_dev: driver lirc_bbb registered at minor = 0
[ 2.565942] lirc_bbb: driver registered!
[ 3.540901] lirc_bbb: auto-detected active low receiver on GPIO pin 60
It says that reciever is connected on GPIO pin 60? That is on the P9 header.
I have connected my IR-reciever on GPIO pin 66.
Does this have anything to do with line 81 in lirc_bbb.c?:
Code:
int valid_gpio_pins[] = { 48, 60 };
- Home
- More Vendors...
- Twisted Pear
- Support for Botic Linux driver