cancel
Showing results for 
Search instead for 
Did you mean: 

Is There Any Working UAC2.0 Example for STM32H7?

audio
Associate III

I’m trying to build a UAC2.0 (USB Audio Class 2.0) device on STM32H7, supporting:

  • High-Speed USB
  • 24-bit audio
  • Playback + Recording
  • Full-duplex, stable, low-latency operation

After reviewing many threads here, I still haven’t found a complete or working reference.

Previous Threads Don’t Answer the Core Question

Here are some related ST Community posts with no clear resolution:

Across all of these, the same question remains unanswered:

Is there a working UAC2.0 reference for STM32H7?

 

What I Have Tried (and Why I’m Stuck)

1. X-CUBE-AUDIO-KIT

Not to be confused with X-CUBE-AUDIO (last updated 2019). Reference: X-CUBE-AUDIO-KIT

The audio kit focuses heavily on LiveTune and doesn’t explain the folder structure or how to adapt it for UAC2.0 device work. Most forum replies simply say "look at X-CUBE-AUDIO," but there is no clear documentation on how to integrate it into an actual USB audio project.

2. USBX Examples (Azure RTOS)

I looked into:

Both use UAC2.0, but neither is fully functional. There are several issues (audio distortion, buffering, pointer handling, feedback endpoint logic, etc.) that prevent reliable playback, let alone adding recording.

I also evaluated STM32WBA-BLE-USBx Standalone, but porting it to H7 requires major rewrites and may not be compatible with the existing H7 USB stack.

3. Legacy H7 USBD Audio (UAC1.0)

I considered starting from the H7 USBD Audio Standalone UAC1.0 example and updating it manually to UAC2.0, bypassing USBX entirely, but I’m unsure whether this is practical or recommended.

Moving forward...

I’m currently unable to move forward with actual development because I’m spending all my time debugging:

  • ring-buffer logic bugs

  • incorrect pointer handling

  • missing wrap-around

  • feedback endpoint issues

  • unexplained artifacts (e.g., a loud screech at 4–5 seconds)

Before I continue down another rabbit hole, I need a clear answer:

What is the correct, supported path to get UAC2.0 working on STM32H7?

 

Any guidance from ST experts would be greatly appreciated. @FBL @JonathanC 

0 REPLIES 0