Normalerweise ist die einfachste und am häufigsten angebotene Lösung die mit den Mosfets um eine Pegelanppassung zwischen den 3,3V des Rasperry und einer 5V Aussenhardware zu erreichen.
Prinzipiell funktioniert das auch, ist aber bei höheren Busfrequenzen zu kapazitiv um saubere Flanken zu erzeugen.
Daneben gibt es noch eine Reihe von Vorschlägen von denen einer die Möglichkeit des Pegelwandlers TXS0104 ist.
Ich habe im Beispiel einen Pegelwandler für einen Banana PI PRO realisiert der zwei I2C Schnittstellen, die am GPIO für I2C nummer 2 und 3 verfügbar sind, sauber wandelt.
Den Pegelwandler gibt es beim C..... für schlappe 2 Euro, aber
ACHTUNG NICHT den TXB0104 sondern den TXS0104 verwenden!
Ansonsten ist die Schaltung nicht weiter kompliziert.
Der IC ist mit einem feinen Lötkolben unkompliziert zu löten. Sonst einfach drüber mit Lötzinn und die Brücken mit einer Lötsauglitze wegsaugen.
Das Layout wurde so ausgeführt, dass auf den GPIO noch eine Stiftleiste für die nächste Ebene aufgelötet werden könnte.
Schaltplan ist überflüssig, da das Layout denkbar einfach ist.
Auf dem Osci sieht man wie sauber die Flanken erzeugt werden.
Hier noch das Layout:
Oberseite und Unterseite