Infrared thermal sensor causing ev3 motor disable

So I have a big problem where by the ev3 infrared thermal sensor is causing the ev3 motors to disable, I’m assuming because it is sucking too much power or there is an I2c conflict going on.

Has anyone had this problem or can anyone suggest a solution. Currently, all I can think of is to buy a 12v 3amp rechargable battery. But I’ve already spent a few hundred dollars on 9.6 volt rechargable batteries that comes with the brick pi classroom set.


Since you have not posted the whole program that exhibits the problem, We can only suggest wild ideas for debugging, and ask you to explain better the exact order and steps you are executing before the problem occurs in a single post, with which OS version, which Raspberry Pi board, which Grove Pi, and include the troubleshooting log.

Have you tried putting in print statements before every operation like “port setup for sensor”, port setup for motors”, take single reading from sensor”, “reading value”,”turning on only left motor at xx power for y seconds”, turning on both motors for y seconds”?

Have you tried changing the order around every which way and performing every operation multiple times before trying the next operation?

Can you post a picture or diagram of your setup and each connection.?

Did you submit an official support request to

I think as an educator, you can even talk to them on the phone

  • Customer Support: (720) 275-6025
  • Other Inquiries: (303) 656-9407

Hi cyclical,

Im using BrickPi 3 with Raspberry PI 3 with Raspbian for Robots and the 9.6V Rechargable Battery (BrickPi Classroom Set) . Is there a trouble shooting log I can access?

I know for a fact that the line of code:
bp.set_sensor_type(BP.PORT_1, BP.SENSOR_TYPE.I2C, [0, 20])
is causing the Motors to disable because when the line is commented out, everything works.

Also I have printed out the motor status before and after this line, and they are definitely enabled and then disabled after.

I cant give the whole code as it is a school project and my students might find the coded solution, but when trimmed down to its lowest form, the config statement for the Infrared Thermal Sensor is definitely the problem - although I suspect the sensor must take too much power.

Can you give a link to the sensor?

What returns from the command with and without the thermal sensor connected?

i2cdetect -y 1 

Hmm, I dont see anything using that command, when I run it in the Shell, I just get a whole lot of zeros.

I have now run a few more tests.

  • The Thermal Infrared sensor will run even when only the USB power in the RPi is on.
  • When the USB power and the Battery power are both in use (which should have given a voltage boost) the same problem occurs.
  • The motors will be disabled as soon as Config Senors is called but will be temporarily re-enabled every time a Transact I2c command is called…

My next test is to see what happens when I boost the amperage to 3 amps.

Did you try driving only one motor at a time - first one, then the other?
Did you try configuring only one motor and driving one at a time?

There should be a troubleshooting icon on the desktop

Run that and it will put a log on the desktop. You can post that log or send to support for them to check it (I don’t actually know what to look for as I don’t know anything about the BrickPi actually.)

Did the i2cdetect -y 1 command look anything like:

pi@Carl:~/Carl $ i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- 08 -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- 2a -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --      

(That is from a GoPiGo3 with ToF Distance Sensor which has i2c address 2A, not a brickpi.)