DIY ADCs

Any possibility to allow 1536 kHz?
IIUC the USB isochronous limits each direction to 1024 bytes pres microframe which unfortunately allows only 1 channel at 1.5MHz 24/32 bits. Unless multiple transactions/high-bandwidth mode is used which is a major complication for the USB device (but stock windows&linux UAC2 host drivers should support out of the box).
 
In my USB-I2S bridge ADC is the I2S master so it provides the clock. Sampling at 768kHz is possible when ADC has a 49M clock and sampling at 1536kHz would require a 98M clock but I haven't tested that. My STM32H7 based bidirectional USB-I2S bridge running at 550MHz (in post #8) may well have enough juice for 1536kHz playback/recording.
Hello,

That's sound great !
My actual hardware i already capable to provide up to 24bits/1536kHz I2S stream with 98.304MHz clock (OSVA project posted here).
So I think I will build one of your board to test it, or maybe you would have one already assembled available for sale ?
Regards.

Frex
 
Depends on how syncing is done. If I2S output is synced to I2S input (BCK & LRCK), then 2 isolators are involved. But if just MCK is shared between ADC and DAC only 1 isolator per direction is involved so propagation delay has no influence if channel-to-channel skew is low.
 
I only use brand-name components from Mouser/Digikey but not "audiophile" components. For analog stages I use primarily Vishay-Beyschlag MELF 0204 resistors and C0G capacitors whenever possible (Murata, Taiyo Yuden, TDK, Samsung). BOMs in my first posts in this thread list the actual components used.
 
Here is a new version of the STM32F723 I2S-USB board firmware.
I added some features that could be interesting to other STM32 projects as well:
  • USB HS DFU bootloader (DFU = Device Firmware Upgrade). This can be used e.g. to upload a new firmware using the USB port.
  • USB Custom HID interface. This can be used to change the configuration remotely via USB at runtime. E.g. with SimpleHIDWrite or by implementing a dedicated Windows GUI. Of the 2 ADCs in this thread only ES9822PRO has configuration settings.
  • Configuration data backup in flash memory
The Custom HID has currently 2 reports:
  • Set register
  • Set feature
Set register can be used to set any ES9822PRO register.
Set feature can be used for higher level functionalities:
  1. Clip detection on/off
  2. Clip detection level
  3. Mono/stereo mode
  4. Filter setting
  5. Save configuration
  6. Reset
  7. Switch to DFU
 

Attachments