Pinout
- This page lists the pinout of the FLY-D8 (F407) motherboard after flashing Klipper firmware. The pin numbers are based on the motherboard schematic.
UART/CSare the driver communication pins: used as UART when using TMC2209, and as chip selectCSwhen using SPI drivers such as TMC5160. The pins are shared.ENis the enable pin. In Klipper configuration, it is usually active-low (with!prefix inenable_pin).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-D8 (F407) 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-D8 (F407) provides 8 driver ports:
| Driver | STEP | DIR | EN | UART/CS | DIAG |
|---|---|---|---|---|---|
| DRIVER0 | PE5 | PA8 | PA15 | PC9 | PD9 |
| DRIVER1 | PE4 | PC11 | PC12 | PC10 | PD8 |
| DRIVER2 | PE3 | PD1 | PD2 | PD0 | PD11 |
| DRIVER3 | PE2 | PD4 | PD5 | PD3 | PD10 |
| DRIVER4 | PE1 | PD7 | PB6 | PD6 | PA5 |
| DRIVER5 | PE0 | PC13 | PC14 | PB7 | PA4 |
| DRIVER6 | PE7 | PE11 | PE10 | PC15 | PD15 |
| DRIVER7 | PE8 | PA7 | PA6 | PE9 | PA3 |
Before starting, completely shut down the printer and disconnect the power supply. Do not plug or unplug wiring harnesses, organize interface wiring, or touch terminals while the power is on.
For rows where the Corresponding Driver DIAG in the table is not -, the driver's DIAG pin is connected to the corresponding input on the main controller. When enabling sensorless homing, configure diag_pin directly according to the table. The corresponding input will be occupied by the DIAG signal; do not connect mechanical or optical endstops to it simultaneously. The RGB / PWM row is not a DIAG input and cannot be used for sensorless homing.
SPI Bus
SPI drivers such as the TMC5160 use the motherboard's hardware SPI bus. Configure spi_bus: spi1a in the configuration; there is no need to configure the MOSI/MISO/SCLK pins separately:
[tmc5160 stepper_x]
spi_bus: spi1a
cs_pin: Corresponding driver's UART/CS pin
For detailed information on software SPI and SPI speed, etc.: SPI Configuration Method
Endstops and Probe
- Please note that the RGB signal pins cannot be used as endstops; they can only be used as PWM ports.
| Function | Pin | Corresponding Driver DIAG |
|---|---|---|
| Endstop Port 0 / IO0 | PD9 | DRIVER0 |
| Endstop Port 1 / IO1 | PD8 | DRIVER1 |
| Endstop Port 2 / IO2 | PD11 | DRIVER2 |
| Endstop Port 3 / IO3 | PD10 | DRIVER3 |
| Endstop Port 4 / IO4 | PA5 | DRIVER4 |
| Endstop Port 5 / IO5 | PA4 | DRIVER5 |
| RGB / PWM | PD15 | - |
| RGB / PWM | PA3 | - |
| Probe | PC0 | - |
For wiring of micro switches, optical endstops, proximity sensors, and TAP, see: Endstop Wiring Guide
Heating
| Function | Pin |
|---|---|
| Heated Bed Heating | PB0 |
| Heater Port 0 | PD12 |
| Heater Port 1 | PD13 |
| Heater Port 2 | PD14 |
Temperature Sensors
| Function | Pin |
|---|---|
| Heated Bed Thermistor | PC5 |
| Thermistor Port 0 | PC2 |
| Thermistor Port 1 | PC3 |
| Thermistor Port 2 | PC4 |
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 | PA0 |
| Fan Port 1 | PA1 |
| Fan Port 2 | PA2 |
| Fan Port 3 | PC6 |
| Fan Port 4 | PC7 |
| Fan Port 5 | PC8 |
PWM
The FLY-D8 (F407) provides 3 PWM outputs, which can be used for servos, fan speed control, etc.:
| Pin | Remarks |
|---|---|
| PD15 | RGB / Neopixel |
| PA3 | RGB / Neopixel |
| PE6 | Servo / BLTouch Control |
BL-Touch
| Function | Pin |
|---|---|
| Servo Signal | PE6 |
| Probe Signal | PC0 |
RGB
| Function | Pin |
|---|---|
| RGB0 / Neopixel | PD15 |
| RGB1 / Neopixel | PA3 |
EXP Interface
- The EXP header is commonly used for screens like the Mini12864 or other peripherals.
- If a pin is already occupied by an SPI, UART, endstop, fan, or other function, do not configure it again for the EXP peripheral.
EXP1
| Function | Pin |
|---|---|
| EXP1_1 | PB10 |
| EXP1_2 | PB1 |
| EXP1_3 | PA14 |
| EXP1_4 | PA13 |
| EXP1_5 | PE15 |
| EXP1_6 | PE14 |
| EXP1_7 | PE13 |
| EXP1_8 | PB11 |
| EXP1_9 | GND |
| EXP1_10 | 5V |
EXP2
| Function | Pin |
|---|---|
| EXP2_1 | PB14 |
| EXP2_2 | PB13 |
| EXP2_3 | PA9 |
| EXP2_4 | PB12 |
| EXP2_5 | PA10 |
| EXP2_6 | PB15 |
| EXP2_7 | PE12 |
| EXP2_8 | RST |
| EXP2_9 | GND |
| EXP2_10 | NC |