[C++] EV3 IR_Sensor in BrickPi+

I tried to use multi-ir sensor based on BrickPi sensor example, but ir sensor did not work.
I changed sensor_examples( EV3-IR Sensor proximity test.c) like below.


But only last thing(PORT_2) detected distance.
What can I do for using multi-ir sensor?

If you’re using BrickPi+, try using one sensor on port 1 or 2, and the other on port 3 or 4.

@vlvl5, can you tell us:

  1. What version of the BrickPi are you using?
  2. What version of software are you using?
  3. What version of the Raspberry Pi are you using?

version of brickpi is 2.8.2, raspberry pi is raspberry pi 2.

I also tried to use port1 and port3 but It didn’t work…

@vlvl5, the older BrickPi+ does not support two EV3 IR sensors unfortunately. The Firmware will not be able to support it. However, the new BrickPi3 will indeed support two EV3 sensors.

So I used 2 IR sensor at port1&port3 and It worked well.
But, in case of brickpi+, should I use only two IR sensors at the same time? Is any other way to use 3 or 4 IR sensors simultaneouly?

I don’t think there is; I think there’s a firmware issue with the BrickPi+ that prevents this.

My version of brickpi is 2.8.2 too. It would be a great idea to inform users the Firmware can’t support it. I spent many many hours working on it without knowing the problem is due to something I can’t handle. What about releasing the source code of the Firmware if you can’t update it ?

Sorry to hear of the frustration with this @watinejeanbaptiste. The firmware is indeed open source and available to test and work with here.

thanks for the quick reply JohnC!
I found on the forum the google doc https://docs.google.com/document/d/180y3U2ZIfKl5Si1HAJR_wifKu9PIb-vWkkRyi1P2iJc/edit# about flashing the MCU on the BrickPi.
And if I flash the hardware with the firmware 2.0 I would be able to use EV3 sensors on my Brick.
But if I have understood correctly the discussion the firmware 2.0 is incompatible with the BrickPi 2.8.2 so that the EV3 sensors will not work correctly, am I wrong ?