Unlock the unlimited possibilities of robotics with Braccio! You can assemble your Braccio in a multitude of ways. Here are some examples:Arduino Braccio Joints

Because it is designed for versatility, the Braccio can also support various objects on the end of the arm.
For example, you can use Braccio:

  • with your camera to follow a subject,
  • by mounting your telephone or your tablet to follow you when you’re at a video conference,
  • with a solar panel to follow the sun.
Arduino Braccio Objects

The TinkerKit Braccio is sold as a kit and requires assembly before use.  A setup guide is  included in the box, or you can download it here.

After assembly, you can adjust the alignment of all the motors by running the sketch called “testBraccio90” in the Braccio examples.
The sketch will position the Braccio in the upright position shown below. If it isn’t in this position, you will need to realign the servos (see the setup guide for details on how to do this).

Arduino Braccio Vertical

NB: If you are using Arduino IDE 1.8.x you must first download the library of "Arduino Braccio”
Select Sketch -> Includes Library -> Manage Libraries ...
After search “Braccio” and then click on Install
For more information look this tutorial.

Download Braccio Quick Start Guidedownload arduino braccio start guide


Product Code


It is recommended to power the board via the jack connection with a regulated 5 VDC @ 5000 mA power supply provided in the box.

There is an on-board voltage regulator for higher voltages that protect the Braccio shield. NOTE: The protection doesn’t work for the Arduino Yun if you put the bridge between Vin and 5V on the Arm Robot Shield V1 (greater version of are called Braccio shield and has a power switch on the top of the shield)
Physical Characteristics
  • Plastic Parts x 21
  • Screws x 63
  • Flat Washer x 16
  • Hexagon Nut x 7
  • Springs x 2
  • Servo Motors: 2 x SR 311, 4 x SR 431
  • Arduino compatible Shield x 1 
  • Power Supply 5V, 5A x 1
  • Phillips Screwdriver x 1
  • Double Hexagon Box Wrench x 1
  • Spiral Cable Protection Wrap x 1

Fully assembled Braccio Kit: 


792 g

Maximum operating distance range

80 cm

Maximum Height 

52 cm

Base Width

14 cm

Gripper Width

90 mm

Cable length

40 cm

Load Capacity

Maximum weight at 32 cm operating distance: 150 g

  Maximum weight at the minimal Braccio configuration: 400g

Braccio Shield: The maximum length and width of the Braccio Shield PCB are 2.7 and 2.1 inches respectively, with the power jack extending beyond the former dimension. Four screw holes allow the board to be attached to a surface or case. Note that the distance between digital pins 7 and 8 is 160 mil (0.16"), not an even multiple of the 100 mil spacing of the other pins.
Servo Technical Specification
SpringRC SR431 - Dual Output Servo

Control Signal

PWM Analog


@ 4.8V: 169.5 oz-in (12.2 kg-cm)

@ 6.0V: 201.4 oz-in (14.5 kg-cm)


2.19 oz (62.0 g)


1.65×0.81×1.56 in (42.0×20.5×39.5 mm)


@ 4.8V: 0.20 sec/60°

@ 6.0V: 0.18 sec/60°

Rotation Support

Dual Bearings

Gear Material


Rotation Range


Connector Type

J (aka Futaba)

SpringRC SR311

Control Signal

PWM Analog


@ 4.8V: 43.13 oz-in (3.1 kg-cm)

@ 6.0V: 52.86 oz-in (3.8 kg-cm)


0.95 oz (27.0 g)


1.23×0.65×1.13 in (31.3×16.5×28.6 mm)


@ 4.8V: 0.14 sec/60°

@ 6.0V: 0.12 sec/60°

Rotation Support

Dual Bearings

Gear Material


Rotation Range


Connector Type

J (aka Futaba)

Schematic & Reference Design

Getting Started

The included Braccio shield allows you to hook up the servos directly to your Arduino board.

Braccio Shield V4

Braccio Shield V4 front

You can recognize the Braccio shield V4 by the power switch that is necessary to properly connect Arduino Yun, Tian and Primo: “VIN” position for Yun, Tian and Primo, “5V” for the other boards.
For a correct use of the Braccio shield V4 is necessary the IDE 1.7.11.
On the Braccio shield V4 a new feature is present: the “Soft-start”. This function is included in the Braccio.begin() function and starts the Braccio softly and safe to protect the servo motors for the first 8 seconds. The Soft-start works each time you call Braccio.begin(). During this phase the shield doesn’t give the maximum voltage level to the servo motors and you should not use the Braccio to lift any weight. If the Braccio hit something or is locked the resettable fuse on the Braccio shield could detach the power for the servo motor and is necessary to unplug and replug the power connector of the Braccio shield.
With the Braccio Shield V4 the digital 12 is not available if you are connecting the Braccio to the shield or if you are using M1, M2, M3, M4, M5, M6 connectors as digital.
Pin 12 is used to manage the voltage level of the Soft-start  (on the shield there’s a dot instead of “12”).

If you want to disable the Soft-start function:

pinMode(12, OUTPUT);    you need to set HIGH the pin 12
digitalWrite(12, HIGH);
Braccio.begin(SOFT_START_DISABLED); and set a proper parameter to disable the soft start

In this way you can normally use M1-M6 connectors as digital and you can use Braccio without the soft start.

The Soft start works better when a DC plug only is connected to the Braccio Shield, the Braccio is properly mounted like explained in the Quick Start Guide, all the servo motors are in use and the initial position of Braccio is the safe position.

Is possible to set a different regulation of the Soft-start putting a parameter on the Braccio.begin(int soft_start_level) function. The default value is SOFT_START_DEFAULT that is equal to 0, using the function Braccio.begin() without parameters the Soft-start level in fact is set to 0.
Possible level for softstart are between -70 to +100.
If your Braccio doesn’t move at the start-up or if the movement is not properly smooth you should set a value greater than 0 (eg: Braccio.begin(5);). If you want instead a start more softly you should set a value less than 0 (eg:Braccio.begin(-30);). Note that using a too little value (eg: Braccio.begin(-58);) your Braccio could not move for nothing.

Arm Robot Shield V1

Arduino Braccio Shield

Arm Robot Shield V1 is the old version.

Operating Voltage 


Power Consumption


Max current

1.1A from M1 to M4 connectors

750mA from M5 and M6 connectors

It has 12 standard TinkerKit 3-pin connectors. 

The connectors labeled M1 through M6 are connected to the PWM capable outputs of the Arduino board.  The connectors labeled I0 through I5 are analog inputs.

Each of the motor connections have a protection fuse:

  • M1 through M4 are limited to 1.1A
  • M5 and M6 are limited to 750mA
The connectors are connected to the following pins on the shield:

Connector Name

Shield pin














A0 (aka pin 14)


A1 (15)


A2 (16)


A3 (17)


A4 (18)


A5 (19)




RX0, TX0

The 4-pin TWI connector allows your Arduino board to communicate with devices that support the TWI (Two Wire Interface) or I2C (Inter-Integrated Circuit) protocol through the Wire library in Arduino.  Ground and 5 volt connections are provided on the connector.

NOTE:  On the Arduino UNO, the I2C bus uses Analog Input 4 and 5 (A4 and A5), whereas on the Arduino Mega the I2C connection is on pins 20 and 21. Using the TWI connector on the UNO (and similar) will preclude the use of those analog inputs (A4 and A5).

The 4-pin SERIAL connector allows the board to communicate with other devices that support serial communication. Ground and 5 volt connections are provided on the connector for your convenience.

NOTE: If you’re sending or receiving data to and from the computer this serial connector is not available.

The shield contains three status LEDs

  • Green LED (LED ON) signals that the shield is on
  • Another green LED (LED OK) signals that the shield is correctly powered
  • A red LED (LED ERR) signals that the shield is not correctly powered
A standard 6 mm pushbutton allows you to reset the board, and there is a jack for the external 5V 5000 mA power supply.

Compatible Boards:

  • Uno
  • Uno SMD
  • Uno WiFi
  • Due
  • Mega 2560
  • Ethernet
  • Leonardo
  • Leonardo ETH
  • M0
  • M0 Pro
  • Yun*
  • Tian*
  • Primo*
Using the Arduino UNO WiFi, Leonardo Ethernet, Yún or Tian, you can control your Braccio through the network with your PC or your smartphone. See the link below for a demonstration.

*Note for Tian or Yun.
Take care plugging the shield on Tian or Yun, do not push the shield deeply due to not create a short circuit between the M1 connector and the ethernet plug

*Note for the Arduino YÚN, Tian and Primo with Braccio Shield V4
to make its compatible with the shield, you must move the power switch to “VIN” position due to the fact that the Arduino Yun, Tian and Primo cannot be powered from the 5V pin.

*Note for the Arduino YÚN, Tian and Primo with Arm Robot Shield V1
to make it compatible with the shield, you must bridge the 5v pin to the Vin pin as shown below: 

Arduino Braccio Shield
To avoid an overheating of the Yun you need also to move the 5V pin outside the header as the picture below:



If you couldn’t find what you were looking for, please see our Forum Section