First board in a while (CH552G) - Page 1
Forum section: electronics / projects

author: willmore
author_rank: Newbie
timestamp: April 07, 2023, 08:34:52 pm
content: Hello, all! I just got back into PCB design. It's been a while since I've done any and things have changed a bit in that decade plus. Thanks to some of the vendors in the ads here (JLCPCB), it's a lot easier to make PCBs (cheaper as well). It's been a while since I laid out the DDS60https://midnightdesignsolutions.com/dds60/and I no longer have a license to Eagle. Not that I'd want to use a really old CAD program anyway. Since I've been meaning to learn KiCad, I thought this would be a good project. Ralph Doncasterhttp://nerdralph.blogspot.com/got me interested in the CH55x family. The easiest chip to work with looked to be the G in SOIC-16. I had bought some premade dev boards and gotten hooked on the parts. I have been using Deqing Sun's ch55xduinohttps://github.com/DeqingSun/ch55xduinolibrary to program the chips--which worked great.Digging into KiCad was easy as it felt a lot like Eagle. I don't have all of the muscle memory of key bindings left, but I'm sure I'll pick them back up as I keep going. Since it was a learning project, I started by making the part for the chip myself. I'm sure there's plenty of versions of it out there, but that would only help me learn to use google, not to design things myself. I quickly through together a minimum schematic. Since the dev boards I had been using had much more hardware than I was planning on, I wanted to test to see if my design would be sufficient before I committed them to PCBs.Meet the dead bug test board (see first attachement). Everything is either glued down or soldered down to that scrap of PCB. These chips are really handy in that, when blank, they start up in the USB bootloader. The ch55xduino system creates code on the uC which provides a way to reset the chip back into the bootloader over USB, so subsequent programming cycles are as easy as an UNO.With that test behind me, I was confident that my simple design was going to work and it was time to lay out the board. It only took me a day or so with KiCad (and a lot of google) to finish my design. Most of the time was spent on finding a footprint for the micro-USB-B connector I already had in stock. They're the one used on the blue-pill boards which I had bought to replace some broken connectors. Since I've designed boards before, I know what files the fab houses need, but it was still really easy as there's links on JLCPCBs website which walk you through it. I submitted my design and started clicking on options. I'm not making anything fancy, so I didn't select anything but the most basic options--leaving most at their defaults in the hope of being easy to batch with other boards. Given how small my board was, I could order quite a few of them before the price started to rise. I ended up with 30 of them *with* international shipping (the cheapest option they had) for under $10 (USD). Yes, I paid for my board, I'm not sponsored by JLCPCB, my only relationship with them is as a very satisfied customer.*One* week later I had boards in hand. Again, I picked the *cheapest* shipping for my boards and didn't spend a penny on anything to expadite them. I litterally could not think of a better way to say "take your time" with my order. One week. The boards looked perfect. The one complexity of the design was the cutout for the USB socket (just like a bluepill, the USB connector is somewhat recessed into the board). They were perfect. I quickly soldered one up.I chose to use through hold parts for the common parts as I had plenty of hand and there was plenty of board space due to how I designed the board, so there was not *need* for SMD parts. Through hold also gave me the chance to route signals under parts and to mount the parts on the back or front of the board as I chose. The board was designed to be used with a breadboard, so all the connections are in one row along one edge. An 0.1"x16 header solders on and provides the connections to the breadboard--the board itself hangs over the edge. It's perfectly sized to fit onto the really tiny breadboards. Plugging into the outside row gives me a fanout of 4 and the whole other side of the breadboard to build up anything I might want to connect to the board.I've never cared for the "act like a DIP" type of board because that takes up so much of the breadboard space. I wanted to try a SIP design that could hang off the board and not block any board space, so this was the perfect chance.Things I'd do differently:USB-CSMD partspin lables in silkscreenIf anyone knows of a cheap and easy to source USB-C socket (with a footprint in KiCad), please share.Well, there you have it. I'll probably need to put the design up on github in case anyone ever wants to make some. Comments and criticisms are welcome. Thanks for reading this far. Cheers!

author: ataradov
author_rank: Super Contributor
timestamp: April 07, 2023, 09:35:02 pm
content: USB-C connectors are easy to source. Here is one I commonly usehttps://www.lcsc.com/product-detail/_XUNPU-_C2835315.htmlBut there are a ton of other versions.No idea about standard KiCad library, but this is a very common footprint for USB-C connectors. In any case, making your own footprints should be part of the deal, sooner or later you will have to use a part that does not have footprints. Or you will be limited in the parts you can use. You can also take the footprint from one of my projects (https://github.com/ataradov/free-dap/tree/master/hardware/d11-nano-dbgfor example). It is guaranteed to work with the connector above.