My Account

Wish List (0)

The PiBorg store is closed and we are unable to ship orders.
You will not be able to checkout any orders at this time.

Diablo Quick Start Guide

Written by in Diablo - Build on .

The Diablo motor controller is a dual channel 55A motor controller capable of powering large motors with power supplies up to 36V. In this guide, we'll go through how to:

Parts you will need

Getting to know your Diablo

The Diablo has several different ways of connecting it to our motors and Raspberry Pi. For this guide, we're only going to be using 2 of the 4 terminal blocks and one of the groups of pins. But first we should identify which way is up!

The Diablo has 4 terminal blocks on the front of the board along with the six pin I2C connectors and the five pin programming pins:

On the back there is a silkscreen which identifies terminal assignments:

For the rest of this tutorial we will refer to the front and back of the board in this way.

Connecting the Diablo to the Raspberry Pi

Firstly our Raspberry Pi needs to be connected to our Diablo. Between the two V+ and GND terminal blocks at the top of the front of the Diablo there are two six pin connectors. The six pin connector to the right of the single row of the five programming pins is our I2C and power pins which need to be connected to the Pi. We need to be careful to connect the right pins to the Pi, as we risk blowing up the Pi if we get this wrong.

Place your Pi at 90 degrees to your Diablo so pin 1 on your Pi is next to the top of the Diablo.

Using one of the I2C cables, connect the three pins on the right of the six pin block. The white cable should be next to the 1 on the silkscreen on the front. Then connect the other end of the I2C cable to pins 1, 3 and 5 on the Raspberry Pi, making sure that the white part of the cable is attached to pin 1 on the Pi.

Take one of the other I2C cables and connect the 3 pins to the left of the ones we've just connected, making sure the white cable is next to the existing white cable. Similarly connect this to the Raspberry Pi pins 2, 4 and 6 with the white cable connected to pin 2.

Connecting the Diablo to a power supply and motor

Using the 16AWG red and black wires, connect the power supply to the Diablo. The terminal at the top right on the front of the board is the main power terminal. Connect the red wire to V+ on the Diablo and the positive (in our case red) terminal on your power supply.

Then connect the black wire to the negative (in our case black) power supply terminal and GND on the Diablo.

The PiBorg motors come pre-soldered with the same 16AWG cables. Connect the red wire to the M1+ terminal on the Diablo and the red terminal on the power supply.

Similarly connect the black wire to the M1- terminal screw on the Diablo and the black terminal on the power supply.

At this point we can power up our Pi with 12V/3A of power from our supply. Take care to ensure all wiring is correct before powering up the Pi, and ensure you are wearing adequate eye protection and be ready to immediately turn off the power just in case there's a problem with the wiring or Pi!

When the Diablo is powered the small red LED at the bottom of the front of the board lights up.

How to enable I2C on the Raspberry Pi

Firstly we need to enable I2C on the Raspberry Pi so we can communicate with our Diablo board. We can either do this via the Desktop, or via a terminal.

Enabling I2C via the Desktop

Start off by opening the Raspberry Pi Configuration menu by clicking on the Raspberry in the top left, and then in the menu clicking "Preferences" then "Raspberry Pi Configuration".

Then click on the "Interfaces" tab, then click "Enabled" next to I2C.

Click OK, go to step "How to install the Diablo libraries and use the GUI example".

Enabling I2C via Raspi-Config

Open a terminal in your Desktop or use the command line when your Pi boots and type: sudo raspi-config When the menu pops up, use the down arrow to highlight "5 Interfacing Options" then press the enter key.

Use the down arrow key to go down to "P5 I2C" and press the enter key.

Press the left key to highlight "Yes" and press the enter key.

You should then see a dialog that confirms that the I2C interface is enabled. Press enter to return to the main menu.

Use the down arrow key to move to "Finish". Hit enter and exit the dialog.

How to install the Diablo libraries and use the GUI example

To install the Diablo drivers we need to obtain the code from our GitHub page or we can download using the clone command from a terminal. In a terminal window type:

git clone
cd diablo

This will add the Diablo Test GUI shortcut to the desktop. This GUI contains a slider which will in turn control the speed and direction of our motor.

Now restart your Raspberry Pi to ensure I2C is running. You can do this via the menu in the top left by clicking Shutdown and then Restart or by typing sudo reboot in a terminal.

Once the Pi has restarted, double click the icon on the Desktop to launch the GUI.

Once loaded the left hand slider can be moved up and down to control the motor connected to M1's speed and direction. Stop the motor by clicking the "All off" button at the bottom of the GUI.

At this point, your motor should be turning forwards when the slider goes up, and backwards when the slider goes down.

Last update: Oct 15, 2019

Related Article

Related Products


Leave a Comment

Leave a Reply

The product is currently Out-of-Stock. Enter your email address below and we will notify you as soon as the product is available.