plaid icon indicating copy to clipboard operation
plaid copied to clipboard

Replace Mini USB connector with USB-C

Open piit79 opened this issue 5 years ago • 12 comments

Replace the Mini USB connector with a through-hole USB-C one. I used Discipline keyboard as inspiration. Fixes #22.

To make the slightly larger connector and the two extra resistors fit I had to move the I2C header and the LEDs to the right.

I had to cherry-pick the "fix library name in sch" commit (2d1dfa1) to fix many components showing with "??" in the schematic.

I included gerber zip for anyone who wants to inspect it. I realize the original repo doesn't contain the gerbers but it might be a good idea to start including them so that people don't have to generate them themselves when ordering boards.

This is my first go at modifying a PCB in KiCad, so I would appreciate any input. I did my best to keep all the existing features (like extra copper zones where traces meet pads).

piit79 avatar Aug 10 '20 07:08 piit79

@hsgw Would you be able to take a look if the PCB looks OK? I copied the USB-C schematic from the Discipline project, so that should be good. Thanks!

piit79 avatar Aug 12 '20 08:08 piit79

Hi, I can't find schematic symbol of USB connector. Can you include files in /pcb? And, what kind of license is it?

I know there is through hole type-c connector and it's not difficult to soldering too much. If you don't mind, I can replace it and rerouting.

Thanks

hsgw avatar Aug 15 '20 08:08 hsgw

@hsgw Hey, I did include the schematic symbol in pcb/plaid.lib and the footprint in pcb/plaid_silk.pretty/USB_C_GCT_USB4085.kicad_mod. The source of these files is the coseyfannitutti/discipline repo before the license was changed to the more restrictive one. The Discipline board itself is licensed under GNU GPL, but I'm not entirely sure if that applies to the schematic symbol/footprint.

I just updated the PR, looks like I had the associations and the library path wrong. Can you please test again?

The connector I used is a through-hole one - see the DigiKey link in the PR description. It is indeed pretty easy to solder; I built one Discipline v1 with it.

Just out of curiosity, which connector did you have in mind?

piit79 avatar Aug 15 '20 10:08 piit79

I just opened an issue in the Discipline repo to find out what's the origin/license of the USB-C connector schematic symbol/footprint: https://github.com/coseyfannitutti/discipline/issues/34

piit79 avatar Aug 15 '20 10:08 piit79

OK! I can see type-c symbol on schematic.

symbol and footprint

If we can't use them, I can make our own library.

hsgw avatar Aug 22 '20 07:08 hsgw

Pinged Bryan from CFTKB by e-mail and received the following response:

The USB4085-GF-A footprint that I use is a modified version of the one that was in ai03's USB Type-C library. The symbol I just made myself because at the time his library didn't include one, and I wanted to be sure that the pins would be assigned correctly.

It is absolutely fine for you to use them for Plaid.

I've also received prototype USB-C Plaid PCBs from JLCPCB today, will try to build one to confirm it's working correctly.

piit79 avatar Aug 24 '20 16:08 piit79

Thanks!

I've thought a lot about ensuring that it works correctly. I'd have to actually make it myself to warrant it. So I wouldn't like to merge pcb design from others. I would appreciate it if you could folk this repository and publish with your own responsibility.

I am really sorry and very grateful for your contribute.

hsgw avatar Aug 25 '20 02:08 hsgw

I completely understand that. I wouldn't expect you to merge it just like that. I also want to ensure the PCB works correctly. I'm currently having PCBs made and will build one when the next revision arrives. (I should have perhaps opened the PR only after testing, but I was also looking for possible feedback.)

Once I confirm that the PCB works correctly, would you perhaps be open to merging my contribution into a separate branch (usb-c?) and linking to it from the README?

piit79 avatar Aug 25 '20 08:08 piit79

Ladies and gentlemen, it's alive! :blush: The second revision works correctly (don't even ask about the first revision... :wink:). Latest revision has been pushed to my fork.

Plaid-C

usb 1-1.5.6: new low-speed USB device number 119 using ehci-pci
usb 1-1.5.6: New USB device found, idVendor=16c0, idProduct=27db, bcdDevice= 0.02
usb 1-1.5.6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-1.5.6: Product: Plaid
usb 1-1.5.6: Manufacturer: dm9records
usb 1-1.5.6: SerialNumber: 0
input: dm9records Plaid as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5.6/1-1.5.6:1.0/0003:16C0:27DB.00D5/input/input396
hid-generic 0003:16C0:27DB.00D5: input,hidraw6: USB HID v1.01 Keyboard [dm9records Plaid] on usb-0000:00:1a.0-1.5.6/input0
input: dm9records Plaid Mouse as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5.6/1-1.5.6:1.1/0003:16C0:27DB.00D6/input/input397
input: dm9records Plaid System Control as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5.6/1-1.5.6:1.1/0003:16C0:27DB.00D6/input/input398
input: dm9records Plaid Consumer Control as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5.6/1-1.5.6:1.1/0003:16C0:27DB.00D6/input/input399
hid-generic 0003:16C0:27DB.00D6: input,hidraw7: USB HID v1.01 Mouse [dm9records Plaid] on usb-0000:00:1a.0-1.5.6/input1

piit79 avatar Sep 04 '20 14:09 piit79

Thanks so much! I would like to make new branch soon.

hsgw avatar Dec 16 '20 05:12 hsgw

slightly off topic, any chance to add a kailh hotswap branch?

fi0 avatar Mar 03 '21 22:03 fi0

@fi0 I guess that wouldn't be too difficult - all the switch footprints would need to be replaced and re-routed. I have loads of Kailh sockets, so might have a go at it soon.

piit79 avatar Mar 03 '21 23:03 piit79