• 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

But it matters if mpd is going to be used. Even with the owner mpd, play command by root does work.

twluke: no, play does not work well ... errors are reported

In:0.00% 00:00:00.00 [00:04:59.07] Out:0 [ | ] Clip:0 play WARN alsa: Input/output error
play FAIL sox: `default' Device or resource busy: Operation not permitted
Done.

Well I got the results different from you. I prepared two .wav files with different owner setting: one as mpd and the other as root and executed play command as root without errors as shown below.

Code:
root@botic:/tmp/test# ls -ld ./test_48k_16b.wav
-rwxr-xr-x 1 mpd root 6336130 Sep 26 07:20 ./test_48k_16b.wav
root@botic:/tmp/test# play ./test_48k_16b.wav

./test_48k_16b.wav:

 File Size: 6.34M     Bit Rate: 3.07M
  Encoding: Signed PCM    
  Channels: 2 @ 16-bit   
Samplerate: 96000Hz      
Replaygain: off         
  Duration: 00:00:16.50  

In:63.9% 00:00:10.54 [00:00:05.96] Out:1.01M [======|======] Hd:0.1 Clip:0    
Aborted.

root@botic:/tmp/test# ls -ld ./test_96k_24b.wav
-rwxr-xr-x 1 root root 6336130 Sep 26 07:20 ./test_96k_24b.wav
root@botic:/tmp/test# play test_96k_24b.wav

test_96k_24b.wav:

 File Size: 6.34M     Bit Rate: 3.07M
  Encoding: Signed PCM    
  Channels: 2 @ 16-bit   
Samplerate: 96000Hz      
Replaygain: off         
  Duration: 00:00:16.50  

In:39.8% 00:00:06.57 [00:00:09.93] Out:631k  [======|=====!] Hd:0.1 Clip:0    
Aborted.
BTW, the used samples are from your original test files included in an earlier botic image. Anyway, I will leave from this discussion on ichiban's issue as it appears I can not be of help.

Regards,
 
Member
Joined 2004
Paid Member
The thing is, when I do the speaker test I get output, hiss, so there seems to be a path through to the dac!??

I will try the speaker test again.

To be continued. :rolleyes:

Since I started over from non-botic debian and flashed up to Bot-v5,
I now still have the hiss with the speaker test but, the hiss alternates
from left then right! I'm pretty sure previous tests gave hiss from both
channels simultaneously!! Unless params were different?
 
Member
Joined 2007
Paid Member
Here is an observation on the 'Device or resource busy' error message.

I powered my boards up for the first time and they are in a spider web of wires. Too excited to get organized, I had to see if it worked! :p It works, but not surprisingly there was a good amount of noise. As I was moving wires to help eliminate noise, any disturbance to the connections between the DAC and Cronus produced this error:

In:34.0% 00:01:50.53 [00:03:34.47] Out:4.87M [-=====|===- ] Hd:0.5 Clip:0 play WARN alsa: Input/output error
play FAIL sox: `default' Device or resource busy: Operation not permitted
Done.


So this error suggests an 'audit' for all of the DAC connections, and solder joints on the new boards, etc.

This for Miero: First play of a 96/24 flac file (and not touching the rig) I got these errors - Alsa under-run:

File Size: 319M Bit Rate: 2.63M
Encoding: FLAC Info: 24bit 96kHz FLACs
Channels: 2 @ 24-bit Track: 1
Samplerate: 96000Hz Album: LSO0757 BERLIOZ Symphonie fantastique
Replaygain: off Artist: Valery Gergiev, London Symphony Orchestra
Duration: 00:16:08.85 Title: 01 BERLIOZ Symphonie fantastique i Reveries - Passions

In:2.25% 00:00:21.76 [00:15:47.09] Out:2.08M [ | ] Clip:0 play WARN alsa: under-run
In:30.3% 00:04:53.29 [00:11:15.56] Out:28.2M [ =|= ] Clip:0 play WARN alsa: under-run


Finally, I had really strange BBB behavior when I first attached the Hermes/Cronus: two different BBB boards would not complete the boot sequence with a proven SD card containing Botic 4. I re-loaded the card image to no avail. During this time the Hermes EN LED would not light. I finally got the boards working properly by unplugging them and re-booting 4-5 times. After that, when attached to the Hermes/Cronus, the EN LED did light and the system worked. Also, DAC noise seemed to diminish a bit when I raised the Cronus voltage from 5.0 to 5.5, BTW.

Best,

Frank
 
Member
Joined 2004
Paid Member
Good luck, ichiban! When I saw that error message I thought of your situation...

BTW, I have Element 14 BBBs. Elsewhere on the web I have read that changing from BBBs by Element 14 to ones manufactured by Circuitco resolved inexplicable software problems. For me, sound = :D

Frank

I have been considering a new BBB from another source. If touching up all the solder joints on the connectors doesn't solve the problem that will likely be my next course of action. Thanks :)
 
Member
Joined 2007
Paid Member
I have BBB from both companies Circuitco and Element 14. From my point of view they are equivalent - and both works well.

I am definitely not impressed with the Element 14 boards. The weird boot behavior I saw last night has returned and I attribute it all to the boards. I believe the uSD card readers on 2 of my 3 boards are faulty most of the time, because when they crash it is after the blue uSD access LED has been on for an extended period. The problem is independent of the kernel on the card, and the boards seem to boot fine from eMMC. Of course, I can't confirm the boot error because the HDMI behavior of these things is totally unacceptable. Even though HDMI is a known issue, getting monitor output seems like a miracle - the one time in 100 it will happen to work! I will contact Element 14 and see what they say about uSD card read failures.

The positive news for me is that I just tested the newly-installed Teleporters and they are going to be superb! After all the i2S noise I heard last night (using 2", direct copper leads with a pin & connecter), I went ahead and soldered all Teleporter connections using <1" leads of solid silver wire. :D ...now silent and solid as can be! ;)

As with all my projects centered on Russ and Brian's fine work - and now Miero :) - this one is no less fun and rewarding! I just need to understand our BBB platform better... It's a process.

Cheers,

Frank
 
Last edited:
Miero Is Botic support an alsa mixer?
Strange: When I'm trying to list available mixers for the output in squeezelite (in this case hw:CARD=Botic) I receive error:
Code:
root@botic:~# squeezelite -o hw:CARD=Botic -L
  [07:43:20.388873] list_mixers:123 load error: No such file or directory
I would expect to see ‘PCM’ to use subsequently with -V option for volume control.
 
What type of mixer do you want? Software mixer or do you want to control volume directly on the DAC? Which one?

I've prepared kind of support for ES9018 so far. Check HOWTO document for more info.

miero I'm considering using software mixer to volume control of my DAC (4x BB PCM1704 balanced) with Ian's NOS I2S to PCM converter.
This software mixer with (squeezelite and lirc) can be used to volume remote control.

I'm just considering. I do not know how such an approach influence sound quality...but would be convenient.
 
Last edited:
You do not need alsa mixer for controlling volume in squeezelite. Internal volume control in squeezelite works well out of the box. Also MPD in botic distribution is set by default to do software volume control. :)
I know that internal volume controll works in squeezelie but to control DAC volume remotely (as I understood) squeezelie needs to have alsamixer and squeezelie should be compilled with lirc support. In my system Squeezelite doesn't detect alsamixer.
 
OK, I see. This is not supported (now), but it can be implemented if you can provide following information:
- shell command that retrieves current volume setting from the DAC
- shell command that sets new volume to the DAC
- minimum and maximum value of valid volume

In the current (Botic v5) version there hardcoded these volume controls:
- MasterTrim is 4 byte linear volume with max. value 0x7fffffff
- DAC[0-7] are 1 byte logarithmic volume -val/2 with min. value 255 for -127.5dB

Check the following script for ES9018:
- https://github.com/miero/botic-tools/blob/master/botic_helper
 
OK, I see. This is not supported (now), but it can be implemented if you can provide following information:
- shell command that retrieves current volume setting from the DAC
- shell command that sets new volume to the DAC
- minimum and maximum value of valid volume

In the current (Botic v5) version there hardcoded these volume controls:
- MasterTrim is 4 byte linear volume with max. value 0x7fffffff
- DAC[0-7] are 1 byte logarithmic volume -val/2 with min. value 255 for -127.5dB

Check the following script for ES9018:
- https://github.com/miero/botic-tools/blob/master/botic_helper

Thanks miero. I am not sure if hardware dac volume control settings matters (I don’t know shell command for retrieving DAC current volume setting anyway ;-))
Please see these posts: describing squeezelite’s –V option and – U option.

I suspect that to remotely control volume and other squeezelite parameters (besides alsa mixer support) squeezelite needs to be compile with ‘-DIR’ parameter. There is also a need for appropriate lirc configuration. Unfortunately I do not have experience with lirc...
 
Last edited:
There is no point of using -V or -U options if you do not have implemented HW volume control in botic_helper.

The "software volume" works great in squeezelite even without HW volume control.

The Botic driver does not change volume, it just plays "bitperfect". The ALSA can help you control volume on the DAC (Botic will play still bitperfect in this case). Or you can use software volume; in both squeezelite and mpd (preffered option) or one can also set up ALSA to provide software volume itself (via alsamixer), but you will loose "bitperfect" output then.
 
Member
Joined 2004
Paid Member
Grrrr! :mad: MPD

=1st=
I've got the remote music files mount command listed in both /etc.fstab and /etc/rc.local . Yet, when I power down & reboot the mount doesn't happen ?

The mount command I use works fine when I enter it in ssh.

mount -t cifs //192.168.1.12/M/MUSIC /data/remote -o username=***@MSI-PC,password=***

=2nd=
After I manually mount the remote files and then start HTTP,YMPD via Win7 the remote files show up, but not always, and I can select and play something.
Then part way thru a song it stops playing, check on YMPD and it's frozen?

I've searched this thread for all MPD references and am going through them for an answer hopefully.

I'm posting this hoping that if I don't come up with a solution someone else may have the answer.
 
Member
Joined 2004
Paid Member
This not directly related to MPD...

Are you still using v3? Things with mounting/time/networking were partially broken there.

No, Bot-v5.
However, since my last post I put a wait in ahead of the mount command and
now I cannot get into SSH.
Tried reflashing v5 which is on the SDcard but then after that on boot only get the poer led on. So, it's back to square one again.;)