USB-C FT231X Breakout Build & Test
I received the boards for my FT231X breakout yesterday and took a break from working on the Current Sink or Swim schematic. Really love the fast turnaround on these boards were and as always it looks great.
Building the board was a little rocky at first, the SSOP footprint of the FT231X was a little smaller than I’m used to and I messed up one of the boards trying to remove some bridges between the pins but hey this is why there’s 3 of them!
The second try was a lot better as we can see below:
Now that everything is connected, let’s try it out! Let’s plug into my computer and… nothing happens.
Debugging
The board wasn’t getting any power at all from cable. Comparing the schematic against other FT231X breakouts, it didn’t seem liked anything was off. The only different is that I’m using a USB-C connector which has a couple extra pins. I looked up the pinout for the USB-C receptacle to see if there was anything I missed.
I’m only using the USB 2.0 interface, so let’s start there:
- USB-C data pins are connected in the schematic and on the board.
- SBU1/2 are not used and are disconnected.
- CC1/2 are disconnected on the schematic but seem to deal with power delivery. Maybe it’s something to do with those?
A little googling around turned up a great intro to USB-C document from MicroChip (https://cdn.sparkfun.com/assets/e/b/4/f/7/USB-C_Datasheet.pdf). Turns out those pins are used to detect whether a cable is connected and the type of device. Leaving them disconnected explains why nothing was working (Sidenote, but definitely adding a power LED to the next revision)
Bodging it up!
According to the USB-C document, I needed to pull both CC1 & CC2 to GND using a 5.1k resistor. I don’t have any of exactly that value but a 4.7k + 470 would get me close enough. I delicately attached them to the back of the board as seen below. It’s not pretty but it gets the job done
Connecting to the cable again and checking the pins, I see that the board is now getting power! Unfortunately, the computer is not recognizing the board as a serial device and it doesn’t seem like the chip is doing anything. I started to again debug and double check connections:
- Chip is oriented correctly on the board, just making sure for my own sanity.
- 5V is connected and going into the FT231X chip VCC pin.
- Pins used for the RX/TX LEDs are connected and pulled up to 3.3V (they pulse down when something happens), so presumably the chip is getting power and using it.
- But strangely, the 3.3v out pin on the chip is not outputting anything. On the schematic, the 3.3v is used as input into other pins on the chip, so that might explain why nothing is working.
Where to next?
At this point, I’m not sure what to do next. I might try taking the 5V from the VCC, converting that to 3.3V and applying it directly to the pins that need it on the board to see if that does anything. But the 3.3v out not outputting anything is really mysterious to me.