element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Members
    Members
    • Benefits of Membership
    • Achievement Levels
    • Members Area
    • Personal Blogs
    • Feedback and Support
    • What's New on element14
  • Learn
    Learn
    • Learning Center
    • eBooks
    • STEM Academy
    • Webinars, Training and Events
    • More
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • More
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • More
  • Products
    Products
    • Arduino
    • Dev Tools
    • Manufacturers
    • Raspberry Pi
    • RoadTests & Reviews
    • Avnet Boards Community
    • More
  • Store
    Store
    • Visit Your Store
    • Choose Another Store
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
Open Source Hardware
  • Technologies
  • More
Open Source Hardware
Blog Building a USB-C USB-UART Board
  • Blog
  • Forum
  • Documents
  • Events
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Open Source Hardware requires membership for participation - click to join
Blog Post Actions
  • Subscribe by email
  • More
  • Cancel
  • Share
  • Subscribe by email
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: shabaz
  • Date Created: 17 Feb 2022 1:41 AM Date Created
  • Views 2145 views
  • Likes 17 likes
  • Comments 10 comments
  • infineon
  • CY7C65213
  • cypress_semiconductor
  • cypress
  • usb-to-uart
  • opensource
Related
Recommended

Building a USB-C USB-UART Board

shabaz
shabaz
17 Feb 2022


Introduction


USB-UART devices provide an interface between a host computer and a peripheral device, connecting between the USB port and a serial connection called a serial UART. Nearly all microcontrollers have a serial UART, and sometimes it can be used for programming or debugging purposes.


I recently needed a new USB-UART device, and I took the opportunity to try out a USB-C connector, as well as upgrade from the usual USB-UART chip that I use, to a better one. In the past I used a MCP2221 based USB-UART. It is still great (simple to use) but it is missing (amongst other features) the hardware flow control which I really wanted. This time around I used a Cypress chip (now Infineon), based on a USB-UART datasheet comparison I'd worked on a few years ago.


The main features of this project are:
* Modern USB-C connector
* High transmission (baud) rates are supported (up to 3 Mbaud)
* 5V and 3.3V outputs for powering circuits
* 5V and 3.3V UART logic levels (a jumper or a slide switch can be fitted)
* Hardware Flow Control pins, RTS and CTS, are available
* 0.1 inch headers, for easy piggy-back connections onto other circuit boards
* Battery charge negotiation (BCS 1.2) capability pins are exposed for plug-on boards. See this Silabs RoadTest for some detail about BCS 1.2.
* Some GPIO pins are exposed
* Two LEDs for easily seeing if data is being received or transmitted

Circuit Diagram and Components

The circuit diagram is shown here; there is a PDF attached to the blog post.

(Note: I built a version 2.0, but the circuit and board files here are for a version 2.1 which is very slightly tweaked for easier hand-soldering and corrects the direction arrows on the LEDs):


The core of the circuit is the CY7C65213-28PVXI chip from Cypress Semiconductor.

Since there is a component shortage worldwide, it may be necessary to swap out the 3.3V regulator IC U2, for a pin-compatible alternative. If you do that, then the C2, C3 and C4 values will likely need modifying. There may be pin-compatible alternatives for D1 too. All resistors and capacitors can be 0805 sized, but 0603 size can fit too. C6, C8 and C9 component positions can accommodate 1210 sized capacitors if that is what is available.

The USB C connector is part code USB4085-GF-A and is straightforward to hand-solder (needs a 1mm diameter, or smaller, soldering iron tip, and 0.38mm diameter solder (or use solder paste). 

The 10-way right-angle connector can be T821110A1R100CEU or any generic DIL header should hopefully fit.

An ESD protection device, TPD4E1U06DCKR is used in the circuit, but it's hard to find due to the current shortage. Other SC70 sized ESD protection parts can be used. 


Building It

The circuit board layout is shown below; the files are attached to the blog post, ready for sending to a PCB factory.



For my use-case, I directly soldered a zero-ohm link at the logic level selector J2, to permanently set the board for 3.3V logic levels.

To build the board, I used a soldering iron, thin solder, flux, and desoldering braid to correct stuff. It could be reflow-soldered of course, but it wasn't necessary.



The board isn't designed to fit any particular enclosure, but something could be 3D-printed if desired.


Using It


Currently I have only tested the RXD and TXD pins. I didn't need to install any driver on my Windows 11 PC, it just worked. It should work fine with Linux too. I also plugged it into two different Android phones, and successfully got a serial terminal app (from the Google Play Store) to function with it. Interestingly, the Samsung phone worked completely fine, whereas the Xiaomi phone had a popup appear which stated that the phone was not charging through the cable. I was able to clear the popup and use the USB-UART board fine, but I don't know why the popup appeared in the first place. The popup only appeared once, and didn't appear after unplugging and re-inserting the board.


It's nice finally being able to use the same USB-C cables that I use with the phone or PC, and I hope to use this board a lot.

The board files and schematic are attached. Thanks for reading!

usbc-uart-rev2_1-files.zip
Anonymous
  • shabaz
    shabaz 4 months ago in reply to Jan Cumps

    Just noticed how bad the soldering iron Wikipedia page was. I've added a graphic with tip shapes, and corrected some of the text there.

    I'm not very good with 3D CAD so couldn't get it to be perfect, but it's better than before, since there was no graphic image there at all before. If anyone can do a better one, it would be great to see it replaced.

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
  • DAB
    DAB 4 months ago

    Nicely done.

    The USB C specification places a lot of hidden capability within what was once a simple serial data interface.

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
  • shabaz
    shabaz 4 months ago in reply to Jan Cumps

    Hi Jan,

    That's right, flat slice off conical, about 45 degrees. Many websites use that term for tips with cup/spoon shape in them unfortunately. I use the completely flat one, it can't accommodate much solder.

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
  • Jan Cumps
    Jan Cumps 4 months ago in reply to shabaz

    "bevel tip"

    That is a conical tip, with the end cut off at an angle (45°-ish) and flat, correct?

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
  • shabaz
    shabaz 4 months ago in reply to genebren

    Hi Gene,

    I find it really easy to flood joints too, I'm using 63/37 Loctite solder, with a 1 mm bevel tip, and generally use this combination for almost all soldering jobs, SMD and through-hole (except very large connectors). 

    The above is fine for SOIC etc., bur for SSOP 0.274mm solder is nicer, which allows to solder each pin individually (with 0.38mm solder it causes bridges for me). However the 0.274mm solder has very little flux, so for SSOP I have to apply a line of flux paste first. I still use the 1mm soldering tip, I have finer ones but it feels unnecessary to swap tips just for SSOP. I get the occasional bridge, but I clear those the usual way (braid and maybe dab of flux).

    For the cleaning I use a hard brush+IPA, and wipe off (currently with a pack of old dried up stencil wipes, re-soaking a corner of those where needed, since I ran out of proper wipes).

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
>
Element14

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2022 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • Facebook
  • Twitter
  • linkedin
  • YouTube