EV3 and BrickPi


Question: Is the BrickPi compatible with EV3?
Answer: Yes, but not the sensors.

The BrickPi will work with EV3 Motors, and EV3 plastic (the plastic pins and parts that come with EV3). We’ve got a demo video posted here: http://www.youtube.com/watch?v=eXiVkT4Cv3Y

The BrickPi won’t work with EV3 Sensors, they’ve got a special protocol that has two challenges:

  • It’s serial, so hacking it out would require some serious mods to the firmware (that might not be possible)
  • We haven’t hacked it yet.

If there are any brave hackers who are interested in trying to attack this, please let us know!

This has been such a popular question, we’re making it sticky.


A much more robust conversation on this subject is going on here:

If there are any brave hackers who are interested in trying to attack this, please let us know!

OK hacked it in three days, now are you interested in adding support for it?


We have a beta out (it’s still super rough) here: https://github.com/DexterInd/BrickPi/tree/master/Firmware_BrickPi/Firmware_2.0

This is the firmware, which needs to be uploaded to the BrickPi.

We’ll be working on Python and testing for the next few days. But there are some example programs (again really rough) in C: https://github.com/DexterInd/BrickPi_C



I am about to make a big burchase of BrickPi Starter Bundles, and was wondering what type of motors to get with the kits.
Is there a list of pros and cons using NXT Vs EV3 with BrickPi?

Also - Is the BrickPi fully compatible with all functions of the new Mindstorms Motors?

  • Controlling speed & direction
  • Reading encoder values



Hey Raz,

All three of these motors should work. The only thing I dont’ know is if the servo motors encoders will work; the other two operate normally and should be fine with the BrickPi.




I’m wondering, how can I send my EV3 motors the command to let them turn a number of steps (or alternatively an angle) with Scratch?

With the example files I until found out how to let them rotate with a certain speed.



Felix, so far the Scratch example is not setup to do this. You can control the speed and timing, but not the number of degrees turned.