The BigTreeTech SKR Pico (V1.0 and V2.0) translates the Raspberry Pi RP2040 microcontroller’s raw GPIO pins into dedicated 3D printer headers for TMC2209 stepper drivers, JST-XH thermistors, and MOSFET-controlled heaters. Below is the direct mapping from the board’s silkscreen labels to the underlying RP2040 GPIO numbers required for Klipper or Marlin firmware configuration.

The Complete SKR Pico Pinout Reference Table

When configuring your printer.cfg in Klipper, you can use either the board aliases (e.g., gpio11) or the SKR Pico silkscreen names. This table maps the physical board headers to the exact RP2040 GPIO pins. Assumption: This table reflects the V1.0 hardware layout, which remains the most widely deployed version; V2.0 swaps a few fan MOSFET pins but retains the core stepper and heater mapping.

Board Silkscreen / Function RP2040 GPIO Pin Klipper Alias / Notes
X-STEP / X-DIR / X-EN GPIO11 / GPIO10 / GPIO12 Enable is active low (!gpio12)
Y-STEP / Y-DIR / Y-EN GPIO6 / GPIO5 / GPIO7 Enable is active low (!gpio7)
Z-STEP / Z-DIR / Z-EN GPIO19 / GPIO18 / GPIO20 Enable is active low (!gpio20)
E0-STEP / E0-DIR / E0-EN GPIO14 / GPIO13 / GPIO15 Extruder motor; active low enable
TMC2209 UART (Shared) GPIO9 Single-wire multiplexed UART for all 4 drivers
HE0 (Hotend Heater) GPIO23 Drives high-side MOSFET
HB (Heated Bed) GPIO21 High-current MOSFET; ensure 24V supply
TH0 (Hotend Thermistor) GPIO27 ADC1 input; polarity insensitive for NTC
THB (Bed Thermistor) GPIO26 ADC0 input; polarity insensitive for NTC
FAN0 / FAN1 / FAN2 GPIO17 / GPIO16 / GPIO24 PWM capable; FAN0 is typically part-cooling
Z-PROBE (BLTouch Control) GPIO22 Servo/Control signal pin
Z-MIN (Endstop / Probe IN) GPIO29 Pull-up enabled; reads probe trigger

Source: Official BigTreeTech SKR Pico GitHub repository and Klipper Configuration Reference.

Wiring Standards & Regional Color Code Variants

The SKR Pico itself operates strictly on 12V–24V DC and 5V/3.3V logic. However, the wiring harnesses you connect to it—and the AC mains wiring feeding your 24V power supply (PSU)—are governed by regional electrical standards. Misinterpreting these color codes is a primary cause of dead RP2040 chips and tripped breakers.

AC Mains Input to the 24V PSU (NEC vs. IEC)

The SKR Pico requires a 24V DC PSU (like a Mean Well LRS-200-24). The AC input side of that PSU must be wired according to your region's code. Always de-energize, lock out, and verify dead with a multimeter before touching PSU terminals.

Function US / NEC Standard (120V AC) EU / IEC 60446 Standard (230V AC) Old UK (Pre-2006 Legacy)
Line (Hot) Black Brown Red
Neutral White Blue Black
Earth (Ground) Green / Bare Green-Yellow Green-Yellow
Safety Warning: Never connect AC mains directly to the SKR Pico's DC input terminals. The board has no AC rectification or isolation. Doing so will instantly destroy the RP2040, the TMC2209 drivers, and poses a severe shock and fire hazard. Local electrical codes (NEC Article 409 / IEC 60204) require proper strain relief and grounding for the PSU enclosure.

Stepper Motor Wire Colors (NEMA vs. IEC/Legacy)

The SKR Pico uses standard 4-pin JST-XH connectors for the X, Y, Z, and E steppers. The board expects Coil A on pins 1-2 and Coil B on pins 3-4. However, stepper wire colors vary wildly by manufacturer and region.

  • US / NEMA Standard (Most common on modern NEMA 17s): Black (A+), Green (A-), Red (B+), Blue (B-).
  • EU / IEC Legacy (Often found on older European stock): Red (A+), White (A-), Blue (B+), Black (B-).
  • Safe Interpretation: Never trust the colors blindly. Use your multimeter in continuity mode to short the wires together in pairs. When you find a pair that creates physical resistance when spinning the motor shaft by hand, that is one complete coil. Plug that pair into pins 1-2, and the remaining pair into pins 3-4.

Pins and Rows People Get Wrong

When building with the SKR Pico, three specific pinout areas consistently cause hardware damage or firmware faults.

1. The Z-Probe Header (5-Pin vs. 3-Pin Confusion)

The SKR Pico features a dedicated 5-pin probe header labeled 5V | GND | IN | GND | OUT. The Mistake: Builders plug standard 3-pin mechanical endstops into this header, misaligning the 5V pin with the endstop's signal pin, which feeds 5V directly into a 3.3V-tolerant RP2040 GPIO, frying the chip. The Fix: If using a 3-pin endstop, use the dedicated Z-MIN 3-pin header, not the 5-pin probe header. If using a BLTouch, the 5-pin layout matches perfectly, but verify the IN pin aligns with the BLTouch's white signal wire.

2. TMC2209 UART Multiplexing

The Mistake: Users look for four separate UART TX/RX pairs for the four stepper drivers and assume the board is missing traces. The Fix: The SKR Pico uses a single-wire UART bus on GPIO9. It multiplexes the connection using the MS1/MS2 address pins on each TMC2209 driver. In Klipper, you only define uart_pin: gpio9 once per driver block; the firmware handles the addressing automatically.

3. Interpreting Faded Silkscreen Markings

The white silkscreen on the SKR Pico can wear off, or be obscured by the large TMC2209 heatsinks. Safe Interpretation: If the endstop or thermistor labels are faded, use the physical board edge as your reference. On all BTT SKR boards, the GND pin is always on the outermost edge of the endstop and thermistor blocks. The signal pin is always in the center. Never guess; if the silkscreen is illegible, trace the outer pin to the large ground plane copper pour using a multimeter in continuity mode to confirm it is GND before applying power.

SKR Pico Pinout FAQ

How do I map the SKR Pico RP2040 GPIOs in Klipper?

In your printer.cfg, set the [mcu] section to your Pico's serial path. For the stepper pins, you can use the raw RP2040 GPIO numbers (e.g., step_pin: gpio11) or the official Klipper board aliases if you include the [include config/btt_skr_pico_v1.0.cfg] file, which allows you to use aliases like step_pin: x_step_pin. Always use the raw gpioXX format if you are writing the config from scratch to avoid alias conflicts.

What is the correct wire sequence for a 5-pin BLTouch on the SKR Pico?

Looking at the SKR Pico's 5-pin probe header with the pins facing you and the USB port pointing down, the sequence from left to right is: 5V, GND, IN (Z-MIN signal), GND, OUT (Servo control). A standard BLTouch wiring harness plugs in directly without modification, provided the connector's locking tab faces outward. Ensure the white wire (IN) aligns with the third pin.

Can I use a standard Raspberry Pi Pico pinout chart for the SKR Pico?

No. While the SKR Pico uses the RP2040 chip, the PCB traces route those GPIOs to completely different physical headers than the standard Raspberry Pi Pico development board. For example, GPIO25 on a standard Pico is the onboard LED, but on the SKR Pico, GPIO25 is routed to the Y-axis TMC2209 UART chip-select/address line. Always use the BTT-specific pinout table provided above or the official Klipper board definitions.