Wiring ESP32 ke HY-SRF05#
Di ESP32, sensor ini bisa diberi catu dari pin 5V atau VIN supaya modul bekerja normal dan jangkauan pengukuran tetap maksimal.
| HY-SRF05 Pin | ESP32 DevKit Pin | Fungsi di Kode |
|---|---|---|
| VCC | VIN (5V) | Power |
| Trig | GPIO 27 | TRIG_PIN |
| Echo | GPIO 13 | ECHO_PIN |
| GND | GND | Ground |
Kode Minimal#
Saya pakai Serial.begin(115200) supaya output di Serial Monitor lebih nyaman dibaca di ESP32.
// Definisi pin sesuai skema wiring
#define TRIG_PIN 27
#define ECHO_PIN 13
void setup() {
Serial.begin(115200);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
Serial.println("--- Test Sensor HY-SRF05 dengan ESP32 ---");
}
void loop() {
// Kirim trigger ke sensor
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
// Baca durasi pantulan
long duration = pulseIn(ECHO_PIN, HIGH);
// Konversi durasi menjadi jarak dalam cm
float distance = duration / 58.2;
Serial.print("Jarak: ");
if (distance <= 0 || distance > 400) {
Serial.println("Di luar jangkauan!");
} else {
Serial.print(distance);
Serial.println(" cm");
}
delay(500);
}Catatan dan Tips#
- Kalau kode memakai 115200, pastikan Serial Monitor di Arduino IDE juga diatur ke 115200.
- Pin Echo pada HY-SRF05 mengeluarkan sinyal 5V, sedangkan ESP32 hanya aman di level 3.3V.
- Untuk tes singkat biasanya masih bisa langsung dicoba, tetapi untuk penggunaan jangka panjang sebaiknya tambahkan pembagi tegangan, misalnya resistor 1k Ohm dan 2k Ohm.
- Kalau hasil bacaan sering nol atau tidak stabil, cek ulang kabel GND, catu daya sensor, dan posisi sensor terhadap objek.

