AnsweredAssumed Answered

I2C Multimaster

Question asked by Peter Morrow on Jan 12, 2018
Latest reply on Mar 19, 2018 by Dan Hepler



We have a "distributed" system in place where we have a single I2C master (STM32F7) and a number of I2C slaves (STM32F0).  I understand that I2C multimaster is supported, where you have a number of masters speaking to a number of slaves.  What I'd like to understand is it is possible to run an I2C bus on any microcontroller (F0 or F7) in master AND slave mode.  Ideally we'd have another bus but we don't have that luxury unfortunately.  The scenario is we'd like to send messages over I2C from F7 (master) to F0 (slave), but we'd like like to also initiate messages from the F0 back to the F7.


Could someone shed some light on whether this is possible without disabling and re-enabling the I2C peripheral on the fly?  Effectively we want I2C masters to be able to listen for async messages received from other MCUs.