| FORUM

FEDEVEL
Platform forum

USE DISCOUNT CODE
EXPERT30
TO SAVE $30 USD

Raspberry Pi CM4 + TUSB7340RKMR -> Esp32 s3 USB Enumeration issue.

Anik , 05-21-2026, 10:14 AM
Hi,

I was working on a 4-channel radio board using an RP CM4 and TUSB7340RKMR. When I connect four devices, each based on ESP32-S3, all of them are detected instantly and run smoothly at first. However, after some time, the system loses almost all of the devices. Sometimes one or two devices remain connected and continue working.

After this issue occurs, the affected ports do not enumerate the boards easily again. I need to reset or power-cycle the devices several times before they are detected again.

I have already checked the power rails, and there does not seem to be any power issue on the boards. The TUSB7340RKMR has sufficient power headroom on both the 3.3 V and 1.1 V rails, and it does not get too hot during operation.
I am not sure if it's a Linux driver problem or a hardware problem.

I have tested all of the radio boards using a USB hub connected to a PC. They enumerate successfully and run for a long time without any issues. So, I am pretty sure the radio boards themselves are working fine.
, 05-21-2026, 10:23 AM
🤖 In the meantime, here’s a response from the [FEDEVEL AI HW Assistant]().
It helps to find relevant resources for your question, but it may make mistakes as it’s still in early development.

This is the response from the AI Assistant:
Let's break down potential causes and troubleshooting steps based on similar issues discussed in the Fedevel videos:

1. **Power Sequencing/Transients**
Even with stable DC measurements, *transient current spikes* from multiple ESP32-S3 devices operating simultaneously could cause brownouts. The TUSB7340 requires careful power sequencing - verify if the 3.3V rail maintains stability during ESP32-S3 RF operations (Wi-Fi/BLE). Consider adding bulk capacitance (100-470μF) near the hub's power inputs.
[Relevant example with ESP32 current spikes](https://www.youtube.com/watch?v=gAiu7i1K1Lk&t=1472)

2. **Signal Integrity Issues**
USB 2.0 signals (especially with multiple ports) require proper:
- 90Ω differential pair routing
- Length matching (<150mil mismatch)
- Ground plane continuity under signals
Check for crosstalk between USB pairs using TDR or protocol analyzer. Even low-speed signals can cause issues with sharp edges.
[Crosstalk fundamentals](https://www.youtube.com/watch?v=gOS8LyExKDk&t=0)

3. **USB Hub Configuration**
The TUSB7340RKMR requires specific initialization:
- Verify VBUS_SENSE pin configuration
- Check power management registers (overcurrent thresholds)
- Confirm proper reset timing (PWRCTL pin)
A common pitfall is incorrect strap pin settings during initialization.

4. **Linux-Specific Factors**
Check kernel logs (`dmesg -w`) for:
- USB resets (xhci_hcd errors)
- Link state changes
- Overcurrent warnings
Consider testing with different kernel versions (5.15 vs 6.1+ show different USB behaviors).

**Troubleshooting Flow:**
1.
, 05-21-2026, 10:23 AM
Test with 1 ESP32-S3 → 4 ports (isolate port-specific issues)
2. Monitor VBUS with oscilloscope during dropout events
3. Add USB protocol analyzer between hub and devices
4. Try forcing USB 2.0 mode only (disable HS negotiation)

The fact that devices work with PC hubs suggests a combination of power delivery and Linux driver interaction issues. The TUSB7340's internal power management might be more sensitive to transient loads than PC-grade hubs.

You can continue chatting with the AI Assistant here:
https://fedevel.com/hw-assistant
Robert Feranec , 05-21-2026, 01:45 PM
the first thing I would try is if it runs ok with 1 device, 2 devices, 3 devices ... because this points out to power or signal instability. How many layers does your board have?
Anik , 05-23-2026, 10:35 AM
Both are 4-layer PCBs. I have checked the power and it seems ok.
I will check more.
Use our interactive Discord forum to reply or ask new questions.
Discord invite
Discord forum link (after invitation)

Didn't find what you were looking for?