diyAudio

diyAudio Basics in the Digital Age

Digital should not remain a barrier for diyAudio beginners. Before the digital age, diyAudio was about designing a PCB and soldering through-hole components on it.
Nowadays, diyAudio encompasses digital. It requires designing a PCB hosting SMD (Surface Mounted Devices), and it requires creating a DSP (Digital Signal Processing) program. Those are the two new difficulties.
Ten years ago, most diyAudio enthusiasts would have failed building a digital audio system from scratch. The situation has changed. There are more and more hobbyists dealing with 32-bit microcontrollers. There are more and more hobbyists overcoming the SMD difficulty.

Here is a digital audio system built from scratch. Diptrace got used for drawing the schematic and converting it to a PCB.

The PIC32MX2 gets debugged and programmed using Microchip MPLAB ICD 3 ($189.99) . A simple experimental application would read the stereo audio entering the WM8731, apply some processing like filtering, equalizing, splitting, dynamic compression or expansion, then deliver the processed audio on the WM8731 stereo outputs. (continue reading…)

Share

diyAudio About Diptrace

DipTrace remains free provided you don’t hit the 300 pin barrier. From a diyAudio perspective, what are the possibilities within such limit? Here are three different diyAudio boards as practical examples.
The first board hosts a PIC32MX2 coupled to a WM8731 stereo codec.
The second board is a SigmaStudio target, hosting the ADAU1701 the same way as Analog Devices EVAL-ADAU1701MINIZ.
The third board hosts a WM8580 multichannel codec delivering eight analog outputs.
The common denominator of all three boards is a 2×10 pin expansion connector allowing to stack them. A possibility is to stack PIC32MX2 acting as USB-audio device, grabbing digital audio from the PC, sending it over I2S to the ADAU1701 board. (continue reading…)

Share

diyAudio About Audiodesine ADAU1701 Carrierboard

Things are moving fast. Want to build your own miniDSP? Operated within Analog Devices SigmaStudio Digital Audio Compiler? Try ordering the  ADAU1701 Carrierboard from Audiodesine. Quite surprising, the company presents itself as specializing in “Audio Design for an Analog World”.

Such statement doesn’t imply that Audiodesine people reject or ignore digital. How possible anyway, now that virtually all audio material get recorded, mixed and edited in digital?

“We love analog, but we do not hate DSP, though we do regret the fact that to get into DSP you seem to need SMD soldering skills and a lot of math”.

Audiodesine selected the ADAU1701 DSP because of SigmaStudio (from Analog Devices) requiring no programming. SigmaStudio allows you to drag and drop prebuilt blocks such as “State Variable Filter”. In a few minutes you have a circuit. (continue reading…)

Share

diyAudio About Arduino shields and mikroE mikroBUS

From a diyAudio perspective, shall we experiment digital audio using established standards like Arduino shields and/or mikroE mikroBUS? Looks seductive on paper. Say you have Arduino CPUs lying around. Would be nice to try digital audio with them. Okay, let’s start designing an Arduino shield specialising in digital audio, possibly hosting a WM8731 audio codec or a WM8580 (WM8581) multichannel audio codec. Have you tried yet? Got the catch? You may switch to a PIC32MX5 carrierboard like mikroE MINI-32 ($25). Want more fun? Adding a TFT as GUI? Currently available are mikroE mikromedia modules  equipped with PIC32MX4 ($99), PIC32MX7 ($149), ARM LPC2148 ($99), STM32 M3 ($99), and STM32 M4 ($99).

Let’s reconsider from a fundamental utility perspective. Why those specifications indeed? The answer comes from MikroE. (continue reading…)

Share

diyAudio ALT+V then N (display SPICE Netlist)

LTspice from Linear Technology operates as schematic entry for the Digital Audio Compiler.
The filter coefficients get manually entered in the audio subcircuits by right-clicking them. The audio sampling frequency gets defined using the .param Fs=44100 directive. An IIR BiQuad gets simulated using two delay lines, each involving a matched transmission line, with each delay automatically defined as 1/Fs in all subcircuit instances.
No quantizer, no arithmetic saturation, no sample/hold. However the Bode Plots appear to be valid. Try it out with the WM8731 Audio Crossovers – Digital XOs downloadable files. (continue reading…)

Share

diyAudio WM8580 SPDIF Management

WM8580 looks perfect for experimenting multichannel audio. Wolfson managed to pack a lot of features in a well structured manner. The S/PDIF Receiver and S/PDIF Transmitter are the most complicated blocks, needing to comply with the S/PDIF standard. Let’s make sure we know what we are talking about.

First thing to point out when dealing with Wolfson WM8580 S/PDIF Receiver, is the high quality of the recovered clock, exhibiting less jitter than some Cirrus S/PDIF designs still used in digital crossovers like Behringer DCX2496. People having got trouble with S/PDIF in the past may feel a positive difference.

Second thing to point out is Wolfson choice to implement a S/PDIF frame management following the Consumer (Con) grade instead of the Pro grade. There is nothing qualitative in this.
A chip adhering to the Pro grade gives full access to a table that gets progressively delivered, one bit per audio sample, along with the audio data. After 192 audio samples the table gets completely refreshed. You can imagine how powerful and flexible it is, having 192 slow serial channels at disposition for conveying auxiliary data. (continue reading…)

Share

diyAudio WM8580 PIC32MX2

Imagine a PIC32MX2 microcontroller meeting a WM8580 multichannel audio Codec on a blank sheet. Will they ignore each other or will they start chatting?
I did such experience on an evening last week. I took screen hardcopies of WM8580 block diagram and PIC32MX2 package outline, converted into .bmp using MS Paint for dropping them abruptly on a MS Publisher sheet. They were looking so alone, surrounded by nothing, disoriented like Marines in a desert.  Up to the point that I added two more of each. Looked much better, like a little society of silicon chips, say the Mayflower Pilgrim Fathers. I started sketching with my pen, adding S/PDIF connectors and wires in green, I2S buses in red, and control signals in blue. Time to go to sleep.

The next morning I woke up with a complete system done in my head. Yes indeed the six chips had a chat, and they managed to keep my brain informed. It took me five minutes to add a few lines on the sheet, and voilà, we get a diyAudio system basing on identical PCBs each hosting a PIC32MX2 and a WM8580.

(continue reading…)

Share

diyAudio PIC32 SPI Register Map

There are already three different PIC32 families stacking on each other. Each new family introduced major changes in the SPI  modules. The first family relied on unbuffered SPI similar to old 8-bit microcontrollers, the second family introduced buffering, while the third family introduced I2S compatibility (aka Audio Mode).
November 2007 Microchip introduced the PIC32 MX3-4 families of 32-bit microcontrollers. They were designed to be pin to pin compatible and share the same peripherals set with the PIC24FxxGA0xx family of devices allowing the use of common libraries, software and hardware tools.
July 2009 Microchip introduced the PIC32 MX4-5-6 families that provide up to 128 kbytes of RAM and extensive connectivity options, including 10/100 Mbps Ethernet, two CAN2.0b controllers, USB Host, Device and OTG, and 6 UART, 5 I2C and 4 SPI ports.
December 2011 Microchip introduced the PIC32 MX1-2 families featuring two I2S interfaces for audio processing. Does it mean all previous families were unable to deal with audio?

(continue reading…)

Share

diyAudio About DM320011

DM320011 is the Audio Development Board for PIC32 MCUs available from Microchip, priced $149.99 excluding shipment.
The board connects through the MFi dock edge connector to the accessory development platform for iPod and iPhone. Call this an iPod dockstation.
So now Microchip wants to place PIC32 chips in digital audio applications.
From a diyAudio perspective, that’s an interesting starting point.
Quite intriguing is the MFi dock edge connector showing at the right side. Looks overkill for connecting an iPod. Really, honestly, how can a PIC32MX7 featuring no I2S interfaces, be involved into digital audio? There must be a trick. Time to investigate. Let’s zoom in. (continue reading…)

Share

diyAudio About CM6206

Never heard about the C-Media CM6206 7.1 USB-audio chip ? It comes out as the chip used in most 5.1 and 7.1 USB-audio adapters.
Back in July 2010, Adrian Pardini tried to get it understood by ALSA – the Advanced Linux Sound Architecture.
There is a Linux patch about CM6206. Unfortunately there are reported quirks. Eric Lammerts, Clemens Ladisch and Dan Allongo continued working on ALSA CM6206 support.
In April 2011 Wolfgang Breyha and Takashi  Iwai continued on the Android Source Tree.

Go googling “revision 8129e79ed7932bd11d60518d62434a0b687e5771″

ALSA: usb-audio – Terratec Aureon 7.1 USB ID as C-Media cm6206 quirks
This patch adds support for the Terratec Aureon 7.1 USB which uses a C-Media cm6206 and needs all the quirks already found in the past.  (continue reading…)

Share

  • Follow

  • Just a Moment Please

    About You
    What defines you the best...
  • Disclaimer

    The information on this website is based on my personal views which may differ from my employer(s). The free material here to download is the work I have done in my free time and, though may seem resembling, does not belong to my current or previous employer(s). It is solely my own intellectual property.
  • Copyright © Electrodesigns.net 2011-12
    iDream theme by Templates Next | Powered by WordPress