another dumb n00b i2c question: multiple Wire.begin calls?

I am using several i2c libraries from various brilliant people who have solved my problems for me :-)

each of these libs presumably does a Wire.begin, somewhere in its depths.

so my question is this: if Wire.begin has already been called, what happens when it is called again?

does the 2nd call erase and overwrite the first?

in other words -- suppose I want to venture into the exciting new world of multi-master i2c, I need to do a Wire.begin(address) call; if I then later in setup invoke, say, the Adafruit LCD matrix I2c backpack library, I'm guessing that it does a Wire.begin() (bus master init). Would this override my earlier Wire.begin(address)? Or do subsequent Wire.begin's safely "do nothing if already connected"?

if Wire.begin has already been called, what happens when it is called again?

The I2C hardware is initialized again. As the registers are set to the same value as in the Wire.begin() call before nothing happens. It get's problematic if you call Wire.begin() during a running I2C transfer because the states are reset and the hardware is set to and idle state. But usually you call all the Wire.begin() stuff in the setup routine so there's no risk that another transfer is happening at the same time.

suppose I want to venture into the exciting new world of multi-master i2c, I need to do a Wire.begin(address) call;

That doesn't work as the Wire library doesn't support multi-master I2C.

if I then later in setup invoke, say, the Adafruit LCD matrix I2c backpack library, I'm guessing that it does a Wire.begin() (bus master init). Would this override my earlier Wire.begin(address)?

No, it wouldn't, but you cannot be master and slave on the same bus. Although such a setup may work for some time it has an inherent race condition that is not handled in the software and may freeze your Arduino any time.

Thanks Pylon, my reading had been leading me in that direction ("multi master" is flaky and unstable). My project works fine with one ringmaster duino, so I'll play it safe.