Sunday, 22 March 2026

PCB Design Hints and Tips - Round the corners, don't cut the corners

I have been meaning to write this post for a while, ever since I worked out what I was doing wrong with adding rounded corners to a PCB.

I have been doing that for a while as I order new designs or repeat order previous ones.

I think it gives a nicer look, and no sharp corners to handle (lets overlook the rows of sharp pins below).

I have recently updated the dual 6550 video RAM replacement for the Commodore PET.

As well as the corners, this has the semicircular cutouts to indicate the pin 1 end (as the original chips did) and also has a cutout slot for a ceramic decoupling capacitor on the host board.

I think that is a worthwhile update, and matches the previously updated 2114 video RAM replacement.

I have been applying that to all the re-ordered boards, as appropriate, such as the USB keyboard controllers. I have sort of standardised the size of a lot of those to 50mm x 50mm squares.

I have done a similar thing with the development test boards I keep making.

These are all 100mm x 100mm.

If you go over 100mm, that can be where the price goes up, so it's a good choice (and if they are no good, the spare boards make good drinks coasters).

It is also, I believe, why the original RC2014 was 39 pins rather than 40, 39x2.54 = 99mm 40x2.54=102mm.

Round corners

If you are starting from scratch, it's nice an easy, go to Board Points and select "Create RountRect Board".

Put in your parameters, and it will set it up for you.

With most of these, I am starting with an existing design, and it always used to take me a bit of fiddling to get the conversion to rounded corners right.

The basic idea is to take your standard corner section and add two points to the outline, either side of the corner point.

Move what was the corner point to about the right place.

Then change it to an arc.

I then used to have to fiddle with the grid (or even turn it off) to try to find the best centre point for the arc.

I recently realised the better way was to go into the "board points" list.

Find the relevant point and change the radius of the arc there to match the distance from the edge of the two points I previously added.

And there you go, perfect rounded corners.

Repeat that for all four corners and you get a nice neat board.

Copper pours

The lighter green areas on the board above is the copper pour, spare areas of the board, all connected to ground.

You can just leave the grounds all disconnected and let the copper pour do all the work, but than can sometimes catch you out if it can't get to all the places it needs to connect.

It looks OK when you add add the copper pour, but there is still one thin blue ratline on the microntroller.

In this case, that one connections isn't made, highlighted below. Also missing is the place where I had manually routed a trace to make that connection.

I prefer to make sure everything is wired up fully before I place the copper pour.

The ground path is highlighted.

I tend to keep the paths square on these, rather than the neat 45 degree angles on the other traces.

The copper pour hides all that in the end, belt and braces, but always wise to check the layout information to see that "nets" and "routed nets" are the same.

(N.B. the file path looks like it is Windows, but only because there isn't a Linux version so I am running this under WINE)

It is also important to make sure there is a sufficient gap around the edges of the copper pour.

I found the default settings produced a fill that was a little close and opened up the potential to cause a short to a near by pin if the solder mask was damaged.

I doubled it to a 12 mil gap and that seems a good balance.

PCB Design Software

I am using DipTrace to design PCBs, and have been doing for as long as I can remember in the modern era.

I started with hand-drawn boards back in the late 1980s. 

This one of the few I have left.

Ah 1980s solder. If you used the sort of stuff we had back then, you can probably still smell the flux burning.

I later moved to a DOS program for a while, Easy PCB I think it was, but those were still the days of photo resist with a UV light box and etching the boards with copper sulphate in an old fish tank.

(sadly I can't find any examples of those days as they all got binned by helpful people when I was moving house. That's why I am never moving house again. They are carrying me out of here in a box, probably the one filled with several selected Commodore PETs and all my tubes of new Z80s)

When I designed my first PCB this century, I went with DIPTrace. Out of all the ones I tried at the time, that one felt the most intuitive and worked the way I expected it to and I have stuck with it since.

I have been upgrading as it changed, but I think I am now one version behind. I haven't updated as the version I am on does what I need (and you have to pay for upgrades between major revision).

I also didn't like some of the changes in this version, so didn't want to add to that with more changes in the next.

DIPTrace Viewer

One thing I notice they did add is a free viewer program. That is quite useful to open .dip and .dch files if you don't use DIP trace, or I have it on an old laptop I use in the workshop so I can check things on schematics and PCB designs without having to go down to the office and check the main PC, or print out lots of diagrams like I used to.

That is the later version, but it seems to be able to open and view the later files no problem.

Design Your Own Parts

I didn't like was the updated footprint style in the library with the last version I updated to. They do not have a full outline, there is a barely visible pin 1 marker, tiny pads etc.

The top is the new style for a 14 pin DIP, and below is the style footprint I normally use.

I am not sure I want to go all the way to the more traditional style with the even larger pads, as that limits the trace routing options a little.

I think the one I use (in the centre) is a reasonable compromise between the two.

(although now I have drawn the one with the big pads, I am tempted to see how it looks on a full layout......)

The good thing is you don't have to use the new style footprints. You can define your own.

I have built up my own library of parts now, all with the appropriate footprints, and it's easy enough to add a new one from the main library and just change the footprint.

You can also change the schematic symbols as you like.

Schematic Symbols

Back in the early days of the Minstrels, I was using the standard 74LS74 part.

That took up a bit too much space on the schematic with the CLR and PR going out top and bottom, particularly when connected to something with a longer name than "5V".

I designed my own symbol with a few changes to make it more useful for me. I moved CLR and PRE to the side and changed then to be shown with as /CLR and /PRE to remind me they are active low.

I also added the symbol to the side of the clock to remind me it is triggered on the rising edge.

I have recently added a second version of the 74x74 to my library, this time with the /Q output internally connected to D, so avoiding the need to draw the loop back to the D pin. 

I'm not 100% if I should use that yet, it tidies up the schematic, but might confuse someone if they can't see the D pin? Maybe if I change the pin label to D=/Q ?

I did a similar thing with the 74x393, I often use the two 4 bit counters chained together.

That has an active high reset and a clock which is triggered on the falling edge, so I have the symbol there to remind me this is different to all the other latches and flipflops.

I have a second version in my library to avoid having a slightly clunky loop back in the middle.

I also tied the two resets together as that is generally how that is used. (the two box version is still there if I need to drive them separately).

Drawing little aide-memoirs in the middle like that can be quite useful.

I have expanded on the standard symbols for things like the 74x138 and 74x153 to remind me of the ordering, and to hopefully make the schematics easier to follow.

Unsurprisingly, the standard libraries do not have some of the more esoteric parts, so if you need 65xx chips or Commodore PET edge connectors etc., you can draw your own.

Even if you are using standard connectors, you can make duplicates and label the pins appropriately, such as the standard 6 pin 0.1" header used for an FTDI serial cable.

I might have overdone it a little, but copious direction arrows can be very helpful when dealing with something like RS232 where Tx and Rx mean different things depending on which way you are facing.

You might also have seen the previous post on TFW8b's power supply tester, I drew my own symbols for the dual filament car bulb and centre off switch.

The meters I had previously drawn for a post about bridge rectifiers.

Part Numbers vs Values

Traditionally, PCBs had part numbers marked for each part, but I prefer to put part values.

I have built many, many kits (mostly my own), and I find it much faster to assemble boards like that without having to refer to the documentation each time to find out what value goes for R1, and then R2 etc.

You could argue that it is better to have the part numbers for debugging.

But I would point out that you can't actually read most of the part numbers once the parts are fitted anyway.

I include both versions in the documentation for reference.

I also include both values and part numbers in the schematics.

The PET video connector is another custom part, having the signals marked makes things easier to get it right whenever I use it.

I remember being quite pleased with that schematic, I like being able to arrange things without having to cross over tracks, and keep things in a logical order.

The PCB design likewise, if I can reasonably lay the board out without using vias, then I do so. You get a free via with each IC pin or resistor leg, so there are no excuses.

Functional Blocks

When I can, I try to lay boards out in functional blocks with boxes around.

I can then mirror that in the documentation, taking it block by block.

It doesn't always work out due to lack of space, or excess of complexity, but it can be quite neat when it does.

Route in buses

Another things I try to do is route signals in buses.

This sometimes makes the layout easier, sometimes it is a rod for my back.

However, I think it looks nice and it also makes it easier to trace things, and one case recently when I need to make a lot of modifications, it helped greatly that all the lines between two parts where in a neat bundle.

Shipping options

A word on shipping.

There are various options with shipping PCBs. If you are only ordering a few boards, and don't mind waiting and the potential of getting a card from Parcel Force asking you to duties and handling fees, then the standard China Post / Airmail probably works for you.

I prefer to choose the DDP shipping option. (I don't even see China Post on there, maybe my order was too heavy?)

This looks like it works out more expensive, because you pay more for the shipping, as you pay the duties and handling fees up front.

The shipping, VAT, duties and handling fees together can almost double the cost of the boards, but that's fine with me, you just need to take that into account when pricing the boards.

The advantage is it sails through customs (well it is on a plane, so it flies through rather than sails, but you know what I mean). No delays, and nothing extra to pay.

That works better for me as if found with the other options it takes a couple of days extra to deal with that, and the couriers would usually get the value of the package wrong, and often charge more duty that should be due (but also sometimes underestimate, so it's not all bad), and then I used to get frustrated that I had to enter all the address and payment card details every time, plus pay the handling fees etc.

Going for DDP avoids all that, so I go for that one as it always seems to work best for me.

If I plan things right, and put the PCB order in on a Tuesday or Wednesday, the boards are usually ready to ship by Friday and arrive on the Monday in a nice blue box.

And within, lots of goodies.

All in the usual style of wrapping you find from all the Chinese PCB manufacturers.

(and some of the UK ones. I remember a few years ago, when due to reasons beyond our control it suddenly got very difficult to ship things in and out of the UK. TFW8b really needed some PCBs, so paid the hefty price of a UK manufacturer. Only to be greeted a month later by PCBs in exactly the same packaging, with exactly the same labels on. Probably made in exactly the same factories and shipped to the UK before they added a 10 times markup.)

Full Disclosure

N.B. As with Diptrace, using JLCPCB is the choice I make, and have been doing for almost as long. I recently contacted JLCPCB and they have agreed to sponsor this blog. Not in the solid gold speedboats type way, but help with the costs of future PCB orders, so here is a link with my code on, should you want to sample their wares and help me out:

Disclaimer

These are just some of my thoughts and some things I have learned during the last 20 years designing my own PCBs. You might not agree with some of them, or you may prefer different techniques, different software or a different PCB manufacturer. That's fine, it's a free world (or at least it used to be, not so sure these days).

What have I missed? what hints and tips and tricks do you have? I might update this post to add more, or maybe have a part 2. (assuming I agree with them of course, see above statement about free will)

Adverts

You can find many of the boards I used as examples here in my Tindie store. All sort of kits, test gear and upgrades and recreations of the ZX80, ZX81, Jupiter ACE and Commodore PET.


Patreon

You can support me via Patreon, and get access to advance previews of development logs like the ones these posts are based on, and progress on new projects like the Mini PET II and III and Mini VIC and other behind the scenes updates. The new Mini PETs are coming on well, so watch this space. This also includes access to my Patreon only Discord server for even more regular updates.