Moin,
Ich möchte gerne mit einem ESP32 und einem TOF-Sensor Distanzen messen.
Nach kurzen Problemen habe ich es hinbekommen den ESP32 mit meinem Linux-Rechner zu verbinden und von der Arduino-IDE Programme auf ihn zu übertragen.
Dann habe ich die Header-Pins an den TOF-Sensor gelötet und auf einem Breadboard alles zusammen gesteckt.
Leider verzweifle ich jetzt daran, den Sensor mit dem ESP32 zu verbinden.
Da es mit meinem eigenen Code nicht geklappt hat, habe ich dies versucht mit KI-Hilfe hinzubekommen. Dabei komme ich leider auch zu nichts.
Anhand des unteren Codes konnte ich allerdings darstellen, dass der Sensor doch wohl irgendwie erkannt wird. Mithilfe des oberen Codes kann ich allerdings leider gar nichts feststellen. Es wird immer nichts gefunden.
Könnt ihr mir vielleicht noch einen Tipp geben, wie ich weiter machen kann bzw. wo ich noch suchen kann?
Anbei habe ich auch noch ein Bild meiner Lötstellen angehängt. Vielleicht liegt es ja daran, da ich auch sehr neu beim Löten bin.
Ich danke euch vielmals für eure Bemühungen im Voraus!
Freundliche Grüße und einen schönen Abend.
#include <Wire.h>
void setup() {
Serial.begin(115200);
Wire.begin(4, 5); // SDA=4, SCL=5
Serial.println("Dauer-Scan startet. Bitte jetzt an den Kabeln wackeln!");
}
void loop() {
byte error, address;
int nDevices = 0;
Serial.print("Scan: ");
for(address = 1; address < 127; address++ ) {
Wire.beginTransmission(address);
error = Wire.endTransmission();
if (error == 0) {
Serial.print("GEFUNDEN auf 0x");
Serial.print(address,HEX);
Serial.print(" ");
nDevices++;
}
}
if (nDevices == 0) Serial.print("Nichts gefunden...");
Serial.println();
delay(500);
}
#include <Wire.h>
void setup() {
// Startet die Kommunikation mit deinem Laptop
Serial.begin(115200);
while (!Serial); // Wartet, bis der Monitor offen ist
Serial.println("\n--- I2C Scanner startet ---");
// Initialisiert die Pins 4 (SDA) und 5 (SCL)
Wire.begin(4, 5);
}
void loop() {
byte error, address;
int nDevices = 0;
Serial.println("Scanne...");
for (address = 1; address < 127; address++) {
// Der ESP32 schickt ein kurzes Signal an die Adresse
Wire.beginTransmission(address);
error = Wire.endTransmission();
if (error == 0) {
Serial.print("GEFUNDEN! Gerät an Adresse: 0x");
if (address < 16) Serial.print("0");
Serial.println(address, HEX);
nDevices++;
}
else if (error == 4) {
Serial.print("Unbekannter Fehler an Adresse 0x");
if (address < 16) Serial.print("0");
Serial.println(address, HEX);
}
}
if (nDevices == 0) {
Serial.println("Keine I2C-Geräte gefunden\n");
} else {
Serial.println("Scan abgeschlossen\n");
}
delay(2000); // Wartet 2 Sekunden bis zum nächsten Scan
}



