General Projects

Magnetic 3D Printed PCB Stands

Designed as an aid to soldering small PCBs. These magnetic stands can be used along the edge or on the corners of a board to hold it steady whilst soldering. The slots are sized for standard 1.6mm FR4 PCB material.

3D Printed Magnetic PCB Stands

3D Printed Magnetic PCB Stands

I printed them in PLA with the base facing upwards to minimise the use of support material. The slots were designed to be a tight fit but they soon wear in after a few uses. If you use support like I did, you will need to clear this out before use.

The slots were deliberately designed to acommodate use along the edge of a PCB or on the corners. You can see this in an image captured from Ultimaker Cura below.

Curs image showing slot design

Cura image showing slot design

After printing, I stuck a standard 12x3mm neodymium magnet in the base with some modelling glue and left it to dry.

In use, they clip redily on PCBs and stick to any ferrous surface. I use a silicon soldering mat and place my steel ruler underneath which seems to work well.

Here are all the files for printing the Magnetic 3D Printed PCB Stands:

  • Magnetic 3D Printed PCB Stands STL/G-Code files .ZIP
  • Magnetic 3D Printed PCB Stands Reference Images .ZIP

7 Decade Programmable Resistor Substitution Board v1.00

This project is meant for the school I volunteer in. It’s is a Resistor Substitution Board. I thought this would make a good soldering excercise for the students and be a useful piece of equipment to have in their toolboxes. For my own one, I used fairly expensive .25% tolerance resistors, but really, the cheaper 5% or 1% tolerance variety would work equally as well. It all depends no how accurate you need the device to be.

7 Decade Programmable Resistor Board v1.00

7 Decade Programmable Resistor Board v1.00

I found a few designs online and eventually designed my own. It works by setting resistors in series to make a total resistance value at the terminals or two pin header on the board. The resistors are set with jumpers along groups of 10x2pin headers.

7 Decade Programmable Resistor Board v1.00 PCBs

7 Decade Programmable Resistor Board v1.00 PCBs

The PCBs were fabricated by JLCPCB.com and came through after a few weeks of waiting. They were up to the usual standard. It took around an hour of methodical construction to build one up.

7 Decade Programmable Resistor Board v1.00 Constructed

7 Decade Programmable Resistor Board v1.00 Constructed

I ordered the bulk of resistors from RS Components online, a great supplier that provides next day delivery as standard. They didn’t however, seem to list 1R 5% resistors, so I eventually used eBay for speed.

After construction, I made a cursory glance of the joints, missing a dry joint I had made in my haste. This became evident when I set 80K and got 0R instead. Some moving of the components revealed a joint I just hadn’t done properly. Having sorted that little issue out, the board worked fine. Although when measuring several hundreds of K resistance, one or two R difference doesn’t redily show up on my old Fluke 73 multimeter!

Measuring a Resistance Value

Measuring a Resistance Value (4K8)

In the above image, I set 4.8K and got 4.78K, “close enough for jazz” as my old boss used to say. I added four long bolts fixed with nuts to serve as stand-offs for the soldered connections and the long terminal shafts. I bolted the terminals directly to the board which provides an adequate connection without the need to solder. in this configuration, I used the bottom half of the terminal stand-off on the top of the board and the bare washer and nut on the underside.

Here are all the files for fabricating the
7 Decade Programmable Resistor Substitution Board v1.00:

  • 7 Decade Programmable Resistor Sub. Board v1.00 KiCad (v4.00) files .ZIP
  • 7 Decade Programmable Resistor Sub. Board v1.00 Gerber files .ZIP
  • 7 Decade Programmable Resistor Sub. Board v1.00 Schematic .PDF
  • 7 Decade Programmable Resistor Sub. Board v1.00 Images .ZIP

Now to design a capacitor version!


ESP8266 ESP01/03 Flash/Proto Board v1.4

This section holds all the design files and information to make and program the ESP8266 ESP01/03 Flash/Proto Board v1.4 The board has been assembled and tested by myself. Although I don’t attach any warranty or fitness for purpose. If you wish to use the design you may do so freely, but at your own risk.

Having read that the ESP8266 was a micro-controller and had the facility to be programmed via the Arduino IDE, I set about designing a PCB to accommodate either the ESP-01 or ESP-03 modules. I came up with this design after a few iterations.

ESP8266 Flash Board v.1.3 Gerblook Front

ESP-01-03 Flash-Prototype Board v.1.3 Gerblook Front

I had it fabricated and realised I had made a few mistakes. I hadn’t known that GPIO15 on the ESP-03 had to be grounded for normal or programming operation. I also didn’t know that for programming the ESP-03 module, GPIO-2 needed to be taken to VCC either. However, I did build up an example of the v1.3 board using both the ESP-01 and ESP-03 modules.

ESP-01-03 Flash-Prototype Board v1.3

ESP-01-03 Flash-Prototype Board v1.3

You can see the flying leads I added on to the right-hand board for GPIO-15/16. Although a little ‘clunky’ to work with, both the boards worked fine and proved the concept. I had a long think about how to improve on the design and I resolved to make it an SMD board. There aren’t may components to solder and making the board surface mount would make for a more compact design, ideal for IoT applications.

ESP-01-03 Flash-Prototype Board v1.4 SMD Gerblook

ESP-01-03 Flash-Prototype Board v1.4 SMD Gerblook

This is what I came up with. A much more compact layout with GPIO-15 grounded and GPIO-2 (along with GPIO-0 for use with ESP-01’s) on a single switch which has Program and Run positions. I also replaced the power selector switch with a jumper since it would be seldom changed. This allows selection of the power source between either the 6-pin serial header or the USB/JP1 header. I also removed a few header pins that had no connection on the previous version.

I had the new v1.4 PCBs fabricated by the excellent Hackvana who always produces clean PCBs with a good silkscreen. The Gerber files here are optimised for Hackvana and other fabricators may have issues with such tight tolerances. You can, of course, produce your own adjusted gerber files from the Eagle files below if you wish.

Here are all the files necessary for fabricating the ESP8266 ESP01/03 Flash Proto Board v1.4:

  • ESP01/03 Flash Proto Board v1.4 .SCH schematic file
  • ESP01/03 Flash Proto Board v1.4 .BRD board file
  • ESP01/03 Flash Proto Board v1.4 Gerber .ZIP file
  • ESP01/03 Flash Proto Board v1.4 Parts List .TXT file
  • ESP01/03 Flash Proto Board v1.4 Schematic .PDF file

One little gotcha is the reset line for the ESP-03 modules. There are two small connections near the ceramic antenna on the ESP8266 chip side. If you wish to utilise the reset switch on the PCB, you will need to add a shorting link across these.

ESP-03 Reset Link

ESP-03 Reset Link indicated by red circle

It’s quite a task. I used a fine soldering iron tip under a magnifying glass supported with my ‘Helping Hands’ The link is a piece of resistor lead, cut down to size and held in place for soldering with angled tweezers.

Programming the ESP8266 via the Arduino IDE requires the installation of some free software that can be downloaded from GitHub. This adds options into the menus of the IDE for direct programming via serial. I use a simple USB to Serial adaptor that I sourced on eBay. The header pins on the board are positioned with this in mind.

USB-Serial Adaptor

USB to Serial Adaptor (Image courtesy of Chip_Partner_Store)

If a different USB to Serial adaptor is used, dupont type flying leads can be utilised for the connections. Once connected, set the Run/Program switch on the flash board to the Program position, select ‘Generic ESP8266 Module’ in the Boards menu of the Arduino IDE and all should be well.


Universal 78(X)XX Regulator Board v1.00

This section holds all the design files and information to make the Universal 78(X)XX Regulator Board v1.00. The board has been assembled and tested by myself. Although I don’t attach any warranty or fitness for purpose. If you wish to use the design you may do so freely, but at your own risk.

A little while ago, I realised that I use the same type of regulator for most of my projects. This is normally a 7805 with the associated components. I had the idea of designing a PCB that could be configured for any of the 78XX devices or alternatively, the 78LXX devices. This is the result.

Universal Regulator Board v1.0 Gerblook Front

Universal Regulator Board v1.0 Gerblook.org Front

I designed it to be a quick and easy way to get a fixed voltage set up for a project, or to have in the tool box to regulate a source such as a badly regulated ‘wallwart’ style PSU or rechargeable battery. The board has several features, including a 1N4001 (or similar) polarity protection diode on the input, an optional power LED and associated resistor (R2) and a choice of capacitor sizes. There is also a snap-off heatsink support (Snap off before assembly) and jumper connections for Vin and Vout.

To assemble the board, you just use the components you require for the device you have chosen. C1 and C3 are on the input, while C2 and C4 are on the output. D1 protects the input from reverse polarity and LED1 is fed off of the output voltage (Choose R2s value to suit).

Here are all the files necessary for fabricating the Universal 78(X)XX Regulator Board v1.00:

  • Universal 78(X)XX Regulator Board v1.00 .SCH Eagle Schematic file
  • Universal 78(X)XX Regulator Board v1.00 .BRD Eagle Board file
  • Universal 78(X)XX Regulator Board v1.00 .ZIP Gerber file
  • Universal 78(X)XX Regulator Board v1.00 .PDF Schematic file
  • Universal 78(X)XX Regulator Board v1.00 .ZIP Archive (All Files)
Universal Regulator Board v1.00 Assembled

Universal Regulator Board v1.00 Assembled