We are using Raspberry Pi 2 single board computers for test automation (they run our feature test against an actual DUT). Our Device Under Test (DUT) uses I2C multi-master mode to communicate with its peripherals. We would like to use the I2C bus on the Raspberry Pi 2 to interface with the I2C bus on the DUT, however it must support multi-master communication in order for it to be useful.

Can anyone confirm if the I2C bus on the Raspberry Pi supports a multi-master configuration?


I'm fairly sure the Raspberry Pi does NOT support I2C multi-master mode.

There is no mention of muli-master in the documentation.

The Broadcom Serial Controller (BSC) controller is a master, fast-mode (400Kb/s) BSC controller. The Broadcom Serial Control bus is a proprietary bus compliant with the Philips® I2C bus/interface version 2.1 January 2000.

• I2C single master only operation (supports clock stretching wait states)

• Both 7-bit and 10-bit addressing is supported.

• Timing completely software controllable via registers

Page 28 BCM2835 ARM Peripherals

  • Thanks for the information. Am I correct that the newer BCM2836 (RPi2) and BCM2837 (RPi3) have not changed in this aspect? Apr 21 '16 at 13:56
  • The Broadcom "peripherals" are identical on all current Pi models. So no change for Pi Zero, Pi2B, Pi3B, compute module, etc.
    – joan
    Apr 21 '16 at 14:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.