Naja, codemässig verwend ich als Grundlage die C-Lib von P.Fleury; Stecker ist die RN-Definition.
Fragentechnisch gehts aber um 2 verschiedene "Probleme".

Zum Trennen: Die Idee mit den 5V/12V ist garnicht so schlecht, wird sich wohl auch draus rauslaufen.
Ein Timeout klappt hier ja nicht, da ich ja nicht weiss, ob seit z.B. 1 Stunde das Kabel abgezogen ist oder ob einfach nur 1 Stunde lang nix gesendet wurde.

Zum "Abschalten":
Der "Chip Select" soll nicht über den I2C-Bus, sondern über freie Pins des Masters geschehen, also mehr oder weniger unabhängig davon.

Beispiel: Bei den 24STxx I2C-EEPROMs lässt sich die Adresse ja mit 3 Bit einstellen, d.h. ich kann vom gleichen Typ nur max. 8 haben.
Ich pack jetzt jeweils 8 von denen auf ne Steck-Platine.
Jede Platine soll dann über eine der "CS"-Leitungen anwählbar sein.
Und da stell ich mir eben soetwas vor, wie die Clock-Leitung nur für die jeweils gewählte Platine durchzulassen; für die anderen wird diese getrennt.
Beim Trennen der Stromversorgung hab ich halt die Vermutung, dass die nicht versorgten Slaves den Bus stören.
Ein Relais, das einfach SCL/SDA/+5V wegschaltet, wäre zwar wohl die einfachste Möglichkeit, aber rein schaltungstechnisch sollte die Energie eines Controllerpins zum Schalten reichen, d.h. Relais wird nichts.