It’s been very long, I am making circuits on PCB and breadboard. But while testing the circuits on breadboard the main problem is to make the connections and supply it with a logic power. Digital circuits can be easily made but on the other hand breadboard connections may introduce some noise and clock errors if connections are large and not proper.

To solve this problem, I made a universal circuit by combining some peripherals, a microcontroller and power supply section. Now with this board we can easily test our circuits on breadboard and the connections like led indicator, buzzer, LED and microcontroller on this PCB will help to reduce the overall wires. NextPcb offer their services in PCB, PCBA, SMT assembly, Stencil, Component sourcing and BOM preparation. Order high-quality, reliable PCB starting at $1.9, multilayer starting at $6. Enjoy free PCB assembly for 5 boards.


The choice of microcontroller is very obvious because I want to keep it simple so that no external programmer is required in programming. I choose Arduino Nano, having a small form factor and a lot of I/O pins and it is very easy to program because of dedicated Arduino IDE.

This Arduino is a clone version of the original that I made in my lab. Most of the clone boards have problems in uploading code so I choose to make my own with a dedicated programming chip (USB to TTL on back) and this one has type C USB. Here are the build instructions and link to the tutorial.

Circuit Diagram:

The circuit is very simple because we are using an OLED so I2C port of Arduino is required for this purpose, I2C is an interfacing protocol with support of 127 I2C devices, Address of devices should not be the same. Then two digital pins are reserved for on board Led D8 and buzzer D7. Power supply section has a 12v barrel jack, filtering capacitors and a diode to save the circuit from reverse voltage.

12V is converted into 5 volts by Arduino 5v linear voltage regulator, which supplies the power to the whole of the unit. I chose this because Arduino's AMS1117 5v regulator has a max current rating of 1 Ampere which is enough for peripherals. But there is always an option to connect external 5v for heavy loads. Headers are available for connection with microcontroller, and power supply ports for connecting different sensors and devices.

PCB Design:

The PCB is made accordingly to utilize all the available functions, Because of the standard I2C port on the right side, any sensor or display can be plugged directly which works on the same interface and has pin compatibility. On board led used as an indicator, I separate out the PCB led from D13 pin led, which is available on the Arduino main board to increase the functionality. The power headers are available at lower side of the board, VCC, 5V and common ground to connect different sensors and devices. Download the PCB files from here.

NextPCB is a China based PCB manufacturer having 15 years of experience in this field. NextPCB provides the PCB and assembly technologies with the highest quality standards, and the lowest manufacturer direct prices.


Here are a few testing examples to know if everything soldered is working properly. If there is any dry solder joint remaining then the display may show some jittering and noise. Same with the digital pins of the Arduino.

To see the Gerber files try HQDFM free online PCB Gerber viewer. Which may help you get an idea about the PCB specs, orientation and components requirement.

Example 1: Testing the screen

Here is an example from Adafruit which shows some animations using the Adafruit OLed library. These animations are fast and If there is any misconnection or dry solder joint it may create some noise in the screen operation.

Sample code:

#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 32 // OLED display...
Read more »