Pinout
- This page lists the pinout of the FLY-Gemini V3 mainboard after flashing Klipper firmware, with pin numbers based on the mainboard schematic.
UART/CSis the driver communication pin: used as UART when using TMC2209, or as chip selectCSwhen using SPI drivers such as TMC5160, with the same pin being multiplexed.ENis the enable pin, typically active low in Klipper configuration (enable_pinwith a!prefix).DIAGis the driver diagnostic signal pin. When using sensorless homing, configure the correspondingdiag_pinaccording to the table below.
Interactive Pin Hotspots
The image below uses the FLY-Gemini V3 product image and the same hotspot data from the Klipper configuration generator. Use the device filters above to show only compatible connectors; click a hotspot to see compatible devices, common Klipper configuration sections, and notes. Use “Locate in pin table” in the detail panel to jump to and highlight the corresponding row below. Hover still shows the connector name and pin. Always verify the silkscreen and connector positions against the physical board and schematic.

Hover to see the pin; click a hotspot to view compatible devices and configs. Pins can be copied from the detail panel, except for driver connectors.
Driver Pins
The FLY-Gemini V3 provides 4 driver ports:
| Driver | STEP | DIR | EN | UART/CS | DIAG |
|---|---|---|---|---|---|
| DRIVER0 | PC13 | PC1 | PA3 | PB11 | PA4 |
| DRIVER1 | PC14 | PC4 | PD2 | PC10 | PA5 |
| DRIVER2 | PC15 | PC5 | PC12 | PB7 | PA6 |
| DRIVER3 | PC3 | PC8 | PC11 | PB6 | PB1 |
Before starting, completely shut down the printer and disconnect the power supply. Do not plug or unplug cables, organize wiring sequences, or touch terminals while the system is powered on.
When using sensorless homing, the driver chip outputs the stall detection signal through the DIAG pin, and Klipper needs to read this signal via the corresponding input port. The correspondence between DIAG and endstop ports on this mainboard is as follows:
- DRIVER0–3: DIAG is directly connected to the corresponding endstop input port on the main controller (DRIVERn → Endstop Port n). There are no DIAG jumper pins on the board, and the DIAG signal is always delivered to the main controller. When enabling sensorless homing, simply configure the corresponding endstop port pin as
diag_pin. Do not connect a physical endstop switch to that endstop port.
Once sensorless homing is enabled, the corresponding endstop port is occupied by the DIAG signal, and mechanical or optical endstop switches must not be connected simultaneously.
SPI Bus
SPI drivers such as the TMC5160 use the mainboard's hardware SPI bus. In the configuration, simply set spi_bus: spi3; no need to separately configure MOSI/MISO/SCLK pins:
[tmc5160 stepper_x]
spi_bus: spi3
cs_pin: corresponding driver's UART/CS pin
Detailed instructions on software SPI and SPI speed: SPI Configuration Method
Endstops and Probe
| Function | Pin | Corresponding Driver DIAG |
|---|---|---|
| Endstop Port 0 / IO0 | PA4 | DRIVER0 |
| Endstop Port 1 / IO1 | PA5 | DRIVER1 |
| Endstop Port 2 / IO2 | PA6 | DRIVER2 |
| Endstop Port 3 / IO3 | PB1 | DRIVER3 |
| Probe | PA1 | - |
For wiring of micro switches, optical endstops, proximity sensors, and TAP, see: Endstop Wiring Guide
Heating
| Function | Pin |
|---|---|
| Heater Port 0 | PA0 |
| Heated Bed | PA2 |
Temperature Sensors
| Function | Pin |
|---|---|
| Thermistor Port 0 | PC0 |
| Thermistor Port 1 | PC2 |
The thermistor ports support NTC thermistors (100K) by default, with sensor_type recommended as Generic 3950; they also support 2-wire PT1000, configured by setting sensor_type to PT1000.
List of
sensor_typeoptions that can be directly connected internally by Klipper and their applicable scenarios: Thermistor Configuration Method
K-type thermocouples, 3-wire PT100, etc., require additional signal conditioning chips and cannot be connected directly to the thermistor ports.
Fans
| Function | Pin |
|---|---|
| Fan Port 0 | PC6 |
| Fan Port 1 | PC7 |
PWM
The FLY-Gemini V3 provides 1 PWM output, which can be used for servos, fan speed control, etc.:
| Pin | Remarks |
|---|---|
| PB0 | Servo / BLTouch control |
BL-Touch
| Function | Pin |
|---|---|
| Servo signal | PB0 |
| Probe signal | PA1 |
EXP Interface
- The EXP header is commonly used for screens like the Mini12864 or other expansion peripherals.
- If a pin is already occupied by SPI, UART, endstop, fan, or other functions, do not reconfigure it in EXP peripherals.
EXP1
| Function | Pin |
|---|---|
| EXP1_1 | PC9 |
| EXP1_2 | PB10 |
| EXP1_3 | PA13 |
| EXP1_4 | PA10 |
| EXP1_5 | PA9 |
| EXP1_6 | PA8 |
| EXP1_7 | NC |
| EXP1_8 | NC |
| EXP1_9 | GND |
| EXP1_10 | 5V |
EXP2
| Function | Pin |
|---|---|
| EXP2_1 | PB14 |
| EXP2_2 | PB13 |
| EXP2_3 | PA15 |
| EXP2_4 | PB12 |
| EXP2_5 | PA14 |
| EXP2_6 | PB15 |
| EXP2_7 | PA7 |
| EXP2_8 | RST |
| EXP2_9 | GND |
| EXP2_10 | NC |