• The Vendor's Bazaar forum is for commercial offers and transactions. Only unmoderated members can post here.

    diyAudio provides this forum for the convenience of our members, but makes no warranty nor assumes any responsibility. We do not vet any members. Use of this facility is at your own risk. Customers can post any issues in those threads as long as it is done in a civil manner. All diyAudio rules about conduct apply and will be enforced.

USB UAC2+HID Multichannel input/output interface York

It is possible, as 3xI2S or TDM stream.
So if I program York as 3 channels I2S stream, then standard Windows drivers will detect York as 5.1 sound card?

Another question, if I sometimes want to listen to a 2.1 stereo stream instead of 5.1, do I need to change the settings in Windows from 5.1 to stereo, or reprogram York? Will it be possible to switch from 5.1 to 2.1 under Windows without problems? Or does Windows not support the 2.1 configuration?
 
So if I program York as 3 channels I2S stream, then standard Windows drivers will detect York as 5.1 sound card?
Now it will be seen as just 2/4/8 channel. To tell windows the exact configuration (3.1/5.1/7.1) a modification of USB descriptor is required. I have plan to do so but it is not there yet.

Another question, if I sometimes want to listen to a 2.1 stereo stream instead of 5.1, do I need to change the settings in Windows from 5.1 to stereo, or reprogram York? Will it be possible to switch from 5.1 to 2.1 under Windows without problems? Or does Windows not support the 2.1 configuration?
It depends on the software, sometimes it is possible to override "global" settings in windows inside the app. If you're up to do some experiments, I'll send you Nano board, I think it would fit into your DSP amplifier project. Please send me PM with address.
 
Reclock board with MEMS oscillators 🙂
5253943097476379046.jpg
 
In relation to York, just sugestion! 2.54 pins and I2S is not an good option in my opinion, thats an antenna + pickup antenna. And if possible an miniature board like esp32 or bluetooth module, something like this would be very good option for those who need things real modular in much smaller possible form = the better! That case users have choice to have miniature York and other to have miniature board + carier board whith size of current York, that way you have two options for selling and we have also two options for buying! In my case I not like the current size of the York and also not like those 2.54 pin headers. Just my sugestion for your further work on improving your York.
 

Attachments

  • 2025-05-09_113204.jpg
    2025-05-09_113204.jpg
    18.8 KB · Views: 112
Last edited:
  • Like
Reactions: eclipsevl
You should use v-cut on the side that do not have holes, and make square pads with oval holes so that you cut the rest of panel yourself, that way I think it not cost twice?
If I understood you correctly, you propose to cut the boards after production to get kind of constellated holes.
In that case there will be issue with metallization - the existing metallization in the holes can be damaged and there will be no metallization on the edge of the board. This is the whole point of constellated holes option.
 
  • Like
Reactions: savan
Hi eclipsevl

Just a quick question, could an isolated version of York with a relocking board be used in the 2ch in, 4ch out mode?
Hello,

The reclock board is designed just for 2ch I2S/PCM output, and the ISO version I2S input port can only work as master (because of the on-directional isolators).
So I would say it is not the right choice. It would be better to use non-isolated version and add isolation and clocks on another board to meet requirements of your project.

More specifically how would the 2ch i2s input be delt with in this hardware configuration
The ISO board may still work however with some restrictions:
1. Both In and Out I2S ports must be masters
2. Sampling frequency of input and output must be set to same value (both 48kHz or 192kHz, for example. 44.1 and 48 would not work)

Which ones do you use?
These are SiTime, SiT8208
 
New firmware release, 4.8

Improvements: I2S input in slave mode now doesn't affect sampling frequency setting of I2S output.
It affect modes "2ch I2S input" and "Nch I2S output + 2ch I2S Input". Master clock grid would be defined by output sampling frequency selection.

New mode added: 8 channel TDM input
1747819775507.png


1747819783122.png


1747819790514.png
 
  • Like
Reactions: MTI2S
An update on the project:

apparently, with carefully written assembly code for FIR calculation, it is possible to implement x8 interpolation on PIC32MZ MCU.
It is already done by the guy who started PIC32MZ project (Aleksey, mentioned in the first post), and together we are trying to make it faster. There is an interesting discussion going on in another forum 🙂

Yesterday my FIR implementation was faster, today it is the opposite. But it is already fast enough for x8 stereo interpolation at 44.1/48kHz.
The coefficients we use implement SM5842 filter.

This might be useful for the cases when PCM DACs directly interface York, for example.
 
Last edited:
A quick update on the DSP features.
I have made a first ASRC implementation for York. Of course York can just use external clock but in some cases ASRC still may be required. For example, if one needs to input I2S stream into PC and do not worry with matching the sample rate in Windows settings - ASRC would handle that. Another case is simultaneous input and output of audio from/to PC. Or to stream 44.1k/48k content from PC if only one masterclock frequency is available.

This is first implementation which is a bit simplified from the target, thus has a bit higher THD.
Especially at high frequencies.

1749160232276.png



Simulation of current ASRC implementation at 15kHz 0dB input tone:
5339195934854213606.jpg
Blue is the input at 352.4kHz, orange - oversampled to 384kHz.
There are many harmonics up to ~-113dB level.

Simulation of target model:
5339195934854213605.jpg
The THD is much lower, harmonics are below -148dB.

And the test with real hardware with oversampling from 88.2kHz to 192kHz.
5339195934854213604.jpg
The 30kHz harmonic level matches well at around -115dB. 15 kHz is close to the worst case for this implementation. In comparison, this is how 1.5kHz looks like:
5339195934854213603.jpg

With that it may be possible to add S/PDIF input as well. Not sure at this moment but I may try in the future.