|10th August 2018, 04:25 PM||#1|
Join Date: Aug 2014
Botic build as an easy to use streamer/tv+stereo controller
The BBB-Hermes-Chronus-Buffalo 3SE combination makes it quite easy to build really neat audio appliances.
It took me a bit of googling to put everything together, so I'll describe my build it in case it is useful to someone else. I'm a beginner in DIY audio, comfortable with Linux but not with electronics.
About this build
I used a 7805 regulator for powering the bbb. My unregulated voltage is about 16 V. The 5V-regulators heat sink is quite hot while the battery is charging, but cools down when charging is done. Input selection relays and LED:s are powered with 12 V from 7812-regs.
The appliance accepts IR remote control, has buttons for turning on the soundsystem and the TV (via external relay boxes) and 3 XLR aux-inputs. My better half has accepted it as useable and output level is limited so that my children won't blow anything up.
The dac-portion is unremarkable (but good-sounding), B3SE with iv resistors to a Salas iSelect and after that raw and transformer coupled (LL1527) outputs. I run my bass amp from the raw and my mid+treble amp from the transformer coupled output. The transformer does the low-pass filtering.
I tried the "Rasmusen effect" with capacitors across the dac-outputs (in my case 1 nF was enough) but it did not suit me.
The easiest way is to get Mieros premade Debian-image. It's based on Debian wheezy, which is slightly dated but works fine.
Get botic v4, http://bbb.ieero.com/botic4/bbb-botic-v4-1gb.img.gz
Unzip and write the resulting .img-file to a micro-SD flash card.
Login (over the network, using SSH - Terminal on Mac, PUTTY on Windows) and change the passwords of users debian and root with the command passwd. The original password is "botic". Write passwd --help and press enter.
Add the command
to /etc/rc.local. This will set the systems clock so that certificates work (for installing software etc.)
Optionally expand your root filesystem (Beagleboard:Expanding File System Partition On A microSD - eLinux.org)
Update the system:
sudo apt-get update
sudo apt-get upgrade
Update to botic v7 kernel for i2c-control of the Buffalo:
Support for Botic Linux driver
Install lirc for IR-control:
Support for Botic Linux driver
GitHub - mikebrady/shairport-sync: AirPlay audio player. Shairport Sync adds multi-room capability with Audio Synchronisation
Controlling stuff with python
Debian wheezy has python3.
I use polling to read GPIO:s and python-lirc for IR in small separate scripts, which communicate with a GPIO-flipping backend using the DBus system bus.
This letâ€™s me use different event loops to handle user input.
For Python DBus-examples, see:
To have a script run automatically on startup, just add it to /etc/rc.local (again, using e.g. nano)
Adafruit has a nice python-library for using GPIO:s on the bbb. Reading inputs however doesnâ€™t work. This may be related to an old uboot-version, but the compiler toolchain on Debian Wheezy is too old to compile a newer version, so I gave up and used polling, which works great.
For logic level switches, I have used IRLD120. These are cute and cheap little mosfets. I measured a couple and they had Rds ~0,2 Ohm @ Vgs 3,5 V. Works like glue.
For switching mains-relays, I did a high side switch using IRFP9240 and IRLD120.
Do keep in mind that the GPIO-pins which carry LCD_DATA0 through LCD_DATA15 affect bootup, see https://github.com/beagleboard/beagl...er/BBB_SCH.pdf, sheet 6. This is a fun place to connect rotary encoders...
Also note that if you pull LCD_DATA2 to ground you can force the bbb to always boot from sdcard.
The pin near S is pulled high and the pin near IP is at ground. If S is pulled down to ground (IP_S is closed), I2S-input is selected. If it is left pulled up (IP_S is open) S/PDIF-input is selected.
We can control this with a GPIO using an optocoupler. I used a 4N35 driven by a IRLD120.
To get sound when using S/PDIF, you have to unmute the "External" mixer.
Miero has done a really stellar job integrating I2C-control with ALSA and we can control a lot of DAC-settings using e.g. alsamixer. See Support for Botic Linux driver
Overall I'm very happy with this build. When I do this again, I will not try to fit everything into one box and make it at least slightly repairable/less crappy. The twisted pear stuff really deserves to be made in a not crappy way.
There should be something like 100K resistors tying the XLR-inputs to ground (to avoid loud pops when switching to an unconnected input.)
The next stage is adding a proper I/V (I'm halfway done matching a gazillion jfets for a Sen I/V) and at some point I would like to try out the buffalo pro. Before I get to order that, I have to write a linux i2c driver for the 9028, so that will likely happen some time after nuclear fusion is a commercially viable way to generate power
Lastly thanks to Russ, Brian and Miero for their help and for making this fun kit available.
Last edited by torb; 11th August 2018 at 08:57 PM.
|14th August 2018, 05:19 AM||#3|
Join Date: Jan 2005
Location: Nashville, TN, USA
Wow this is awesome. Great work - not at all crappy - just very DIY Incremental is natural.
Thanks for the kind words - and I really hope you enjoy your project to the fullest.
|16th August 2018, 10:21 AM||#4|
Join Date: Aug 2014
It's just really amazing to be able to buy an excellent kit dac, which functions as a very well supported sound card under linux and be able to build ones idea of the perfect media centre using it.
Has anyone done smart home stuff with this? Imagine sunday morning, when the bbb has started the coffee machine, warmed up them power amps and slowly raises the light as some nice radio starts playing
|Thread Tools||Search this Thread|
|Thread||Thread Starter||Forum||Replies||Last Post|
|Support for Botic Linux driver||miero||Twisted Pear||2623||8th January 2019 08:32 PM|
|Easy-to-build I/V stage||Jocko Homo||Digital Source||202||11th June 2018 12:27 PM|
|BBB/Botic/Cape play problem||ichiban||Twisted Pear||98||23rd January 2018 12:37 PM|
|Easy build amp||Preacher||Chip Amps||5||26th July 2006 07:19 PM|
|Easy to build amp||Turboman||Solid State||15||14th November 2005 09:56 PM|
|New To Site?||Need Help?|