• 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.

Hermes-BBB/Botic cape for BeagleBone Black

Hi Folks,

The module/PCB is available here:
Cronus Reclocking

As promised here is more info on the Hermes-BBB for the Botic driver - it is part of an idea that Miero and I worked together to bring to fruition. Miero wrote the Linux driver/distro side and I worked on the hardware. Together we worked through the datasheets to decide how Botic should work. I am very thankful for the chance to work with Miero on this. It has been great fun.

Hermes-BBB is an open design. I will be sharing the design info (including gerbers etc) as soon as we figure out the logistics and licenses.

Here are some of the features:

  • Designed specifically to work with the Cronus - but can work with any other selectable clock source.
  • Exposes an isolated clock select output and master clock input.
  • Fully isolated audio signal with 1 -8 channels of PCM - 1 - 4 channels of DSD output. All I/O to the Cronus and/or DAC is fully isolated.
  • SPDIF output is possible.
  • Header for Switches/Rotary encoder
  • Header and drivers for indicator LEDs. These can be re-purposed for GPIO via the "FLAGS" header.
  • Auto selection of DSD vs PCM routing for DACs that multiplex the LRCK signal with a DSD channel. This means it works well with the BIII-B3SE etc.
  • Fully isolated and non-isolated access to I2C for interacting with DACs and other devices.
  • Jumpers for either powering the clean side of the I2C isolator from the Cronus or the DAC.
  • USART header
  • ADC header for analog control.
  • Headers for external power/reset switches.
  • Prototyping area (for fun!)
  • Provision for backup battery to protect the BBB on shutdown by providing a soft shutdown(self regulating battery not included in the kit - but very easy/cheap to obtain).

This module is one of a few Hermes module we have designed to connect directly to a Cronus module which provides the master clock and relocks the audio data to remove any phase noise.

It has been thoroughly tested and works with any audio signal which the BBB can generate. I have tested up to 384Khz 32-bit PCM. Similar data rates for DSD would be no problem.

The isolators can handle input and output in excess of 100Mhz without any issues.

We will be writing a comprehensive setup guide/manual.

It is designed to mate directly with with BBB and the Cronus for excellent signal integrity and no wiring mess.

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License

Battery Selection

The Hermes comes with a 10K resistor across the NTC terminals for batteries that are self protected against overcharging/current/discharging - LiPo type "062535" (search ebay) are suggested. 250-500ma is more than adequate. This is the only type of battery we recommend!!!

It is possible to use other battery types - but it is not suggested - because the battery manager on the BBB does not protect from undervoltage nor accidental shorts (over current).

Cheers!
Russ
 

Attachments

  • hermes-bbb.jpg
    hermes-bbb.jpg
    54.2 KB · Views: 4,988
Last edited:
Excellent :)
Some pictures of the final populated board would be great.

Am I right that the i2c port could allow for an lcd display to be hooked up? Is there any provision planned for this in the Botic build?
I was looking to set up a display for the rPi before I swapped to bbb and got as far as finding this nice guide for adding that functionality for rPi /Squeezelite
http://www.thesterk.com/picoreplayer-lcd-raspberry-pi-squeezelite-lcd-screen/
which looked fairly straightforward. Could that be added/included with this bbb/hermes/Botic solution?
Thanks,
James
 
Powering down

Assuming we will need a battery for shutdown protection i would like to know if i need special power down/up instructions.

Is a hard on/off power switch on the back of my dac chassis acceptable or does it need a more graceful shutdown by means of a signal from a pushbutton?

Also my thinking is to run the bbb from a 5v 2a smps and have it control some relays to power the other parts of the dac (transformers, power supply, dac board). In this way the bbb would also function as a standby controller. Are there any problems with this idea?
 
What other hardware parts needed? Also unclear to me will it natively play all the PCM material without a controller ( opus and COD)
You can get 48kHz family audio out with just a BBB, DAC, and Botic. It's getting a good quality clock, the 44.1kHz family of sampling rates, preventing interference issues, and synchronizing other devices with those clocks, that necessitates added hardware. It appears to be made to be used both generally, and also as part of a stack of TP products, so is a bit complicated.

The BBB has digital audio coprocessors (McASPs), that can mux, demux, and route digital audio signals, including to and from the BBB's memory, supporting 4 in/out stereo I2S, stereo S/PDIF, and DSD, and they take external clocks. One of the two the BBB has are exposed to pins. So, the BBB is a computer with pretty robust integrated digital audio transport hardware on the same chip as the CPU. It is very well documented. It is not, however, supported in software at all. That's what Meiro's Botic handles, providing device-specific ALSA driver support, so we can use the audio transport hardware built in to the board. The TP hardware, as it relates to the Hermes-BBB, is to be able to make the most of that transport hardware.

To only get a decent audio out, you could probably find an async USB sound card with Linux support, and be on your way (if you only need digital, an Amenero or a USBStreamer will do). As you consider doing a bit more, or just reduce the amount of reclocking and resampling you get stuck with, you'll come to points where you can get 95% of the way there with a BBB, RPi, Udoo, etc., but for clock speed and/or clock domain issues (which don't always present themselves that way, at first). Every normal workaround has its negative aspects to contend with, including accepting that you have to live with several stages of resampling and/or reclocking between your source data and the DAC (with the NUC, Cubox-i, and others, general tinkerer-friendliness tends to be lacking, in various ways). The BBB having the well-documented McASPs give it a Goldilocks quality for dealing with this class of problems, provided the clocks can be managed. Even just giving good clocks for 44.1kHz and 48kHz, and not needing yet another USB device, has advantages, given the weak CPUs on these SBCs (even the most expensive Cubox-i or Odroid can't hold a candle to first-generation Atom netbooks).

I2C is there, and there are even multiple Python libraries supporting it on the BBB. I haven't had a need for it yet, myself, but Google turns up enough tutorials and libraries...
 
Last edited:
Practicalities

Could someone who is in the Know, please comment on the ballpark dimensions of the attached assembly? I want to obtain an enclosure to house these four items plus 6 volt tx and dual 5 volt psu (LCDPS).
Thanks, jtr.

Also, many thanks to Russ, Brian, Miero, et al, for all the time and hardwork that has gone into the Botic/Hermes/Cronus project.
 

Attachments

  • BBB-Hermes-Cronus-Teleporter-Assembly.jpg
    BBB-Hermes-Cronus-Teleporter-Assembly.jpg
    70.5 KB · Views: 2,018
Hi Russ,
I'm so sad it's already "Out of stock" :(
Is it going to be available again soon ?

Pascal

It may not be so sad. They say the shipment of the first batch is scheduled to begin the week of 13th April. Until then or around that period, I think the second batch will appear in the ordering list again. So the difference of delivery time between the first and second will not so big. All's well that can wait with patience :).