close-circle
Close
0%
0%

MAD - Modular Audio Devices

A modular approach for hifi audio projects, powered by Teensy 3.x

Similar projects worth following
close
Modular Audio Devices (MAD) provides the hardware building blocks for any kind of audio project powered by Teensy 3.x

CORE : hosts the Teensy 3.x, provides an AKM AK4558 CODEC with unbalanced stereo input and output on Harwin M20 2x3 female pin headers with 2.54mm pitch, screw terminal for external power input, and Teensy pins breakout on Harwin M50 female pin headers with 1.27mm

IN mini : TRS 1/4" jack or TRS 1/8" jack to Harwin M20 2x3 male pin header, with RFI filter capacitors

IN lite : fully differential stereo line receiver on 2 1/4" TRS jacks to single ended output, with independent volume control, reference level setting (-10dBV or +4dbU) and support for external preamp modules with differential outputs, hosting THAT Corp and TI audio line of opamps

IN hi-z : high impedance instrument preamplifier with single ended input on a 1/4" TS jack, fully differential output and independent gain control, based around TI audio line of opamps

OUT lite : stereo single ended input to impedance balanced (balanced/unbalanced) line output on 2 1/4" TRS jacks, with volume control, secondary headphone output on a third 1/4" TRS jack, switch to select between line out/headphone, with support for auxiliary output amps with single ended input, hosting TI audio line of opamps


PSU D : split supply DC/DC converter with very low noise LDOs, with USB, DC or external power input (max 5.5V), designed for +/-5 V but configurable for up to +/- 15 V, with power output on terminal blocks to provide easy interconnection to all kind of modules, hosting TI line of DC/DC converter and LDOs; USB data lines are offered on a soldering header in order to connect the USB port to the Teensy

More modules to come...

mad psu d.pdf

PSU D v1 schematic

Adobe Portable Document Format - 90.63 kB - 10/15/2017 at 14:53

eye
Preview
download-circle
Download

out lite.pdf

OUT lite v1 schematic

Adobe Portable Document Format - 56.42 kB - 10/15/2017 at 14:53

eye
Preview
download-circle
Download

in lite.pdf

IN lite v1 schematic

Adobe Portable Document Format - 69.71 kB - 10/15/2017 at 14:53

eye
Preview
download-circle
Download

in hi-z.pdf

IN HI-Z v1 schematic

Adobe Portable Document Format - 20.22 kB - 10/15/2017 at 14:52

eye
Preview
download-circle
Download

core.pdf

CORE v1 schematic

Adobe Portable Document Format - 88.16 kB - 10/15/2017 at 14:52

eye
Preview
download-circle
Download

  • 1 × Teensy 3.x CORE module - cpu
  • 1 × AK4558EN CORE module - codec
  • 1 × LP5907 CORE module - LDO
  • 4 × 22uF Nichicon audio capacitors CORE module - audio DC blocking capacitors
  • 2 × 1x14 female pin header, straight, 2.54mm pitch CORE module - Teensy socket

View all 9 components

  • #12 - Destroy - Erase - Improve (or what MAD's future will be)

    Michele Perla5 days ago 0 comments

    After 6 months of thinking and overthinking, making layouts, changing schematics, making simulations, remaking layouts, making some more simulations, looking for components, making prototypes, breaking prototypes, making more prototypes I decided it's time to take everything good and bad in the project so far and start over, once again.

    Here's a list of the good parts:

    • CORE : the screw terminal for the external power is really useful, the jumpers to select which of the 2 Teensy I2S channels to connect the AK4558 to make this setting really straighforward, the LC filter on the external power supply seems to act really well in suppressing high frequency noise on the supply
    • IN : the Baxandall works well, the switch to select between the provided jack and the external input works well too thanks to the dual caps used on the switch pins, the use of an instrumentation opamp as a line receiver is a must, channel independent volume control is also a must
    • OUT : the Baxandall works well, the driving capabilities of the out amp used are amazing (the headphone gets reaaaally loud)
    • IN HI-Z : it works really well and requires just a couple of components
    • PSU D : the dual supply is stable 

    Now the bad parts:

    • CORE : after probing the in/out headers with the scope one too many times, they got loose and the modules won't stick as well as when I just made the protos; also, the connectors take some PCB real estate that could be used for something else; the I2S RX setting  SMD jumper requires a wire to be soldered to it, which if pulled can lift the pad (I just did that); the 1.27 mm pitch headers with the breakout of the Teensy pins unused by the CORE are straight useless
    • IN : the Baxandall adds too many components to the signal chain which could affect the overall signal quality (less is better); PCB real estate usage is not optimal; some components are WAY too expensive (read: precision thin film resistors) and could be unnecessary if using more integrated solutions (read: amps with laser trimmed resistors)
    • OUT : Baxandall, same story as for the IN module; also, PCB real estate usage is even less optimal in this case; volume is WAY too high on the headphones, so I could use a less powerful amp while retaining signal quality; DAC filter could be useless since the passive low-pass mounted on the CORE should be enough already to achieve the AK4558 datasheet's specs (plus, the AK has cool programmable filters for both the ADC and DAC to reduce out-of-band noise and whatnots)
    • IN HI-Z : the second opamp in the design (that is, the one that inverts the signal and adds gain) saturates easily and brings more troubles than benefits
    • PSU D : it's an overall costly solutions, especially because the ultra-low-noise regulators that I picked up are rendered useless by the fact that the switching noise of the DC-DC converter I chose is out of their effective PSSR region; also, the terminal blocks I soldered on the proto, with a push lever instead of the screw, are too hard to push, I'll just stick to standard screw terminals

    While the whole project seemed like a novel approach to audio applications with the Teensy, I think I started with the wrong foot; I focused on audio quality but I probably ended up ruining it in the first place adding way too many parts on the signal chain. Also, focusing on modularity I ended up stripping away the CORE of most stuff, leaving it to be just a fancy breakout board for the AK4558, not very different from my Hi-Fi CODEC module board I did a while ago. 

    With this in mind, I think that as it is right now the CORE is not really commerciable, because I think it doesn't add any added value to what's available for the Teensy (apart from the superior quality CODEC, that is). And the other modules kinda lose of sense without the CORE (apart for the PSU D which, with some modifications, could be a handy tool to have on...

    Read more »

  • #11 - Making a small guitar effects processor with MAD and Teensy

    Michele Perla10/13/2017 at 17:12 0 comments

    I soldered an HI-Z module to test it, and after some ground issues I got it working; you can see in the video that the gain control is set to no gain, so it's acting as a voltage follower; increasing the signal gain using my Gibson SG sends the amp in saturation really easily, so I might have to modify its design. But still, the proto does its job as you can see in the video :)

  • #10 - Prototypes are working, first video

    Michele Perla10/11/2017 at 14:19 2 comments

    Hey there,

    I got the IN, OUT, PSU D and the second CORE module working properly.

    I finally got a YouTube channel up and a Facebook page up as well.

    You can check out the first video here:

  • #9 - Setbacks, or how Pb-Free solder paste ruined my protos

    Michele Perla09/29/2017 at 15:46 0 comments

    Quick update: I ruined my first batch of protos.

    I received the PCBs, real beauties; I received all the components, and I received TWO kinds of solder pastes: a ChipQuik low melting point one, and a CIF lead-free because enviromental concerns yaddah yaddah.

    I made the first CORE module and a set of IN MINI connectors with the ChipQuik paste just fine, here they are:


    The paste is ok, but it does not stick very well to the pads and it keeps oozing out of the syringe even after you stop pushing the plunger. 

    The first CORE proto is fine (except for a spurious copper polygon on the bottom layer that accidentally shorted the power pins ... OOPS :D luckily I only had to scrape some copper away and that's it), the jacks are pretty straightforward.

    THEN: I decided to use the Pb-free paste for the rest of the protos, that is another CORE module plus the PSU, IN and OUT modules. The paste is a beauty to dispens, it sticks perfectly on the pads and does not ooze, allowing a precision job to be done really easily.

    The downside? IT NEVER MELTS. Take a look:

    (oh, in the last picture you can see that the package for the TPSA6120A2 is smaller than it should be but luckily the 10 useful pins could match up with the fooprint)

    I literally put the board through 4 cycles of reflowing in the oven.

    I first used a standard profile, then a longer and higher temperature one twice, then a custom made with even longer and higher temperatures... nothing. The paste is half-melted half-not, the board is literally baked. In an attempt to recover this situtation I turned on the manual setting on my oven to try to keep the temperature even higher for a longer period... the only result I got is that a capacitor exploded, the other 3 remaining electrolytics are swollen and ready to explode at any time, and most probably all the components on the board are useless by now. 

    The thing is that I could not even get this solder paste to melt with my iron nor with my hot air gun. I seriously put the tip of the iron to more than 300 celsius but the paste JUST. WON'T. MELT.

    The only time I got one component properly soldered was when I literally put the hot air gun at 320 celsius with the nozzle at 2 mm distance from the component. I know I can't try this technique on all the components because if they're not broken by now (I highly doubt it) they'll surely be after this treatment.

    So... yeah, a lot of cash just went down the drain. This sets me back a lot in terms of money and time, because I should have spent this week testing the protos but I ended up sad with no money to invest right now and with no protos to test :( 

    I'm going to order the components to make another panel in the next days, in the meanwhile I'll solve some software issues that does not let me use the CORE module properly (there's something in the AudioOutputI2S object of the Teensy Audio Library that crashes I2C communication with the AK4558).

    More to come.

    Michele

  • #8 - PCBs are in, components are on their way + crowdfunding plans

    Michele Perla09/19/2017 at 10:44 0 comments

    Quick update:

    I received the PCBs for the modules I've developed until now; Eurocircuits did an amazing job. 

    Here's the front of the panels:

    And here's the back:

    I also received the AK4558ENs from Digikey, as well as a Xilinx XC9572xl development board to test the IOAPEX functionality while waiting for the components to be shipped.

    Finally, I also got a reflow oven to make the soldering job much easier and faster. I can't wait to solder these beauties and test them thoroughly.

    I can only afford to make one full kit plus an extra CORE module, just to show that the 4 ins 4 outs functionality is there. 

    As soon as I got this first version tested, and as soon as I know the real SNR, THD+N specs of the IN and OUT modules I'll publish them. The simulations show amazing performance at 1KHz (way above the AK4558 specs) but the real world is a different thing.

    About the crowdfunding: I have the intention of starting the campagin ASAP, that means as soon as I got the protos done; also I have the intention of starting one campaign just for the CORE module because I really don't think I can handle a campaign with 9 boards to produce, it would get messy with the boards, it would get messy financially, it would get messy bureaucratically... BUT! I'd really like to make other campaigns soon after the first one to get the other boards out on the market.

    Cheers,

    Mick

  • #7 - Best Product deadline update

    Michele Perla07/24/2017 at 15:04 0 comments

    Quick update before the Best Product deadline:

    The CORE module is done (at least on paper), the PSU module is almost done (I got to find a nice position for the power connectors for the submodules), while the INPUT and OUTPUT modules are yet under schematic review. I am also thinking of making a single supply version of the analog interfaces modules, but not now.

    About the business plan required for the deadline: I have no idea how to make one. I've seen online that to make a proper one I should basically be ready for production, which is totally not the case since I still have to order my first batch of prototypes. Nonetheless, I have a plan in my mind that it's quite easy to follow and I hope it will be counted as a "business plan" at least for the sake of the contest (I know I have to make a proper one since I got to make a crowdfunding):

    My plan is to start making the CORE module through a crowdfunding campaign, to sell it as a higher quality alternative to the Teensy Audio Board; ideally I will offer several modules on the campaign, to give the users several donation incentives (e.g. : first incentive is for one CORE module, second incentive is for one CORE module + PSU + simple analog IO interface, third incentive is for one CORE module + PSU + simple analog IO + pro level analog IO, fourth incentive is for 2 CORE modules + PSU etc etc), but I must be realistic and accept the fact that I may not be able to develop all these modules in time for a campaign.

    As soon as the campaign ends I will keep producing boards either in house (if the demand will not be huge) or through external sources. To produce the boards in house I will need to buy some tools (namely: pick n place, reflow oven). 

    Also, when the campaign ends I will spend the next 6 months to provide support for the modules produced during the campaign, through the means of a forum of some sort.

    After the first 6 months, I will reduce the support time (in hope that 6 months of user base support will cover 99% of the necessary support information for everyone) and resume development of new modules (IOAPEX, PRO PSU, single supply analog IO interface, etc.).

    This will eventually reiterate.

    In a nutshell my idea of business is as follow:

    -Make some MATT modules prototypes

    -Make a crowdfunding to kickstart production of said modules

    -At end of campaign, provide 6 months of support to said modules (or less if most of the support information has already been covered) while continuing production (in house or external fabs)

    -When support phase is over, I will start development of new MATT modules

    -After 6 months of prototyping and preparation, make a new crowdfunding campaign to kickstart production of new MATT modules

    - Reiterate

    I am also considering hiring someone in the future, either to help me with in house production, or to help me with the crowdfunding campaign (probably both). I will also have to invest on marketing/advertisement to make a proper campaign.

  • #6 - Progress so far

    Michele Perla07/01/2017 at 14:13 0 comments

    Hey there,

    quick updates on the project:

    • after talking to a friend, I decided to use the AK4558EN codec instead of the AK4621EF because I already worked with it, I already made support code for it for the Teensy, it has single ended inputs and outputs making the analog interfaces design way easier and cheaper (less opamps = less price), and also it uses an I2C control interface instead of a SPI one, hence reducing the max. theoretical number of devices using the SPI bus in a complete MATT powered system
    • I decided to use the ARCHER (M50-32xxx) series of Harwin Connectors for all board-to-board connections; their dual row 1.27mm spacing connectors are perfect for my case, since I have connectors right under the Teensy these take half of the space, giving me a lot of freedom for component placement
    • I decided to remove some features from the CORE module, making it more barebones and compact; these features are going to be moved on external modules to let users chose which features they need and which features they don't need

    I am almost done with the layout of the CORE module, then I'll move on to the PSU and to the analog IO interfaces, then I'll start ordering some protos.

    As soon as I finish a module I'll update GitHub and here accordingly, with 3D renderings of the PCBs as well.

  • #5 - The Licences

    Michele Perla05/01/2017 at 13:59 0 comments

    MATT is going to be a commercial project.

    My goal is to make a crowdfunding out of this and try to earn a living by producing MATT and future modules for it.

    Schematics and PCB layouts of main modules

    Some parts of MATT's hardware will be delicate and will require careful PCB layout considerations, and to make my design easier through all the different supplies involved as well as to reduce noise in the analog domain due to interferences from digital traces, I will probably use more than 8 layers PCBs, which is not exactly affordable for everyone anyways. So I am thinking of not releasing the layouts, at least of the CORE.

    But I would release the schematics for reference, for anyone to hack around it.

    VHDL for IOAPEX

    I am also thinking of releasing the binary for the Xilinx CPLD, but not the source of the VHDL. This may change in the future; also, for all the VHDL/Verilog hackers out there, a programming header will most probably be present on the final IOAPEX module, so if you want to upload your own code feel free :)

    Code

    All the code to drive all functionalities will be open source. Open sourcing the code is a must in order to give back something to the Teensy community, but also to enable users to develop all kinds of custom submodules.

    Submodules: the real deal

    I would like to keep the focus of users on the creation of new submodules, which are the real key element of this project.

    The base specs for modules, as well as barebones versions of modules, will be fully open source and open hardware.

    The analog IO modules could be made easily by using perfboard; eg. a JFET buffer for a guitar. I will use standard 0.1 inch headers wherever possible, and I will try to keep their spacing in 0.1 inch multiples. As long as the max. output value of the module respects the specs of the CORE onboard input module, anything goes.

    Same thing for the IOAPEX modules: the IOAPEX is in fact designed specifically to keep the external components to a minimum. As already explained, each type of sensor will require only 1 mux, and maybe a couple of passives. I will release base layouts for digital in only modules, digital out only modules, and analog in only modules.

    I was also thinking of making the easiest module, that is one module with one mux, a jumper to select its operation (analog, digital in, digital out), and then 16 plated thru holes to connect to anything an user would like to.

    Let's not forget that every submodule could be used with ANYTHING else, really. In the end these will just be muxes and switches. You want a simple button matrix to use with your Arduino? Get the first mulitplexer example sketch you can find online and plug your arduino to the module through its provided pin header and voilà

    Conclusions

    Some of MATT's design files will not be open, I know, but its key part will be fully open, giving the users simpler ways and tools to make custom and powerful audio solutions.

  • #4 - The Sub-modules

    Michele Perla05/01/2017 at 13:50 0 comments

    MATT will be composed of 3 main modules (CORE, POWER, IOAPEX), plus an ecosystem of submodules.

    Some of the submodules I will/would design are as follows.

    • CORE input modules:
      • mic/instrument preamp with opamps
      • mic/instrument preamp with vacuum tubes (using POWER)
      • RIAA phono preamp (stereo, it would take both inputs)
    • CORE output modules:
      • headphone preamp with opamps (stereo, it would take both outputs)
      • small speaker driver (1 or 2 W, mono)
      • big speaker driver (10-20 W, mono, using POWER)
    • IOAPEX modules:
      • 4x4 buttons matrix with LEDs
      • 4 channel mixer control module: each channel with 1 slider, 1 mute button, 1 solo button, 3 knobs for bass-mid-treble, and 4 LEDs for VU meter.
      • 4x4 FSR matrix
      • 3 octaves compact keyboards (maybe with FSRs?) with pitch-bend and modulation
    • POWER modules:
      • POE with Ethernet could be a separate module

    For the IOAPEX submodules, the limit is one's imagination. I was already thinking of making a Minimoog mockup control interface and plug it in the IOAPEX, or a Rebirth hardware clone... I would really love to bring something like that around as a demo :)

  • #3 - The Modules - POWER

    Michele Perla05/01/2017 at 13:18 0 comments

    The POWER module will provide a stable supply for the CORE, IOAPEX, and submodules, either through a DC wall wart supply, PoE, or AC.

    The module will provide up to 12 W operating with a DC supply or with PoE, and up to 120 W? with an AC plug. I put a question mark because I yet have to design this module.

    Supply for everything

    The module will provide a 12 V DC supply to the CORE module, through its connector; the CORE onboard PSU will accept a wide range of inputs voltage so the POWER module could also use different supplies for that.

    PoE

    A PoE module (like the Silvertel Ag9900) would provide up to 12 V @ 1 A, and 9 or 12 V (DC) could be easily obtainable with a wall wart psu (like the ones for guitar pedals). The PoE module can be used along an Ethernet module like the Wiznet W5500, which is already supported by the Teensy 3.x. The PoE module could be made as a submodule, due to the relatively high cost of the components (some users won't necessarily need PoE and Ethernet).

    Why AC?

    The AC plug would be used to power a high voltage, high current PSU to drive multiple preamps and power stages, in order to be able to use vacuum tubes circuit, or loudspeakers. The voltage and current specs of this part of the PSU have yet to be defined since they would depend from the voltage/current levels needed by preamp and poweramps stages that I still have to design. I would also like to have a way for users to modify the voltage output of this supply using a trimmer maybe, so that users could design their own modules. I found this little project that could help me understand how to design a nice PSU for tubes.

    Optional connectors

    Sub-modules that may require higher supply voltages could take their supplies from the POWER module through a cable connector, instead of using the dual 15 V supply on the CORE module.

    I would like to keep this module as big as the CORE one; I don't want a full setup with all three modules to be too bulky. I have to check how much power I can get out of the module while keeping size relatively small.

View all 12 project logs

Enjoy this project?

Share

Discussions

Bogdan Rădulescu wrote 04/30/2017 at 11:53 point

Sound like a great project. What do you think about using ESP32 as the core? It's way cheaper than Teensy 3.6 and it's pretty speedy.

  Are you sure? yes | no

Michele Perla wrote 04/30/2017 at 12:03 point

Hi Bogdan. Thanks for the support. I am thinking more about the Teensy because of the Audio Library support and for the community that keeps creating amazing audio projects with it; but if someone would like to use this board with any other chip that has I2S and SPI capabilities, good for him! The header on the board does not need to be necessarily populated with a Teensy 3.6 :) The source code for the configuration of the codec, as well as for the use of the IOAPEX module, will be open. If someone would later like to port it to other platforms they can, as long as the platform of choice has a DMA controller, because I would make use of that for better performance

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates