CC2 Voltage on USB-C 6P Connector - CC1 Reads ~1.6 V,  CC2 Stuck at ~0.2 V - Page 1
Forum section: electronics / projects

author: Kuusou
author_rank: Regular Contributor
timestamp: July 21, 2025, 02:47:12 am
content: Hi all,I’ve built an ESP32-powered board and am trying to detect the USB-C source current capability by measuring the CC pins in hardware (no PD controller). The schematic & hardware are simple:Connector: 6-pin, “power-only” USB-C receptaclehttps://jlcpcb.com/partdetail/HDGC-TYPE_C_DB103PWB/C2936179Pull-down (Rd): 5.1 kΩ from CC1/CC2 to GND (R16, R17)Series resistor: 100 kΩ from CC1/CC1 pad to ESP32 ADC pin (R15, R21)ESD diodes:Physically removed from both CC pins/pcb(D6, D7)Not pictured on the PCB design photo are two internal ground planes, photo only shows top/bottom layers. USB-C connector is on the bottom layer.What I’m seeing:Plug in a PD-capable charger (Rp=10 kΩ, ~1.6 V on CC):CC1, measuring ~1.6 V (multimeter), ESP32 correctly detects 3000 mACC2, when made the “active” pin, measures only ~0.25 V, ESP32 detects 500 mAMeasurements repeat across multiple boards, cables, and charger bricks. CC1 always correct, CC2 always low, even though I’m only probing the active CC pin each time.Continuity checks (board unpowered):CC2 pad & GND: ~5.1 kΩ (pull-down present)Suspected causes I’ve considered & ruled out:Software ADC attenuation or sampling cap issues (calibration factor & dummy-read delay applied; still same behavior)Missing series/pull-down resistors (continuity confirmed)ESD diode still in circuitFloating CC in a “power-only” cable (multiple cables tested)Next suspect:Mechanical mis-alignment inside the power-only receptacle—perhaps the CC2 spring contact in my 6-pin footprint isn’t making full contact with the cable’s CC pad, so it never sees the true pull-up voltage.Questions for the community:Has anyone had a similar issue where one CC pin on a power-only or simplified Type-C jack reads correctly but the flipped pin always sits ~0.2–0.3 V?Are there known 6-pin receptacles that systematically mis-align CC2 in one orientation?Any other hardware checks or traps I might have missed?Thanks in advance for any insight!

author: ataradov
author_rank: Super Contributor
timestamp: July 21, 2025, 05:11:44 am
content: Why do you need 100 kOhm resistors? ADC input should be high impedance already, it can be directly connected to the CCx pins. May be 100 Ohm if you want to have some additional protection.Right now you are likely observing channel-to-channel difference in the ADC. This 100 kOhm resistors limits things enough that sampling capacitor does not have time to recharge (assuming ESP32 ADC channel is not buffered internally).

author: Kuusou
author_rank: Regular Contributor
timestamp: July 21, 2025, 06:47:43 am
content: I plan on reducing these on the next iteration, it was a mistake on my part, same as the placement of the diodes in front of the 5.1k resistors.However it still doesn't explain why I'm seeing a difference on the CC test pads, CC1 always measures correctly when active at around 1.6V, but CC2 is always lower at around 0.25V.At this point I'm wondering if it's the 6 pin connector itself and I should redesign using a full 24pin usb-c connector instead.

author: moffy
author_rank: Super Contributor
timestamp: July 21, 2025, 11:50:02 am
content: If you are measuring 0.25V on the CC2 pin with the USB-C connector plugged in the right way then you might have a defective solder joint or a bad connector. Can you just plug a cable in with the CC1 and CC2 available and do a resistance measurement to see if you are reading the 5.1k?

author: Kuusou
author_rank: Regular Contributor
timestamp: July 21, 2025, 12:15:27 pm
content: QuoteI had the same thought, so I tried another board and multiple cables, still the same issue. Resistance tests show 5.1k on both pins as expected.

author: ataradov
author_rank: Super Contributor
timestamp: July 21, 2025, 02:09:22 pm
content: Is this the voltage measured before or after 100 kOhm resistors? Your test points are after the resistors, so if you are measuring them, then you have significant impact of ESP32 inputs. Those inputs don't have to be symmetrical. There may be a weak pull-down there, for example.

author: Kuusou
author_rank: Regular Contributor
timestamp: July 22, 2025, 12:52:54 am
content: QuoteI've measured the same resistance on both sides via the test pads. Both read 5.1K. I've tried this on multiple boards and got the same results.

author: ataradov
author_rank: Super Contributor
timestamp: July 22, 2025, 12:59:34 am
content: I'm not talking about resistance. I'm talking about your voltage measurements.Basically, remove 100 kOhm resistors, ans short them out. Check the behavior gain.

author: Kuusou
author_rank: Regular Contributor
timestamp: July 23, 2025, 01:37:08 am
content: Quote from: ataradov on July 22, 2025, 12:59:34 amThat appears to have resolved the issue, I removed both and am measuring similar voltages across both pads. Strange why it worked on one pad but not the other, any idea why?

author: ataradov
author_rank: Super Contributor
timestamp: July 23, 2025, 01:49:51 am
content: As I already said, you are making an assumption that all ADC inputs or ESP32 pins are the same. This does not have to be the case. One of the inputs just have different impedance and your 100 kOhm resistor does not provide enough current to overcome that difference.

author: moffy
author_rank: Super Contributor
timestamp: July 23, 2025, 04:49:34 am
content: Quote from: moffy on July 21, 2025, 11:50:02 amQuote from: Kuusou on July 23, 2025, 01:37:08 amSorry to quote myself, but just to clarify, you never used a multimeter to measure the CC2 pin directly when you were getting your low voltage?

author: Kuusou
author_rank: Regular Contributor
timestamp: July 23, 2025, 05:00:30 am
content: Quote from: moffy on July 23, 2025, 04:49:34 amNo I was using my test pads

author: Kuusou
author_rank: Regular Contributor
timestamp: July 23, 2025, 05:01:21 am
content: Quote from: ataradov on July 23, 2025, 01:49:51 amFair point, thank you for taking the time to answer my questions and resolve this issue, your help is greatly appreciated!

author: Kuusou
author_rank: Regular Contributor
timestamp: July 25, 2025, 05:52:48 am
content: Quote from: ataradov on July 23, 2025, 01:49:51 amI thought this had been resolved but I hadn't done enough testing. I've discovered that removing both resistors and then bridging the pads just reversed the problem somehow. Now CC2 reads normal and CC1 reads low, 0.5V measured at the usb-c connector pads.I tried just removing the 100K resistor on the CC2 pin on another board and now CC1 reads normal and CC2 reads normal. Is this quirk the different impedances of the esp32 pads? Perhaps because the CC2 pin in my design is attached to an ADC2 connector vs the CC1 being connected to an ADC1?

author: ataradov
author_rank: Super Contributor
timestamp: July 25, 2025, 06:13:14 am
content: What cable orientations have you tried on both ends? Is it possible that it is a host/supply issue?Although if it measures as expected without the resistor, and shorting it causes the reading to drop, it means that this added pin creates enough load to pull the signal down.This is not going to a difference in ADCs, there is no way ADC input impedance is that low. I would start looking at pull-down resistors on the I/O pins of ESP32 and check if they are enabled by any chance. I'm not familiar with ESP32 at all to tell if this may be the issue.The experiment you need to setup here is remove the series resistor and connect ADC input to 3.3 V though 10k resistor. Is the voltage on the ADC pin 3.3 V? If not, then you have some excessive load. Your goal here is to find that load. There is no way pure ADC input would drag down 10 kOhm pull-up.