Close
0%
0%

Multichannel Audio DSP Field Mixer Recorder

USBmidi, bluetooth app controll 8 chan portable DSP mixer.balanced audio IO,phantom power,flexible routing,ISO recording. networked Timecode

Public Chat
Similar projects worth following
Multichannel Professional Balanced Audio IO and Digital 196khz 24bit Field Recorder fully, waterproof & Backpackable!

It will include balanced audio IO on XLR and miniXLR with phantom power.
flexible routing from 8 or more pre-amp inputs
Digital Audio IO

4 channel Balanced Master outputs
2 x Stereo Headphone outputs ( individual mix bus )

The mixer will have no screen or knobs.
USB midi knob controller interface.
Bluetooth controlls preamp gains DSP fx mixing ( routing )

Record individual ISO tracks and mixed tracks.
VU / ppm meters of each track and mix on low power screen or glasses??
EPROM to store learned control suface maps / templates
GPS UTC time and LTC timecode share over wifi
SDR multichannel radio mic reciever and uplink to cameras.

List of things that will hopefully never be included !

Complex menu system / screen for operation
extra weight.

NEW DIGI board in the box and running.

NEW DIGI BOARD , dual uSD cards :) 1" OLED for debugging.

OLDER PROTOTYPE 1 NEWS 

below here....

Its Alive !!! here's the 1st test recording :)

https://soundcloud.com/benbiles/bbbox-proto1-recording-48khz16bitwav

Its just 48khz 16bit stereo WAV. There are jumps from incorrect clock timing and there is noise !!

BUT its the 1st recording :):):)

Soon it will be 8 channel WAV poly and 4 stereo mix tracks recording !!!

The bluetooth App does a lot more now also.

Need to get the LIBltc in there soon and try and add timecode.


rev 1


messy box of wires !

rev 1power use for 6 channels , don't forget its +/5v so double this figure

8 channel differntial analogue IO

16 digital audio channel serial I2S TDM IO

ADC - DSP - DAC

8 channel digitally controlled Pre Amp with Phantom power

2 x high end headphone monitoring outputs on individual mix bus.

DSP mixing, mix routing and soft knee compression filters EQ filters and effects etc.

All pre and post mix faders controlled over Arduino USB midi and blutooth app.

Shared Master clock over fanout buffer ( low jitter )

Its working :)

VERY EARLY DAYS ! I can't believe this ever worked !!!! :)

Testing here the 4 channel digital controlled preamp pcb with Arduino USB midi control.

VERY EARLY DAYS :)

Testing of:

8 channel DAC controlled with the Novation Lauch Control USBmidi control surface.

code is here https://github.com/benbiles/usbmidi_multichannel_audio_mixer/blob/master/USBmidi_control_CS4385_DAC

I used the example software controled wiring diagram in the CS4385 datasheet and the DAC is very quiet adter boot. I need to figure out mutec pins etc ..

I use digital PIN 2 on arduino to make RST pin high to initialize the DAC.

the DAC takes the 5v from arduino or 3.3v from DUE etc just supply correct voltage to digital interface power on DAC.

I used these libraryss for USBhost and USBmidi.

the required USBhost version 2.0 library
https://github.com/felis/USB_Host_Shield_2.0

the required USBH_midi library by Yuuichi

https://github.com/YuuichiAkagawa/USBH_MIDI

  • 1 × ADAU1467 Semiconductors and Integrated Circuits / Misc. Semiconductors and Integrated Circuits
  • 1 × ARM STM32F7
  • 1 × Fan out Buffer
  • 1 × 24.576mhz oscilator
  • 1 × CS4385 Audio ICs / Audio Digital to Analog Converters (DACs)

View all 9 components

  • 24bit and 16bit switching playing and recording / different channel counts

    ben biles16 hours ago 0 comments

    24bit and 16bit switching playing and recording / different channel counts.

    I think I need to freeze the DSP while changing these rates but working well without !! 

    no clicking noise on change over either :)

  • 1" oled debug screen working :)

    ben biles7 days ago 0 comments

    Maybe a bit pointless but it helps a little bit with knowing if i'm record or playback mode and I can report what bit depth / FS audio

    mode i'm in when I get that working :) but this is a BT only field recorder !!! :)

  • hardware startup GOOD !

    ben biles03/16/2019 at 04:23 0 comments

    OK starting properly now.

    The CS4385 has to get going within 10ms so I start this 1st after reset high , rather than having it wait around for the ADC

    to initialize. I'd set rest high on ADC DAC then DSP and left the DAC waiting or the ADC to startup.

    THINGS TO DO LIST...

    check over SAI configs and DMA for playback / record slots and make sure recording / playback works on both hardware slots

    dual recording to cards , have set up DMA but how to write to both card at same time.

    recording armed tracks from TDM8 from BT app  ( not changing TDM mode , just recording slots from it ! ? )

    recording both ADC DAC cards at the same time ? up to 16 channels wav poly or separate mono !!

    playback of different track count from wav poly? just assign to playback slots in order recorder ? 

    LTC timecode intergration into file recording. LTC timecode at start into wav header ?

    NEW analouge board with OVR lines for analogue limiter on front end needed. ( old 4 channel analouge board needs updating ) 

    power cards , dual +-5v , dual +-12v, phantom pwr to slot into new analouge board.

    some kind of master 12v reg isolation eventually.

  • LOW NOISE :)

    ben biles02/28/2019 at 03:32 0 comments

    So the new board is working great and is stable ONCE IT STARTS !!!

    But sometimes I need to make 3 or 4 resets to make the DAC lock onto the

    DSP TDM output. At least I think thats the issue.

    I have set the DAC clock to devide/2 , its running a 24.576mhz clock , but

    I still need to /2 on in the DSP sigma studio settings to make the outputs work.

    I made one obvious mistake on this latest board that was no issue since all the stm32f7 pins are broken out anyway. the spi sclk pin was still hooked up to spi2 where i switch everything to spi1. It could have still worked anyway perhaps if I'd just fired up spi2 sck gpio but I just plugged in a jumper wire into PA5 instead :)

    the SPI port is using DMA so you need to use the DMA enabled pins for corresponding Alternate Function mapping.

    My next error was the lack of TP's (test points) on the main TDM IO lines between either the ARM or the ADC DAC module boards. I can easily sneak in wires into the module board connectors but it will be harder to find TP's between the DSP and the ARM SAI ports. I deliberately didn't break out these lines to connectors since they will be relatively high speed. TDM8. I'll probebly find some via's if I really need to test these lines, but they are very short traces so they should just work.

    There is no micro NOISE and nearly no bluetooth noise detectable even though i'm running the analogue off the digi power supply for now. all good ! This will go away 100% with a bit of shield and separate Power from analogue.

    My next analouge board will have the dual rail power board slotted in like the preamps. I will also separate Phantom power , digi power and dualrail power as I seam to becoming a fan of modular plugin board design ! 

    I've changed all the GPIO pins for uSD cards SAI ports etc in the firmware and this begins to work. I want to dual record to the uSD cards for redundancy in recording.

    Now I need work on the recorder app file manager and bluetooth app for the recorder player. I have the wav file names of recorded files coming back to the BT app but its very clunky !

    and find out whats going on with the DAC /2 not working and check through the ADAU1467 startup procedure to make sure I got that correct.

  • new board , 2 x uSD cards , 1" Oled deubug screen and a new useful gerber viewer.

    ben biles01/26/2019 at 07:58 0 comments

    2 x SD cards, debugger off board now.

    Need to do more work on the firmware. After that i'll need to remake the 2 layer analogue board. It will be 10x10 cm and should go under the digital board with the 2 x ADC/DAC cards bridging them.

    I need to make the power supply into cards to and separate the phantom power card. I like the system to be as modular as possible so I can upgrade designs in each card as I go. I need to start making all the cards 3cm high max so the final size of the box reduced. I'll probebly end up just using 2 x Dsub connectors for IO breakout cables.

    I forgot to mention on my last PCBway.com rant that they have a really nice online gerber tool. https://www.pcbway.com/project/OnlineGerberViewer

    Its really useful to check you solder traces with a proper gerber viewer and do a final check !

    here you can see the DSP AUAU1467 and I'm checking some I2C lines that run between the GND pad and out through the top left corner. Not really pretty routing and I had to shrink the traces down to 6mil to get them through. you can toggle the layers on and off to get a proper idea of whats going on :)

    Here I'm looking at the uSD cards and checking the new traces. I made this much more neat this time and made it obvious which resistor is the pullup for the slot populated switch this time.

    Although your DRC should pick up any un-routed / shorted tracks its definitely worth checking the Gerber files. I had a few time submitted mechanical layers that were defined as copper layers by mistake and just shorted tons of tracks. lucky for me PCBway spotted the error but I could have save a lot of time by just checking the gerbers with this tool. 

  • NEW BOARD V1.2 with tons of fixes from PCBway !

    ben biles01/24/2019 at 06:57 0 comments

    Horray the new 4 layer board is here from www.pcbway.com and I made tons of fixes :) + its got gold contacts !!! oooooohhhh :)


    The quality of this board looks awsome. I checked the upgrade for free box if available and got what looks like gold contact  for free, wow ! 

    I have used smaller IO sockets , 1.27mm so I could free up some space for cool things like a 1" OLED screen to help with checking Bluetooth control is working properly. I managed to sneak on 2 I2C RF module sockets to. what are they for ?

    Digital diversity audio uplink in the future I hope.

    OK, heres what was wrong with the last prototype board...

    The 1st thing to go was the debugger from VER1 ! it was a stupid idea to begin with :) I got the tag connect cable in the post and got using it right away ! SWD 6pin connector footprint on bottom right of board in pic above. The on board debugger did work well and had some nice flashing but it was just a wast of space ! I made quite a few errors on routing the pins from the STMF0 -> STM32f7 on the old board and that was fixed with a couple of bodge wires. the worst mistake was with the USB enumeration 1.5k resistor though. it was in series instead of pulling the DP line high. Also the resistor divider was wrong ! somehow I was using 100k instead of 10k. To be fair I didn't have a clue what at the time what USB enumeration was, I was just cobbling together whatever I could understand from the STMF7 discovery board schematic. the next best bit was that I had forgotten that i would need to flash the dubugger itself with STM-link firmware of some kind and had no pins for this ! so it was great fun taking on bodge wires to write the firmware! In the end it all worked and then I thought ... what a waste of board space :) 

    my next favourite mistake was the complete misunderstanding of the uSD populated switch. it really is just a switch with 2 pins. for some time saving reason I thought surely the switch pin just goes high when you insert a card. NO! the mechanical switch just bridges the 2 pins so you need to pull the line high with a resistor when connected or something similar.

     WRONG!!! this just does nothing :)

    Hopefully better !

    insert the card and the detect line goes high through a 10k resistor. Do I need a week resistor to pull line low when no card is inserted so the detect pin is not floating on the ARM ? I'm hoping there is a week resistor in built on GPO pins for that!

    Next favourite mistake , I had the Soft Start SS pin grounded and even more stupidly a second 3.3v power supply for the debugger. mmmm. It was one of those really hard to find shorts and hard to fix. I had to get a mini drill and cut the trace right next to the power IC.

    This one was a pain to find. The 150pf cap should bridge PLLFILT and PVDD and not be in line with R10 !

    Overall the new board quality seams A1 to me. I'm using the smallest drill hole sizes allowable for the vias and in many places i'm down to 6mil track spacing.

    Most of the IC pads are 0.5mm which is pretty close!

    I've been using PCBWAY.com mostly for my boards and sending them to Japan tax free. They don't charge import tax on electronics here on anything under 100$ value. 

    Theres one bad review on EEVBLOG about pcbway but I have never had any issues whatsoever ! They are super helpful in pointing out design mistake when I get a via to near something or have cutout marks that are just wrong daving me time and money. I have tried other PCB company's but I find PCBWAY to be the fastest cheapest and trouble free. I have uploaded project from both Kicad and Altium software and never had issues.

    heres some basic point worth knowing and that have saved me quite a lot of money! In fact usually I end up paying more for shipping than the pcb !

    PCB prototype service - Only $5 for 10 PCBs and every new member will get a $5...

    Read more »

  • new digi board in the box :)

    ben biles01/02/2019 at 14:21 0 comments

    new digi board goes in the box :)
    power @ 12v

    under half an amp @ 12v ! nice :)

    I'd like to keep the final mixer under 12v 1amp ( 12 watts )

    this is with bluetooth control module running

    4x preamps

    2x line drivers

    2x HP drivers

    32 channel IO ADC DAC

    DSP

    ARM stm32f7

    Phantom power 48v on 4 channels

  • quick video of board plugged in a being debugged

    ben biles12/21/2018 at 10:26 0 comments

    just a quick look at the board powered on and in debugging mode.

    the bluetooth module is plugged in and working.

    I'm nearly done porting over the basic mixer code for the DSP ADAU1467 from the old ADAU1446 and i'm

    starting to use safeload code loaded to RAM for the DSP coefficient on the fly changes.

    I think I will make a digital AES3 IO board for bus B and just have 16 channels of differntial analouge IO using Bus A.

    I sort of regret not putting on a 1" oled screen on there just so I can print some basic status info although its not really essential.

    Would have looked cool and there so cheap ! maybe its for the best , could be just a waste of precious power since it will

    eventually be a battery device !

    The Debugger might stay on there for another revision. It might be useful for just updating firmware if nothing else. 

    Its just an STM32F10xx . Obviously I could'nt re-sell the board with the stm debugger software installed , but maybe I could

    leave that to the end user :) I think my worst error on this board revision was to not connect the stm32f10xx to breakouts for

    programming. For some reason I though I could just program it through the JTAG header connected to the STM32F769xx !!

    Obviously that was not the case , so I ended up getting some really thin gauge wire and tacking onto stupid places to flash the

    debugger firmware.  I sought I'll do that again on this board !

    these people are doing some nice Analouge Devices DSP boards but like me i'm not including the AD sigmastudio debugger on the main PCB :) http://www.freedsp.cc/

    The next board will have a nice TC2030-IDC 6-Pin footprint on it as the massive 20pin header for JTAG /SWD is a gross waste of space :)

    I ordered one from here

    http://www.tag-connect.com/TC2030-IDC

    unfortunately I had to pay a massive postage fee to get one to Japan , they seam to have run out here !

    Anyway , it will save a ton of board space in the long run.. 

  • new 4 layer mainboard

    ben biles11/20/2018 at 17:18 0 comments

    Version 2 parts soldered :)

    more powerful DSP and ARM + memory ( underside )

    ADC and DAC cards are now plugin BUSA & BUSB

    On board ARM debugger on underside of board.

    only 1 x uSD card because I ran out of DMA capable pins on the STM32F7

    but have since discovered if I use a different revision of the chip without DSI

    there are more pins available for second uSD card for recording redundancy.

    JTAG

    SPI is for analogue pre-amp control

    BT for BT module

    I am now working on DSP mixer design for new DSP chip & firmware

    to be done:

    redesign analogue back plane for pre amps and driver cards

    design the AES3 IO card option

    think about what kind of file system I should use for recording. currently FAT

  • new digital board arived :)

    ben biles09/04/2018 at 08:03 0 comments

    Just got my new 4 layer board and 2 layer daughter cards. I need to make a new analogue IO board to but will have to use

    my old one for now.

    I decided to be brave and add the stm32f7 micro and programmer on the underside. I also included DRAM !

    I'm not sure I'll use the JTAG or not. I have a micro usb port hooked up to an STM style serial programmer.

    There should be 2 x uSD cards slots but I didn't appear to have DMA capable pins left on the micro to accommodate that.

    I have broken all the spare micro pins out so maybe i will find a way to make the redundant file storage work.

    I didn't bother with a usb host controller to simplify the design.

    I kept all the parts to 0603 and avoided BGA

    The DSP and QSPI flash are QFN style though.

    I'm using a 10 channel fan out clock buffer U5 for 24.576mhz. the ARM micro can generate this but using the external clock

    I can hopefully keep clock jitter to a minimum.

    As you can probably see in pic there a ton of vias ! The DRAM chip is under the micro and there seams to be no good

    way to wire up RAM to a stm32f7 !

    Each trace has only 1 via from micro to dram. Its not running to fast so hopefully it will work.

    The Daughter boards are spit plane and analogue power / GND will come from the analogue connector IO side

    I don't really need 32 channels of balanced analogue audio IO !

    I may well make BUSIO_B a digital IO board !

    I was thinking of AES3 or maybe even something like DANTE

    There's a bluetooth module header and SPI header that runs to the analogue board for digital gain etc.

    I've ordered the parts. the NOR flash qspi chip was near impossible to get , I got some samples on way. 20 week lead time!

    Might need to try and change that part to something less difficult to obtain on the next revision.

    I should have enough power for all the IC's including the digital side of the ADC's and DAC's.

    Lets hope I haven't made to many mistakes and its usable :) I'll be happy to bin the old proto board that didn't even have

    power or ground planes :)

View all 62 project logs

  • 1
    Step 1

    THESE ARE OLD INSTRUCTIONS FOR AN 

    ARDUINO / NOVATION LanchControl midi knob controller that I found useful earlier on in the development of this mixer. I could control the ADC and DAC chips via midi / usb with the arduino and it helped me learn about I2C SPI UART bus etc

    Instructions to hook up an arduino to Novation LaunchControl and get midi messages into your arduino.

    you will need

    1 x LaunchControl
    1 x Arduino UNO R3
    1 x USBhost shield v2
    1 x USB hub with enough power to power the LaunchControl
    relevant usb cables

    1/ connect the USBhost shield to the Arduino UNO R3

    I found these 2 but there are others to
    https://www.circuitsathome.com/products-page/arduino-shields/usb-host-sh...
    https://www.sparkfun.com/products/9947

    2/ download each zip folder from the 2 librarys linked below on GitHub
    uncompress each zip file and put each individual folder with contents
    into the Arduino IDE Library folder.

    the required USBhost version 2.0 library
    https://github.com/felis/USB_Host_Shield_2.0

    the required USBH_midi library by Yuuichi
    https://github.com/YuuichiAkagawa/USBH_MIDI

    3/ Download my Arduino project file below.
    http://www.benbiles.com/sites/default/files/LAUNCHcontrolBB_0.ino

    4/ compile / upload to Arduino UNO with Arduino IDE.

    5/ connect all usb leads making sure you have the usb hub between the arduino and the LaunchControl

    6 /open serial console in arduino IDE and set the baudrate to 115200

    press keys and turn knobs on the LaunchControl and you should see the relevent midi values 0-127 for faders

    EDIT THE CODE AND GET THE NUMBERS TO DO THINGS FROM THE ARDUINO :) !!!!

    comment below if you got this working or NOT ?

    I'll make a video of this working soon and post it here..

    I'm sure most types of Arduino will work as long as it supports the host shield but I have only tested arduino UNO as of yet..

    upload:

    LAUNCHcontrolBB.ino

    As of now the codec is noisey since I should have seperate ground planes from analouge / digital .. I'm not bothered with noise for now since I'm upgrading to an 8 channel DAC so I can mix 8 channels. the AIC3101 codec wa just a test to see how well the USBhost - midi cointroler would work..

    I remaped the numbers from the other way around since the codec volume was in reverse!

    mute was 127 and 0 was full volume 0db in the I2C register programming of the codec. so this arduino instruction helped me out..

    = map(volume1, 0, 127, 127, 0);

    not sure remaped is the correct description for map function in arduino code.. anway , it might be useful if you want to reverse the values of the faders etc.

    I used a midi dump example to find the values of each midi knob etc.. its in the examples that come with the midi usb library.

    here is the arduino code for controling the TI AIC3101 audio codec. Its setup to output incoming audio from I2S to Left and Right Line output.

    knob 1 & 2 contol L&R volume level output of codec

    https://github.com/benbiles/novation_launchcontrol_usbmidi_arduino/blob/master/AIC3101_codec_control

    I now have the 8 channel DAC CS4385 hooked and working , code available on github.

View all instructions

Enjoy this project?

Share

Discussions

jackiredale wrote 03/23/2019 at 01:08 point

This project is amazing , I would love to have a go at making one myself , are you going to sell diy kits or the pcbs ?

  Are you sure? yes | no

ben biles wrote 04/08/2019 at 17:22 point

Hi jackiredale, sorry for the late reply. 

I was thinking of selling the 4 layer digital main board and ADC-DAC card modules with the firmware / android app already populated later when I've properly got everything working and tested. I don't really want to sell a board with problems :) so far I only found one error and there was an easy work around on this revision of the 4 layer digi main board but there are loads of gremlins on the other 10 or so module boards!

I am also working towards a final bluetooth only field recorder in a waterproof box that I want to give away to sound recordist friends that work in TV film etc. Idea being they could help me fine tune the thing and eventually get some kind of useful thing to sell ! no idea of the channel count or anything yet until I get the timecode / realtime metering working on the app. I got the test tone and test sweep 20hz -> 20khz working today :) pretty cool !

The sound quality is awsome from the preamps / headphone combination. better than my sound devices mixer. One thing though. I'm not using differential op amp buffer between ADC and PGA2500's ( just Panasonic FC DC blocking caps as in datasheet ) but this might not suite other preamp designs. usually you would have the op amp buffer to protect you ADC inputs from DC bias. So that might be annoying for people that want to add there own analogue hardware. 

on a plus side the ADC/DAC cards have split ground plane and there is really no noise coming across into the analogue from digital which I'm really happy about.

If I sell the mainboards I suppose I'll just do that here though hackaday but no idea how that works :)

have you seen this site ? http://www.freedsp.cc/ I think they have some pretty cool DSP boards that are open source and one that works with rasbery pi ? that might also work as an audio recorder although i'm not sure.

  Are you sure? yes | no

Ulysse wrote 04/22/2017 at 16:16 point

I like. Of course. Music !

  Are you sure? yes | no

Craig Hissett wrote 04/22/2017 at 15:56 point

This is great matey!

  Are you sure? yes | no

Yann Guidon / YGDES wrote 04/22/2017 at 13:38 point

Impressive development !

  Are you sure? yes | no

Francesco wrote 02/21/2017 at 13:44 point

Hi Ben, i have a question for you. I'm working on a similar project, taking a lot of inspiration from yours. You say you're controlling the ADAU1446 with arduino via i2c. I didn't find any specification about it, the datasheet only says "program it with sigmastudio" without giving any information about i2c via an external controller. Did you found some more information? Or do you have any tip for me, how to do it?

Many, many thanks... and again, your project is awesome!

Francesco

  Are you sure? yes | no

ben biles wrote 02/21/2017 at 14:09 point

https://ez.analog.com/servlet/JiveServlet/download/1806-3-5949/SigmaStudio Basic uC Integration Tutorial.pdf

You create files from sigmastudio when you have made your design. you need to add macros to SigmaStudioFW.h so that that the code can write / read to I2C depending on the platform you are using. So in arduino that would be  Wire.beginTransmission(44); // transmit to device #44 (0x2c)// device address is specified in datasheet
  
  Wire.write(val);             // sends value byte

  Wire.endTransmission();     // stop transmitting

sorry , I have no idea how hackaday does the formating , if I try and paste code into this box I get some rediculas things happening including user names poping up ?

I switched to intel edison recently and so I'm adding mraa I2C macros to SigmaStudioFW.h now since I need a micro that can record / playback TDM 8 channel audio. I could not find any way to record high quality multichannel audio in arduino. Not to say there is'nt a way. everyone points to teensy but I am interested in 24bit 96khz 8 channel audio etc..In fact I never added the macros for arduino athough I did get arduino & bluetooth controlling the preamp with SPI and of course controlled the DSP basic initialize power on to get the board working with I2C. I had some confussion with I2C in the begining but it turned out to be a faulty board ( heat damaged by myself ) . I have the board working in selfboot mode also now with eprom :)

  Are you sure? yes | no

ben biles wrote 02/21/2017 at 14:12 point

Also I don't see your project on hackaday , can I take a look anywhere ? sounds cool ! what ADC / DAC 's are you using ? 

  Are you sure? yes | no

Francesco wrote 02/21/2017 at 22:50 point

First of all, many many thanks for your answer, that's exactly what i was looking for and i simply missed it. Now everything is much more clear for me :)

My project is very similar to yours, i'm not interested in recording but in general my goal is to build a digital audio mixer. At the moment, it's only theoretical, i'm waiting for the components i ordered some weeks ago from china. My choices are an ADAU1442 (pretty much the same as your 1446) and your same ADC/DAC. I was interested in 8 ch TDM converters and this two are the most common. For example, the "behringher x32" mixer uses those converters as well, they are perfect for the purpose. But I use self puilt preamps, from old projects of analog mixers.
My project is different from yours because i will use rotary encoders, motorized faders, screens and so on.... like i said, the intention is to build my own digital mixing consolle. 
When i'll begin to build things i will create a project page somewhere :) Maybe i will find something usefull to you too :D
Again, thanks for your advices and your help! Will keep you updated.
- Francesco

  Are you sure? yes | no

ben biles wrote 02/21/2017 at 23:28 point

interesting to know behringher x32 uses the same convertors. I would say that if your going for the highest dynamic range possible there are better ADC's. but I think you would need to use more chips and expense goes up dramitically. I also got my chips from china and managed to keep the cost down a bit. You will need to buffer your preamps with opamps to remove the 2.5v bias on the ADC or use AC coupling capacitors to remove ADC DC bias. There is an APP note from cirrus logic with 50khz corner freqnency filter and DC bias removal. I'm using PGA2500 so had to use AC coupling caps for increased dynamic range. PGA2500 only +-5v swing. anyway , if you get stuck your welcome to ask questions here. the shared clock and fanout buffer is working well for me. keep the clock line traces short and try to keep them equal leaghth. use split ground planes to sepperate analouge and digital ground return paths. I'm using I2C logic level translator as isolator to help keep noise away from preamp / analouge parts of the board. you could quite easily add 2 or more CS5386 ADC's by setting unique I2C addresses. ADAU1442 has 8 stereo asynchronous sample rate converters where the ADAU1446 does not. I did'nt need sample rate convertion and the adau1446 uses less power. same pinouts so you can change between them I think. I put ground pad on the pcb in case i wanted to use ADAU1442. I bought the cirrus logic programmer but I think there is a cheaper one out there.. might be an idea to build the programmer into your board? that way you could just plug your desk into sigmastudio and do realtime DSP from there software also. or just makes it look tidy. 

  Are you sure? yes | no

Francesco wrote 02/22/2017 at 08:48 point

Cirrus logic programmer? you meant the analog devices one, right? I'm building the freeusbi programmer designed by freedsp.cc, total cost is about 6$ so it's much, much cheaper. I'm really trying to keep the cost as low as possible. Build the programmer into the board? Yes, it's one of my goals, it would be a very good thing.

I will for sure follow your advices about the wiring, at the moment de "pcb design" part is far away, i will first try things in some "breadbord version". At the moment one  of my biggest concerns (like yours, i read) is if i will be able to solder the ICs, i'm not an expert with that kind of "small" soldering. Hopefully.......

  Are you sure? yes | no

ben biles wrote 02/22/2017 at 14:02 point

wooops !!! yer , I should say usbi programmer ! only 6$ thats pretty cool .. I'll build the programmer into my next board I think. I first used ic adapter boards to test things out , but to be honest I think you might be better just going for it and drawing a pcb. even if you make a mistake on the pcb you could run a bodge wire or 5 !! I managed to fit ADC DAC and DSP on one 10cm x 10cm board and when I drew that board I did'nt even know how to make ground planes !! just a 4 layer board routed badly and it works really well. 

you can get the ADC DAC and DSP working on adpater boards / bread boards, sort of. but it will be noisey and will probebly crash quite a bit. decoupling caps will be far away from pins on chip, ground plane will probebly be shared with digital etc.. you can download the Eval board guides for each IC and take a look at there schematics to get the idea of how to make the board.

I should'nt advise you to use naked DAC audio pins without buffering IC's, but I have to say I just hooked them up to my powered speekers for testing directly.. use some large 47uf 60WV electro AC coupling capacitors though if your going to do that since there is 2.5v bias ! don't blame me if you blow the IC's doing that also ;)

I found the ADC more tricky to get working than the DAC. theres a few traps in there , so ask me questions if you get stuck !! also I'm sure I could get ideas from your project to ! so would be great if you document it somewhere !

  Are you sure? yes | no

ben biles wrote 06/05/2017 at 11:20 point

Hi Francesco , could you ask me the question about the DAC buffer stage again here? sorry , I tried looking for your comment somewhere in the logs and couldn't find it. In the mean time the output bias of the DAC is 2.5v which is incorrectly labeled VQ? instead of the normal Vcom ! you can AC couple the outputs to your buffer line driver or use an opamp.  you can bias the OpAamp inputs so that the audio swings around the 2.5v on the buffer input and outputs the audio swinging around 0v, essentially removing the bias and protecting you DAC from unwanted current etc

I'm using a OPA1632 balanced op-amp which outputs the differential channel swinging around 0v to an audio line driver. you could just use AC caps maybe but you can add some filtering to the DAC output if you need it with an opamp. I'm running the DAC at 24.576mhz rather 12.288mhz so filtering is'nt really necessary as far as I can tell but I thought its good protection for the DAC since no nasty current can pass through the OpAmp. Personally if I did the design again I would go for a more basic OpAmp package that the OPA1632. something like the OPA4134 that I'm using on my headphone drivers as the buffer now maybe. Anyway , I'm no expert at opAmps but will try answer your question if you post it here..  I got My ADC DSP and DAC all working together really nicely with an ARM micro. started working on multi-channel recording and playback over 8 chnannel TDM. Looking hopeful :)

  Are you sure? yes | no

Francesco wrote 06/05/2017 at 16:07 point

Hi Ben! Yesterday i wrote the comment, then had dinner, came back to pc and... "oh, that's how it works, what a stupid question" :D I figured out the answer, I only had some issues understanding the datasheet. Of course it works like you are saying here!! You didn't reply yet, the question was usefull, i simply removed the comment, that's why you can't find it :P

Let me use this comment to congrat again... This project looks amazing to me, I check this page almost everyday hoping for news. Can not wait to see how well this works once finished :D

P.S. I decided to follow your suggestion and go directly with pcbs... as you know, now seeedstudio offers 10pcbs 10x10 cm for less than 5$... it's not worth it to do tests via breadbords :D At the moment I have almost the whole project designed, only some parts already printed, thanks to your advices it works like a charm :)

  Are you sure? yes | no

ben biles wrote 06/05/2017 at 17:53 point

OK  ,  good to know your not wasting time with to much soldering :) take your time checking the circuits before you order boards. I usually leave it a day and check over again before ordering. I put a new pic up in the log of my 1st test backplane.. its only 4 channel. I'll make the final one and 8 channel :)  

  Are you sure? yes | no

john.loftus wrote 08/03/2015 at 09:24 point

Thanks Ben. Glad you like it. We have a programmers reference guide here that may help with the LEDs http://d19ulaff0trnck.cloudfront.net/sites/default/files/novation/downloads/6958/launch-control-programmers-reference-guide.pdf

  Are you sure? yes | no

ben biles wrote 08/03/2015 at 09:34 point

amazing thanks!  looks like all the info is there!  I Will code in some lights on / off after my holiday,  off to see if I can stand on a surf board for more than 3 seconds in hawaii without midi assistance :) 

  Are you sure? yes | no

john.loftus wrote 08/03/2015 at 09:36 point

Lucky guy. That sounds like paradise.  Have fun.

Let me know how this project develops.

  Are you sure? yes | no

john.loftus wrote 08/03/2015 at 08:18 point

Cool project Ben. We like seeing new uses for Launch Control.

Launch Control XL can also be used 'standalone' as shown below (no Arduino required)

  Are you sure? yes | no

ben biles wrote 08/03/2015 at 09:16 point

great!  Did'nt know you could get usbmidi - midi boxes!  Just did a search and found midi - dmx controllers too for lighting! Awesome :)

Love the way 80's simple solid midi hardware lives on!
Going to try and trigger the lights on the launch control next when you press the buttons.. Any idea where I download the midi map to trigger the lights?  
Oh, also love your use of the phone charger to power the launch control XL :)

  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