LPD3806 incremental encoder 600 P/R (A/B) with ESP32

Supply 5-24 V Bus GPIO Measures rotation, position, speed
VCCGNDABSHIELD

Pins and ESP32 wiring

PinRoleESP32 pinNotes
VCCPower3V3Red wire. Needs 5 to 24 V: use VIN (5 V)
GNDGroundGNDBlack wire
AOutput (the part drives it)D25Green wire. NPN open collector: use INPUT_PULLUP or 4.7 kΩ to 3V3, never to VCC
BOutput (the part drives it)D26White wire. NPN open collector: use INPUT_PULLUP or 4.7 kΩ to 3V3, never to VCC
SHIELDNot wired to the ESP32—Bare wire. Leave unconnected or tie to GND

Suggested wiring for the 30-pin ESP32 DevKit, avoiding flash, input-only and strapping pins. BoardPilot checks it for you as you wire.

Starter code (Arduino)

void setup() {
  Serial.begin(115200);
  pinMode(25, INPUT);  // A
}

void loop() {
  Serial.println(digitalRead(25));
  delay(100);
}

Sources

Try it in 3D in BoardPilot

BoardPilot Part data (JSON)

Related parts

Part data: CC BY 4.0, free to reuse with credit to BoardPilot.