The ultimate Teensy 3.5/3.6 audio board: any ideas?

Status
Not open for further replies.

MickMad

Well-known member
Hi there,

I've been thinking about this project for one month now and I already started laying out schematics and whatnots for this project, but I think that asking everyone around here for their opinion is the best way to know what is actually going to be useful and what not.

So, as you can see from the title, I want to design THE ultimate Teensy audio board; since the powerful Teensy 3.6 came out I think we need a better audio board, with hi fi level CODECs and other really cool features for audio projects.

What I have in mind is a sort of motherboard where you can plug the Teensy 3.5/3.6 in and then have a lot of plug-n-play modules that will allow to make any kind of audio project. You want to make a MIDI synth? Plug in your own knobs and switches; want to make a guitar effect processor? Plug in your own hi-z preamp on the inputs... etc. etc.

The features I think are a must are the following:
  • 2 stereo ins, 2 stereo out
  • External power supply with dual rails (really useful for designing good preamps and output amps)
  • USB B plug (I personally hate USB micro connectors)
  • Balanced and unbalanced connections (there's no hifi system without balanced connectors)
  • 2 headphone amplifiers (one for each stereo output)(may be designed as a module)
  • Hi-z/line input selector (instrument or mic preamp that brings the signal to line level)(may be designed as a module)
  • GPIO expander (to be able to connect LOTS of analog or digital IOs to the Teensy without using too many pins)(more about this later)
  • ILI9341 headers (so to be able to use a nice display for any GUI needed)

For the CODECS, I was looking at the AK4621EF (I worked with Ashai Kasei devices before and they make really good stuff), really hi-fi codec in a small package. The cool thing about this codec is that not only it has true differential inputs and outputs, but it also has really cool input and output bandpass filters that allow me to design the input and output connections without having to put a 6th-8th order active filter in front of every connector to cut away undesired frequencies. Oh and the SNR for both ADC and DAC is way above 100 dB.

For the supply I'd like to make a switching supply with dual outputs for +5 and -5 volts, that takes the input from a standard wall-wart supply. I'd like it to be a powerful supply, something that could source, say, up to 1 A easily, for more power-hungry applications (like, with a LOT of LEDs). I think the dual supply is mandatory for a hi-fi audio solution because if you want to make good preamps a dual supply makes opamp circuit design OH so much easier.

Nothing to say about the USB B plug: I saw that there are D+ and D- pads under the Teensy 3.6 and I'd really like to connect to it a huge and bulky USB B port because USB micro connectors (especially the male ones) fail miserably. I have USB B cables and connectors that after 15+ years of misuse are still working like a charm, while I have to buy new micro USB cables every 6 months.

For the jacks, I have two options: the first one involves using a balanced connector to be used as both a bal/unbal jack (you basically just short one contact to ground), or a more clean approach of having dedicated balanced and unbalanced jacks, with dedicated balanced and unbalanced buffers.

Headphones: I'd really like to have dual headphone outputs. Since maybe not everyone would need this, I could make the headphone out as an add-on module; if you only need one headphone out, use one module. You need two? Get two. You need none? Get none/ Easy as pie. The headphone out would be directly tied to one of the two stereo outs. QUESTION: the headphone out in this way would depend from the DAC out volume, do you think that would be an issue?

Inputs preamps: like for the headphones, I'd like to have a modular input preamp thingy; if you don't need any preamp and just want to use line level, then use the onboard connectors; if you need hi-z/mic preamp, you plug your preamp and use an analog switch to select between the preamp or the line input. The analog switch could be integrated on the board for ease of use and for ease of preamp modules development.

GPIO expander: I love multiplexers, and I've been overthinking about a way to use the SPI module on the Teensy 3.6 along with its hardware CS lines to read data out of a load of stuff while using a really low number of pins. It's a solution that involves using one SPI module, shift registers, multiplexers, 2 analog pins and a lot of connectors.

ILI display: nothing to say, it's just going to be a header where an user can plug its own ILI9341 TFT display. The best would be to have an on-board one in order to avoid any issues with non-standard sizes of display modules.

I remember reading about Paul's desire to use digital isolators between the Teensy and the ICs, and transformer coupled analog IOs for optimal performance, but this would ramp up the cost of the board a lot. I'm not saying it's not doable, I'm just saying if it is actually necessary to use them or not.

So, any comments? What would you like to see in a board like this?

Cheers.
Mick
 
Sounds like you've done a fair bit of thinking!
I completely agree with the modular based approach, having some core functionality and building ontop of that as required makes a lot of sense.

Codec looks great, It's got that magic 24-bit resoloution but I was under the impression the audio library wont be supporting that any time soon so how were you thinking of driving it?

Dual rails makes sense in many ways but have you looked at how it's normally done? Most pedals and synths run from a single power rail, it's only the bigger stuff that uses dual rails and usually using a centre tap. It may be that the smaller stuff uses switching internally, I genuinely dont know. What is for sure is that it would be a shame to have 24-bit audio ruined by a noisy rail, which is more likely from switching - I'm stating the obvious I apreciate.

I would have thought balanced input jacks would be a little too-specific my self. I think normally jacks are mono and steryo, you can get balanced but this is less common; you normally see balanced outputs in XLR cables. I would think the option to easily connect balanced inputs is definitely a must, but not as default.

One headphone as standard makes sense to me, and if you can add another easily that's great. Personally I'm of the opinoin that when it doubt, buffer the signal out.

Yes to input preamps, and yes again if it can be easy to have as many as I like.

GPIO is always great, I would think about perhaps having a few low latency pins perhaps even interrupt capable and then plenty of slower speed GPIO.

Easy to add display is always grand, I'd think that a built in one would add cost and space that I'd be vexed by if not using the screen. Making sure there's a reasonable nuber of compatible displays makes sense of course.

Overall I completely agree that the current audio board could use a bigger brother, the modular approach makes a lot of sense. I'd like something that I could use in a project and know that I could very easily ungrade later, but I'd not want to buy something where I've paid for lots of bits that I'm never going to use, so I'd focus on connectivity rather than capability - move as much of the cost into the modules. I think I'd personally look for one steryo out, and maybe a few auxilary channels rather than two steryo ( as default ) becuase I think its quite rare that two steryo out would be needed.
 
Hey, I got to UP this topic a bit: I just published a draft of the project on Hackaday.io and submitted it for the Hackaday Prize 2017. For every like that I get before 1st May I might get a dollar to help funding the project so I'd be glad if anyone interested could like it there and give me a hand making this sweet baby.

https://hackaday.io/project/20982-matt-modular-audio-toolkit-for-teensy

In the end I am settling on three main modules, CORE, POWER, IOAPEX, and I will later make a set of submodules for each main one.

The CORE will have the AK4621EF as I originally intended, it's the best quality/price, I will also settle for balanced inputs and outputs with an option to unbalance them on board, and with an analog switch to select between the onboard amplifier or an external one (through PnP modules).

The POWER one will provide a split supply to ease the design of analog modules, plus the possibility for an external power supply (like a 12 V wallwart). I will also leave the space for an Ethernet module with PoE capability; I will design it around the already well tested Wiz modules so no software development will be neeeded on that side.

The IOAPEX module will have a CPLD and an analog mux, with 3x16 connectors for external IOA (input, output, analog) modules; the IOAPEX will use one SPI module (4 pins), one reset pin, and one analog pin, to control 256 digital inputs, 256 digital outputs (LEDs) and 256 analog inputs (knobs pots sliders whatevers). I say 3x16 connectors because I am using 16 bit shift registers and multiplexers to control everything; in fact, each submodule will have only one 16 bit multiplexer and 16 buttons/leds/knobs/whatever the user needs. In this way an user would be able to make his own submodules with nothing but a DIP package 4096, perfboard, and whatever he needs, also reducing the eventual production cost of submodules for me.


I am thinking of putting a MIDI IO somewhere, along with a CV converter, giving it just EVERYTHING you could possibly need for a complete audio solution.

I will keep Teensy-related software development here, while any hardware discussion will be on the Hackaday page from now on.
 
Status
Not open for further replies.
Back
Top