EasyTransferI2C with 3 Arduinos - trouble w/ Master Tx & Rx

void receiveEvent(int numBytes) {  Serial.println(".receive.");
}

This is called in interrupt context, you cannot put something out to the serial interface (the serial interface uses interrupts too which are blocked during the interrupt handler).

    SlaveIn.begin(details(Srxdata), &Wire);    // start ET library, pass data details and serial port.
    delay(100);
    SlaveOut.begin(details(Stxdata), &Wire);
    delay(100);
    
    BatManIn.begin(details(BMrxdata), &Wire);    // start ET library, pass data details and serial port.
    delay(100);
    BatManOut.begin(details(BMtxdata), &Wire);
    delay(100);

The I2C bus is not a full duplex bus as the standard (USART) serial interface is. The communication is always controlled by the bus master. Although theoretically there can be multiple bus masters this feature is not supported by the Wire library and you shouldn't use it anyway under normal circumstances.

The bus master initiates a communication by addressing the slave, tell it if it's a read or write request and then supplying the clock signal for both the read (data line is handled by the slave) and write (data line is handled by the master) transfers. So if you wanna receive something from the slave on the master, the master has to poll the slave periodically. And such transfers usually are following this scheme: the master writes the register address to the slave and initiates a read transfer from it. The slave sends the contents of the addressed register and any following if the master is still reading.

The slave is not able to initiate a transfer, it always has to wait for the master to initiate a transfer in either direction.

Why do you have the delays in here? They are completely unnecessary.