Hallo sneaker,

das Programm sieht erstmal OK aus, sofern die Funktionen auch das machen was dran steht. Ich denke aber mal, dass das auch so ist, sonst würde ja überhaupt kein vernünftiger Wert zurückkommen.

Busprobleme könnten natürlich sein, schließe ich den Busmaster (Mikrocontroller) und das US-Modul an eine seperate galvanisch getrennte Spannungsversorgung an, kann ich mehrere Messungen hintereinander ausführen.
da dürfte sicherlich das Problem liegen. Normalerweise dürfte die Kommunikation ohne Masseverbindung überhaupt nicht gehen, da das Bezugspotenzial fehlt. Da das dennoch funktioniert, gibt es irgendeine parasitäre Verbindung (Gehäuse, PE, Fehler im Netzteil, ....).

Eine Messung zwischen den beiden Masseleitung ergibt einen Potentialunterschied, der zwischen 3 und 4 Volt schwankt.
Das darf eigentlich nicht der Fall sein. Bei genügend kleinem Innenwiderstand kannst du problemlos damit deinen Controller oder auch das Modul killen. Also ich würde dir raten den Bus, bzw. die Geräte am Bus nochmal daraufhin zu prüfen.

HTH und Viele Grüße
Jörg