Skip to the content
2 layers188 × 106.7 mmPower Supply Rev01, the printed circuit board in 3D

Power supply created during ELE3000 - Personal project at Polytechnique Montreal (2017). The voltage is controlled by a PWM signal generated by a EFM8 Silicon Labs microcontroller.

Size
188 × 106.7 mm
Copper layers
2
Thickness
1.6 mm
Parts
113
Nets
53
Pads
296
Tracks, vias
662, 71
Pours
2
Routed
Yes
KiCad
KiCad 4
Created
14 Jul 2020
Updated
14 Jul 2020

Overview

Power Supply Rev01 is an open-source printed circuit board by Alex-Riviello, from the Alex-Riviello/power_supply_mk1 repository on GitHub. It is a 2-layer board of 188 × 106.7 mm with 113 parts on 53 nets, routed with 662 tracks and 71 vias.

It is built around the EFM8BB10F8G-A-SOIC16R, OPA241PA and 6A1-T, with the FOD817BS among its other parts. Its parts include 41 resistors, 32 capacitors, 12 ICs, 10 diodes and 8 connectors. It belongs with the power boards and the Silicon Labs (EFR32, EFM) boards of this library.

Main components

4

README

README.md

power_supply_mk1

Description

Power supply created during ELE3000 - Personal project at Polytechnique Montreal (2017).
The voltage is controlled by a PWM signal generated by a EFM8 Silicon Labs microcontroller. The signal is filtered and injected into the adjust pin of a LM337 and LM317 to generate a variable positive and negative voltage (got the idea from the EEVBlog#221 https://www.youtube.com/watch?v=CIGjActDeoM&t=860s).

To communicate with the microcontroller, I used an Aardvark (USB to I2C Host Adapter). The voltage was set and the current was measured in real-time. Everything was displayed on a GUI made with PyQt.

Project Details

TODO: Translate to english.

Circuit Design

The PCB was designed using KiCAD. The KiCAD project can be found in the ./kicad_psu_mk1 directory.
NOTE: This was one of my first PCB designs. I tried using many through-hole components to test them on a breadboard.

Schematic

PCB

Rectifier Bridge

A simple diode bridge was used to rectify the voltage coming out of the transformer.

Microcontroller

The EFM8BB1 microcontroller was used for this project. I chose this MCU since I had a couple laying around. A laptop communicates with the chip via I2C (and a USB to I2C adapter). I2C was used since it's a simple protocol that be used with a Raspberry Pi. The MCU also sends a PWM signal to the voltage regulators to modulate the output voltage. 2 ADCs are used to measure the voltage drop across a very small resistor to detect the current flowing through the outputs.

Positive voltage control

The voltage is controlled with a PWM signal which is filtered and amplified. An LM317 is used for the positive voltage and a LM337 is used for the negative voltage.

GUI

The python GUI used is illustrated below. The voltage could be set and read in real-time. The code can be found in ./python_code. However, the hc file is not included (Aardvark interface), PyQt4 is no longer supported and the code runs in Python2.

Final Result

Overall, the PSU could provide upto 1.5 A of current at +/-2V to +/- 12.5V. The final circuit looked like this:

Parts

113
QtyValueFootprintReferences
170.1uCapacitors_SMD:C_0805_HandSolderingC5, C11, C12, C14, C15, C17, C18, C21, C23, C24, C25, C26, C27, C28, C29, C30 +1
810kResistors_SMD:R_1206_HandSolderingR13, R15, R19, R23, R25, R26, R28, R30
81uCapacitors_Tantalum_SMD:CP_Tantalum_Case-A_EIA-3216-18_HandC3, C4, C9, C10, C16, C19, C20, C22
6CONN_01X01Wire_Pads:SolderWirePad_single_SMD_5x10mmJ1, J2, J3, J6, J7, J8
4100Resistors_SMD:R_1206_HandSolderingR33, R35, R36, R40
4570Resistors_SMD:R_1206_HandSolderingR7, R10, R12, R22
46A1-TDiodes_THT:D_P600_R-6_P20.00mm_HorizontalD1, D2, D3, D4
4LEDLEDs:LED_0805_HandSolderingD5, D6, D7, D8
3OPA241OPA241:DIL08IC1, IC2, IC3
20.02Resistors_SMD:R_1206_HandSolderingR34, R38
20.33uCapacitors_SMD:C_0805_HandSolderingC1, C2
21.1kResistors_SMD:R_1206_HandSolderingR1, R2
210MResistors_SMD:R_1206_HandSolderingR18, R29
210mCapacitors_THT:CP_Radial_D22.0mm_P10.00mm_SnapInC6, C7
210nCapacitors_SMD:C_0805_HandSolderingC31, C32
2120Resistors_SMD:R_1206_HandSolderingR4, R5
2180Resistors_SMD:R_1206_HandSolderingR16, R27
21N4002Diodes_THT:D_DO-41_SOD81_P7.62mm_HorizontalD9, D11
21kResistors_SMD:R_1206_HandSolderingR6, R14
22.7kResistors_SMD:R_1206_HandSolderingR9, R21
2240Resistors_SMD:R_2512_HandSolderingR32, R39
226kResistors_SMD:R_1206_HandSolderingR20, R31
22N7002TO_SOT_Packages_SMD:SOT-23Q3, Q5
22kResistors_SMD:R_1206_HandSolderingR8, R11
25kResistors_SMD:R_1206_HandSolderingR37, R41
270Resistors_SMD:R_1206_HandSolderingR17, R24
2CONN_02X05Pin_Headers:Pin_Header_Straight_2x05_Pitch2.54mmJ4, J5
2FOD817BSFOD817BS:SOIC254P1016X385-4NQ2, Q6
2LT6105Housings_SSOP:MSOP-8_3x3mm_Pitch0.65mmU8, U9
11uCapacitors_SMD:C_0805_HandSolderingC13
12N39042N3904:TO92Q1
12N39062N3906:TO92DQ4
1620Resistors_SMD:R_1206_HandSolderingR3
1EFM8BB10F8G-A-SOIC16EFM8BB10F8G-A-SOIC16:SOIC127P600X175-16NU5
1LM317_SMTSOT230P700X180-4N:SOT230P700X180-4NU3
1LM317_T0220-3TO_SOT_Packages_THT:TO-220-3_HorizontalU7
1LM337_SMTSOT230P700X180-4N:SOT230P700X180-4NU4
1LM337_T0220-3TO_SOT_Packages_THT:TO-220-3_HorizontalU6
1uA78M05_5V_RegSOT230P700X180-4N:SOT230P700X180-4NU2
1uA78M33_3.3V_RegSOT230P700X180-4N:SOT230P700X180-4NU1

The 109 most common of 113 parts.

Similar boards

  • 2 layers47.6 × 48.2 mmSPIvSPI SAO Black, the printed circuit board in 3D

    SPIvSPI SAO Black

    SPIvSPI/dc27sao

    Blackhat spy & Whitehat spy SAO from Def Con 27

    38 parts4MIT
  • 2 layers30 × 8.5 mmQAM RX10, the printed circuit board in 3D

    QAM RX10

    neoxelox/diana

    Diana Dot project.

    11 parts3GPL-3.0
  • 2 layers122.5 × 87.6 mmControllerCircuit, the printed circuit board in 3D

    ControllerCircuit

    stuartpittaway/diyBMSv4

    Version 4 of the diyBMS

    113 parts1.1k
  • 2 layers243.2 × 106 mm3W6, the printed circuit board in 3D

    3W6

    weteor/3W6

    a small compact 3x5+3 split ortho keyboard

    113 parts488
  • 2 layers294 × 100 mmChu main, the printed circuit board in 3D

    Chu main

    whowechina/chu_pico

    Pico controller for Chunithm-type rhythm game

    113 parts196
  • 2 layers81.1 × 128.5 mmMultimult, the printed circuit board in 3D

    Multimult

    tpcarlson/synth-diy

    Mostly Eurorack projects

    113 parts107
  • 2 layers247.1 × 121.4 mmChoctopus44, the printed circuit board in 3D

    Choctopus44

    SlightHeadache/choctopus44

    Choctopus44 is a custom low profile keyboard

    113 parts99

Questions

How big is the Power Supply Rev01 PCB?

It measures 188 × 106.7 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Power Supply Rev01 use?

113 parts, built around the EFM8BB10F8G-A-SOIC16R, OPA241PA, 6A1-T and FOD817BS. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Power Supply Rev01 KiCad files?

From the Alex-Riviello/power_supply_mk1 repository on GitHub, at the commit this page was made from: the board is kicad_psu_mk1/Power_Supply_Rev01.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Power Supply Rev01 design in my own project?

Its repository states no licence, so its author keeps all rights: ask Alex-Riviello before reusing the design.