1.. zephyr:code-sample:: uac2-implicit-feedback 2 :name: USB Audio asynchronous implicit feedback sample 3 :relevant-api: usbd_api uac2_device i2s_interface 4 5 USB Audio 2 implicit feedback sample playing stereo and recording mono audio 6 on I2S interface. 7 8Overview 9******** 10 11This sample demonstrates how to implement USB asynchronous bidirectional audio 12with implicit feedback. The host adjusts number of stereo samples sent for 13headphones playback based on the number of mono microphone samples received. 14 15.. warning:: 16 Microsoft Windows USB Audio 2.0 driver available since Windows 10, 17 release 1703 does not support implicit feedback. 18 19Requirements 20************ 21 22Target must be able to measure I2S block start (i.e. first sample from output 23buffer gets out) relative to USB SOF. The relative offset must be reported with 24single sample accuracy. 25 26This sample has been tested on :zephyr:board:`nrf5340dk`. While for actual audio 27experience it is necessary to connect external I2S ADC and I2S DAC, simple echo 28can be accomplished by shorting I2S data output with I2S data input. 29 30Theoretically it should be possible to obtain the timing information based on 31I2S and USB interrupts, but currently neither subsystem currently provides 32necessary timestamp information. 33 34Building and Running 35******************** 36 37The code can be found in :zephyr_file:`samples/subsys/usb/uac2_implicit_feedback`. 38 39To build and flash the application: 40 41.. zephyr-app-commands:: 42 :zephyr-app: samples/subsys/usb/uac2_implicit_feedback 43 :board: nrf5340dk/nrf5340/cpuapp 44 :goals: build flash 45 :compact: 46