Arduino Pro Mini board is widely used in embedded systems because this board only has the necessary onboard components with a small form factor and low power consumption. In this article, you will learn about Arduino Pro Mini board Schematics and the use of each and every component on this board.
The schematic of the Arduino Pro Mini is shown in the Figure given below. It is a fairly simple board with minimal onboard components. Go through the figure thoroughly because we will be explaining the working of every onboard component.
This is the schematic diagram of the Arduino Pro Mini board manufactured by Sparkfun. There are also other good manufacturers of Arduino Pro Mini boards and their schematics are almost the same. On the other hand, the schematics for low-cost Chinese clones are also very similar, with minor differences and I will discuss those differences at the end of this tutorial.
Now lets discuss each and every component on this board.
Voltage Regulator Circuit:
Arduino Pro Mini has an onboard 3.3 or 5 volts voltage regulator depending on the board type. The 3.3-volt regulator converts 4-12 volts input into 3.3 volts output and the 5-volt regulator converts 6-12 volts into 5 volts output. The voltage regulator circuit is handy if you want to drive your Arduino Pro Mini from an unregulated voltage source. The voltage regulator circuit is shown in the Figure given below.
The input to the voltage regulator is labeled as Raw (as shown in the schematics on the right) and is accessible through the RAW Pin on the Arduino Pro Mini board (as shown in the top right corner in the Figure above). Here is the link to the complete pinout diagram of Arduino Pro Mini. This Pin is used to power Arduino Pro Mini with an unregulated voltage source. This input voltage is then converted into 3.3 or 5 volts depending on the board type.
C19 is the 10uF smoothing capacitor that is connected to the raw input of the voltage regulator. This capacitor removes small voltage ripples and fluctuations at the input of the voltage regulator and makes it more stable.
Therefore, if your voltage source has small high-frequency voltage variations then these fluctuations will be removed by the C19 capacitor.
Arduino Pro Mini boards use linear voltage regulators because these regulators very cheap but they are also very inefficient. A linear regulator regulates the output voltage by changing its resistance according to the input voltage and the applied load. To make it more simple consider a linear regulator as a voltage divider where the regulator internal resistance is continuously changed with respect to the load inorder to maintain a steady voltage of 5 V or 3.3 volts at the output.
For Example: if the voltage at the raw input is increased the resistance of the regulator increases accordingly to maintain 5 Volts at the output of the voltage regulator. Similarly, if the load resistance is decreased (in other words, the load drawn by the board is increased by maybe interfacing a sensor with Arduino), then the resistance of the regulator will decrease to maintain a constant voltage drop at the output.
You might be thinking how much power will be wasted by the regulator ?
Well, you can calculate the amount of power dissipated by the regulator if you know the output current from the regulator (Iout). You can calculate this power using the formlua.
Power Dissipated = (Vraw – Vout)*Iout
The atmega328p generally consumes around 20mA of current and if you are using a 9-volt battery to power the board then the voltage regulator is wasting 60mWatts of power in the form of heat.
Power Dissipated = (9 – 5)*20mA = 60 mWatts
Following are the common voltage regulator that can be found on Arduino Pro Mini
- Voltage regulators:
- Voltage regulators:
- Voltage regulators:
- Voltage regulators:
The Sparkfun board uses a MIC5205 regulator which should accept input voltage up to 16 volts. However, I will not recommend applying more than 12 volts at the RAW pin or Arduino Pro Mini, because incase of cheap Chinese boards the smoothing capacitors at the input are usually rated up to 12 volts, and applying voltage above 12 volts will burn and short the capacitor.
For powering 3.3 volts Arduino pro mini 4.5 – 6 volts is a sweet spot and for 5 volts Arduino 6 – 7.5 volts is a nice choice. This is because the voltage drop across the regulator will be small and less power will be dissipated by the regulator.
R11 and Led1:
LED1 is just used to indicate that the Arduino is being powered and the 10KOhm resistor R11 (O1C) is used to limit the current through the Led. Generally, SMD LEDs have a 1.8-3.3 voltage drop which means it will typically consume 0.17mA-0.32mA current for a 5-volt board.
(5-1.8)/10000 – (5-3.3)/10000 = 0.32mA – 0.17mA
I have a Chinese clone and the Power Led has a 1KOhm resistor so the current should be 3.2mA-1.7mA in my case.
Soldering Jumper (SJ1):
Arduino Pro Mini from Sparkfun provides this solder jumper to provide you the flexibility to connect or disconnect the onboard voltage regulator and the power LED from the Vcc line.
This is very handy because if you want to power Arduino Pro Mini directly from a 3.3-volt or 5-volt external source you can easily do it by desoldering the jumper connection. This will cut off the supply to the onboard voltage regulator and power led and it helps to save power from dissipating in the regulator and the power led.
SJ1 is on the top of the board next to the
RST pins. To isolate the regulator from
VCC, remove the solder blob on the top of the board with a sucker or solder wick.
The cheap Chinese Arduino Pro Mini boards doest provide this jumper. So, you will have to desolder the onboard voltage regulator if you want to save power.
You can still power the Arduino directly from Vcc with the voltage regulator output still connected to the Vcc line. It will not impact the performance of your microcontroller but you will waste a few milliamps of current.
Decoupling Capacitors (C13 , C10, C3):
Decoupling capacitors are used to suppress high-frequency noise from the voltage signal. They suppress tiny voltage variations, which could otherwise be harmful to delicate ICs.
It acts as a very small, local power supply for IC’s to replenish the temporary voltage spike at the Vcc input of the IC. This is actually pretty common, especially when the circuit it’s powering is constantly switching its load requirements. Decoupling capacitors can briefly supply power at the correct voltage and should be connected very close to the IC. This is why these capacitors are also called bypass caps because they can temporarily act as a power source, bypassing the power supply.
Decoupling capacitor’s main purpose is not to get rid of the power supply’s ripple, but to catch glitches. An IC may need much extra current for a short time, for instance when thousands of transistors switch at the same time. The inductance of the PCB’s traces may prevent fast delivery of current to the IC. So decoupling capacitors are used as local energy buffers to overcome this.
You can use two or more different-valued, even different types of capacitors to bypass the power supply because some capacitor values will be better than others at filtering out certain frequencies of noise.
Now, Let’s discuss the decoupling capacitors used in Arduino Pro Mini. The capacitor C13 is a 10uF tantalum electrolyte capacitor whereas the Capacitor C10 and C3 is a 0.1uF ceramic capacitor. The ceramic capacitor is mounted very close to the Vcc pin whereas the tantalum electrolytic capacitor is a bit far from the atmega328p chip.
This is because the 0.1uF ceramic capacitor is very effective in bypassing high-frequency spikes that arise due to the fast switching of the atmega328p. Therefore it should be as close to the IC as possible for the availability of steady voltage. On the other hand, the 10uF tantalum electrolytic capacitor is effective in removing the comparatively big dips and variations.
Auto Reset Circuit:
If a logic low voltage is applied at the reset pin of atmega328 for a minimum pulse width the microcontroller will reset. The voltage on this pin should be converted back to Vcc (5V or 3.3V depending on the board type) so that the atmega328 can start executing the bootloader program.
The Minimum pulse width on RESET Pin is mentioned to be 2.5us on the datasheet. So the reset pin should be turned low for at least 2.5us in order to confirm that the microcontroller goes into the reset state.
The reset Circuit is shown in the Figure given below.
The bootloader program will detect if we are trying to upload a new program onto the atmega328p and it will upload a new sketch onto the microcontroller. Otherwise, it will start executing the program that is stored in the flash memory.
Now let’s discuss, How this auto-reset circuit works.
The DTR pin is used by the FTDI programmer for programming atmega328p using the UART module. This pin is turned low by the FTDI programmer to upload a new program and keeps this pin In low state while the program is uplaoding.
The pullup resistor R2 keeps the RESET pin at a logic high level and there is no charge stored in the capacitor so the voltage drop across the capacitor is 0. When the FTDI programmer applies logic low at the DTR pin the voltage a the RESET pin becomes 0 which resets atmega328p. The voltage gradually starts increasing at the RESET pin as the capacitor charge and the microcontroller goes into bootloader mode to upload a new sketch on the board.
The Arduino Pro Mini board comes with an onboard oscillator which can be an 8MHz or 16MHz oscillator depending on the Arduino Pro mini-board voltage. The majority of the pro mini board has an onboard ceramic oscillator and there are few Arduino pro mini boards with a crystal oscillator.
Ceramic resonators are constructed from high stability piezoelectric ceramics. Featuring built-in load capacitance, these SMD ceramic resonators eliminate the need for external load capacitors. With a low profile and small package size, these ceramic resonators offer an economic use of space and the opportunity for high-density mounting.
In the case of a ceramic capacitor, you will just have to connect the oscillator directly with the pins without worrying about external capacitors as we do in the case of crystal oscillators. The following figure is helpful in illustrating this idea.
Following are the oscillators that can be found on Arduino Pro Mini
- 3.3V Board:
- 5V Board:
I2C Pullup Resistors:
This schematic diagram shown below is of the Arduino Pro Mini board from Sparkfun and they provide optional pullup resistor pads for the I2C module that are provided at the back of the Arduino Pro Mini board.
You will have to solder SMD resistors by yourself if you wish to have the pullup resistors onboard. The cheap Chinese Arduino Pro Mini board doesn’t have any onboard pull-up resistors or pads for the I2C communication module. In that case, you will have to connect the pullup resistor externally.
Led at SCK:
There is a built-in led connected to pin 13 (SCK) of the Arduino Pro Mini board. This is the SCLK pin (Atmega328 pin 17) for the SPI module. It will blink when your Arduino pro mini is communicating using the SPI protocol. I will also blink when you are uploading a sketch onto the Arduino pro mini when it is connected to an SPI programmer.
It is Pin13 of the Arduino Pro Mini board and the famous and basic led blink sketch (Program) uses this pin and it blinks this onboard Led.
C1 at AREF Pin:
AREF is the analog reference pin and we will discuss it in the upcoming tutorials. The capacitor C1 is there to reduce noise on the AREF pin.
Arduino Pro Mini Clones:
I have a Chinese clone of Arduino Pro Mini and it has an onboard diode. The input of the diode is connected to the RAW pin and the output is connected to the input of the voltage regulator.
This is for reverse protection and it is used to protect your Arduino board from reverse voltage. In absence of this diode, the input tantalum capacitor will become short if a reverse voltage is applied and It will probably short the voltage source.
Almost all of the clones have similar schematics and they are equally capable and it use them all the time.
I hope you learned a lot from this tutorial. Keep in touch because I will share more interesting and informative tutorials.