Power Shield (SKU:DFR0105)

From DFRobot Electronic Product Wiki and Tutorial: Arduino and Robot Wiki-DFRobot.com
Power Shield (Arduino Compatible)


Many Arduino projects may need more than two voltage supplies. When fed with 4.5-35V, this power shield is able to provide a voltage range from 1.25-12V with 3A peak current. Ideal for servo control and other non-standard components. With this shield, your Arduino can now have one power supply for everything.

The power shield has a built-in voltage measuring function which maps the output voltage to Arduino analog pin 0. It can be controlled by Arduino digital Pin 13 to switch on/off.


  • Supply voltage:4.5-35V
  • Output voltage:1.25-12V
  • Output current: 2A (3A peak)
  • Efficiency:90%


DFR0105 Pinout diagram NEW.png



There are two methods of operation with this shield, you can:

  1. Use this shield to regulate external power supply to provide the proper voltage to your Arduino
  2. Directly level it for servo/modules high power devices

Warning yellow.png

Note for the jumpers near to the Power Input socket:

  • Both jumpers are on left side: This method will only provide regulated power to the PWROUT. i.e. There is no voltage on Vin which is connected with Arduino .
  • Top jumper is on left side, bottom jumper is on right. This will provide regulated PWROUT, adjusted via the blue potentiometer next to the PWROUT connector. Arduino Vin power will be connected to the external power supply.

Stack up more power shield to add up different power level outputs. If your Power supply is incompatible with your device and you need to provide power for other devices as well. Adding another power shield will let you regulate a secondary voltage level as well.

Sample Code

This sample code needs an I2C LCD module to display the voltage.

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x27 for a 16 chars and 2 line display

void setup() 
  lcd.setCursor(0, 0);
  lcd.setCursor(0, 1); 
  lcd.print("Voltage: "); 
  lcd.setCursor(13, 1); 
void loop() 
      int val;
      float temp;
      lcd.setCursor(9, 1); 

NOTE: If you have a multimeter, you can easily read the output voltage through output terminal without the LCD and LCD displaying code. In other words, voltage regulation is independent. Consider it as a normal shield with function of voltage regulation.


LCD will display the output voltage from the Power shield.

Trouble shooting

For any questions and more cool ideas to share, please visit DFRobot Forum


Libary installation

DFshopping car1.png Get it from Power Shield (Arduino Compatible) or DFRobot Distributor.