YDKB - joric/usb-c GitHub Wiki

You can download YDKB original gerber from the releases section, or order directly from OSHpark:

Warning! 1.6mm PCBs are way too tall, use 0.8mm PCBs only (OSHpark makes 0.8mm PCBs as well)

You solder them in 5 points (two points in the middle and three points at the bottom) using short 0.5mm pins.

Gerbers are provided by Yang himself in this thread:

Complete boards from OSHPark

Order 0.8 mm PCBs only!

Bill of materials

USB-C riser board uses the same components as in nRFMicro:

Taobao

Appears that the YDKB shop on Taobao does sell the components for the raiser board, or will even attach it to a new one if you are buying together:

The main concern is that the shop seems to only ship to mainland China shipping addresses so you would have to use some sort of parcel forwarding service.

(The 3.0V pin isn't really connected, only D-/D+ and upper GND and VCC pins are used.)

Issues

I'm having the issue with the YDKB HHKB-BLE controller (rev. 2.4). Doesn't look like charging indicator stays for long and the board overheats. Do you know what that means? Maybe just a bad battery? I've replaced MCP73831, AP2112K and input P-FET and got 4.2V on the charger but it looks like it still shuts down for no apparent reason at about 60% of charge and the board heats up (mostly charger and USB hub). Also USB don't work at all. I've soldered the USB-C riser board (soldered in in 5 points - 2 upper 3 lower) a while ago maybe I need to cut/add a jumper or something. Can't really remember if USB worked back then but now I can't even change the firmware (no USB, no ESC mode). D+/D- seem connected to the computer but I'm getting just 2-4V on the hub USB ports and no wired connection whatsoever. Tried USB/inner USB shortcuts, doesn't help. Bluetooth connection works but charging is funky.

Wired connection suddenly stopped working. Considering Atmega connects to the USB hub, it's the hub.

YDKB Controller BOM:

SD1-SD2: B2 (sod-123)
Q1-Q4: A5SHB
NQ4: A69T
U3: G3P
U4: KD25 
U6: HS8836A IPX050041-1
Y1: (crystal) 80.Z ?
U1: MEGA32U4 -UM 1820E PH 18205HW

replaced U4: KDAP / Q1-Q4: A1SHB / NQ4: A79T / U3: H633P, looks like it's HS8836A, waiting for parts.

  • desoldered the hub entirely. seems better this way. nothing overheats. charging works
  • the next logical step would be soldering d+/d- directly to the atmega )
  • or maybe not. I use PD/QC charger maybe it fries D+/D- occasionally. I don't have a spare atmega to replace

Upd. replaced HS8836A, didn't help. Had to solder USB directly to Atmega and lose the hub.

ydkb-pinout

Hasu

Hasu makes his own USB-C riser boards now. Mind that battery life on Hasu controllers was pretty abysmal last time I checked (Hasu worked for about 2 days with a 2500 mAh battery, YDKB works for 10 days with the same battery and the same use case). There's also a 3-rd party USB-C riser board for the Hasu controller by manistein. Also if you like MicroUSB more than USB-C (I do) you can just replace MiniUSB with MicroUSB (Hasu controller has compatible SMD footprint, YDKB uses TH).

Pictures

tabasco

Archive

These boards are obsolete, very hard to solder and overall just awful, so do not order.

I use multiple drills to make oblong holes because PCBS.io doesn't support plated slots.

YDKB-C

Target board: YDKB Controller (HHKB BLE MOD upgrade module) by yangdigi. Current version: 1.0.

Bill of materials

USB-C riser board uses the same components as in nRFMicro:

MiniUSB footprint is a modified USB_Mini_B_Female_548190519.kicad_mod from digikey.

PCB manufacturers

OSHPark

OSHPark charges just $0.85 for 3 boards with a purple mask, including international shipping (untrackable, takes about a month).

PCBS.io

PCBS.io charges $0.70 for 4 boards (actually 6 boards) with black mask, including international shipping (9-20 days fabrication, 12-60 days shipping).

Shipping log
Manufacturer Total Paid Panelized Shipped Received Days
OSHPark $0.85 2019-12-12 2019-12-13 2019-12-17 - -
PCBS.io $0.70 2019-12-12 2019-12-22 2019-12-30 2020-01-13 32

Modification

Mind that PCBS.io doesn't support oval plated slots and edge cuts. To export for PCBS.io:

  • disable "Edge.Cuts" layer, enable "Margin" layer (make sure it matches Edge.Cuts)
  • enable "Exclude PCB Edge layer from other layers", "Use Protel filename extensions"
  • (drill file) enable "PTH and NPTH in a single file"

References