AMOLED V1
LCD_CS is GPIO 9. OpenDrift uses GPIO 15–18 for PWM or CRSF wiring.
View pinoutsHardware connection reference
Select the Waveshare board, AMOLED PCB revision, and receiver protocol first. V1 and V2 firmware is not interchangeable, and V2 reserves GPIO 17/18 for onboard interrupt signals.
01 - Select the exact build
LCD_CS is GPIO 9. OpenDrift uses GPIO 15–18 for PWM or CRSF wiring.
View pinoutsLCD_CS is GPIO 46. OpenDrift uses GPIO 1/2 and 15/16 to avoid the new onboard GPIO 17/18 interrupt connections.
View pinoutsv1.0.7c provides synchronized physical endpoints and controller behavior for existing round builds. AMOLED remains the primary development target.
Install compatibility firmware02 - Standard receiver PWM
Waveshare AMOLED V1 - PWM
GPIO 15 reads steering, GPIO 16 reads throttle, GPIO 17 drives the steering servo, and GPIO 18 is switched from the System page or web configurator.
| Connection | GPIO | Direction | Purpose |
|---|---|---|---|
| Servo in / receiver steering | 15 | Into OpenDrift | Driver steering input |
| Throttle in / receiver throttle | 16 | Into OpenDrift | Throttle sensing and blackbox logging |
| Servo out / steering servo | 17 | Out of OpenDrift | Selectable 250/333 Hz stabilized steering command |
| Receiver gain signal | 18 | Into OpenDrift | When GPIO 18 mode is Gain Input |
| ESC throttle signal | 18 | Out of OpenDrift | Instead available when GPIO 18 mode is Throttle Out |
Waveshare AMOLED V2 - PWM
GPIO 17/18 are reserved by the revised Waveshare board. OpenDrift moves servo output to GPIO 1 and the switchable gain/throttle connection to GPIO 2.
| Connection | GPIO | Direction | Purpose |
|---|---|---|---|
| Servo in / receiver steering | 15 | Into OpenDrift | Driver steering input |
| Throttle in / receiver throttle | 16 | Into OpenDrift | Throttle sensing and blackbox logging |
| Servo out / steering servo | 1 | Out of OpenDrift | Selectable 250/333 Hz stabilized steering command |
| Receiver gain signal | 2 | Into OpenDrift | When GPIO 2 mode is Gain Input |
| ESC throttle signal | 2 | Out of OpenDrift | Instead available when GPIO 2 mode is Throttle Out |
03 - Full-duplex CRSF
The receiver UART lines cross: receiver TX connects to OpenDrift RX, and receiver RX connects to OpenDrift TX. The Servo In and Throttle In labels describe where the servo and ESC plug in; those two GPIOs are electrical outputs from OpenDrift.
| Connection | GPIO | Direction | Purpose |
|---|---|---|---|
| Servo in / steering servo connector | 15 | Out of OpenDrift | Selectable 250/333 Hz stabilized steering command |
| Throttle in / ESC connector | 16 | Out of OpenDrift | 50 Hz throttle output with active-neutral failsafe |
| CRSF RX / receiver TX | 17 | Into OpenDrift | Channel and link frames at 420 kbaud |
| CRSF TX / receiver RX | 18 | Out of OpenDrift | Parameter telemetry and EdgeTX setting writes |
| Connection | GPIO | Direction | Purpose |
|---|---|---|---|
| Steering servo connector | 15 | Out of OpenDrift | Selectable 250/333 Hz stabilized steering command |
| ESC connector | 16 | Out of OpenDrift | 50 Hz throttle output with active-neutral failsafe |
| CRSF RX / receiver TX | 1 | Into OpenDrift | Channel and link frames at 420 kbaud |
| CRSF TX / receiver RX | 2 | Out of OpenDrift | Parameter telemetry and EdgeTX setting writes |
04 - CRSF accessory outputs
Open the OpenDrift WiFi configurator and use Auxiliary Channel Outputs to assign CRSF channel 1–16 independently to each available pin. This feature is available in AMOLED CRSF firmware only.
| Board | Available GPIOs | Output | Signal loss |
|---|---|---|---|
| Waveshare AMOLED V1 CRSF | 1–8 | 50 Hz receiver PWM | 1500 µs neutral |
| Waveshare AMOLED V2 CRSF | 3–8 | 50 Hz receiver PWM | 1500 µs neutral |
05 - Power and grounding
Receiver, OpenDrift, servo, ESC, and BEC grounds must be connected together.
Power the steering servo from a suitable BEC or ESC receiver rail, never from an ESP32 GPIO.
The Waveshare ESP32-S3 board must receive regulated 5 V on its 5 V input. Never feed it directly from a 6 V or higher BEC.
The OpenDrift daughter boards under development include an onboard regulator, so a separate external 5 V regulator will not be required.
Use the receiver manufacturer's specified supply voltage. A SpeedyBee SB Nano should be fed from regulated 5 V.
The board power input accepts regulated 5 V, but ESP32-S3 signal pins use 3.3 V logic and are not 5 V tolerant. Never connect BEC power to GPIO 15-18.
Ready to connect