|
| 1 | +//go:build btt_skr_pico |
| 2 | + |
| 3 | +// This contains the pin mappings for the BigTreeTech SKR Pico. |
| 4 | +// |
| 5 | +// Purchase link: https://biqu.equipment/products/btt-skr-pico-v1-0 |
| 6 | +// Board schematic: https://github.com/bigtreetech/SKR-Pico/blob/master/Hardware/BTT%20SKR%20Pico%20V1.0-SCH.pdf |
| 7 | +// Pin diagram: https://github.com/bigtreetech/SKR-Pico/blob/master/Hardware/BTT%20SKR%20Pico%20V1.0-PIN.pdf |
| 8 | + |
| 9 | +package machine |
| 10 | + |
| 11 | +// TMC stepper driver motor direction. |
| 12 | +// X/Y/Z/E refers to motors for X/Y/Z and the extruder. |
| 13 | +const ( |
| 14 | + X_DIR = GPIO10 |
| 15 | + Y_DIR = GPIO5 |
| 16 | + Z_DIR = GPIO28 |
| 17 | + E_DIR = GPIO13 |
| 18 | +) |
| 19 | + |
| 20 | +// TMC stepper driver motor step |
| 21 | +const ( |
| 22 | + X_STEP = GPIO11 |
| 23 | + Y_STEP = GPIO6 |
| 24 | + Z_STEP = GPIO19 |
| 25 | + E_STEP = GPIO14 |
| 26 | +) |
| 27 | + |
| 28 | +// TMC stepper driver enable |
| 29 | +const ( |
| 30 | + X_ENABLE = GPIO12 |
| 31 | + Y_ENABLE = GPIO7 |
| 32 | + Z_ENABLE = GPIO2 |
| 33 | + E_ENABLE = GPIO15 |
| 34 | +) |
| 35 | + |
| 36 | +// TMC stepper driver UART |
| 37 | +const ( |
| 38 | + TMC_UART_TX = UART1_TX_PIN |
| 39 | + TMC_UART_RX = UART1_RX_PIN |
| 40 | +) |
| 41 | + |
| 42 | +// Endstops |
| 43 | +const ( |
| 44 | + X_ENDSTOP = GPIO4 |
| 45 | + Y_ENDSTOP = GPIO3 |
| 46 | + Z_ENDSTOP = GPIO25 |
| 47 | + E_ENDSTOP = GPIO16 |
| 48 | +) |
| 49 | + |
| 50 | +// Fan PWM |
| 51 | +const ( |
| 52 | + FAN1_PWM = GPIO17 |
| 53 | + FAN2_PWM = GPIO18 |
| 54 | + FAN3_PWM = GPIO20 |
| 55 | +) |
| 56 | + |
| 57 | +// Heater PWM |
| 58 | +const ( |
| 59 | + HEATER_BED_PWM = GPIO21 |
| 60 | + HEATER_EXTRUDER_PWM = GPIO23 |
| 61 | +) |
| 62 | + |
| 63 | +// Thermistors |
| 64 | +const ( |
| 65 | + THERM_BED = GPIO26 // Bed heater |
| 66 | + THERM_EXTRUDER = GPIO27 // Toolhead heater |
| 67 | +) |
| 68 | + |
| 69 | +// Misc |
| 70 | +const ( |
| 71 | + RGB = GPIO24 // Neopixel |
| 72 | + SERVO = GPIO29 // Servo |
| 73 | + PROBE = GPIO22 // Probe |
| 74 | +) |
| 75 | + |
| 76 | +// Onboard crystal oscillator frequency, in MHz. |
| 77 | +const ( |
| 78 | + xoscFreq = 12 // MHz |
| 79 | +) |
| 80 | + |
| 81 | +// I2C. We don't have this available |
| 82 | +const ( |
| 83 | + I2C0_SDA_PIN = NoPin |
| 84 | + I2C0_SCL_PIN = NoPin |
| 85 | + |
| 86 | + I2C1_SDA_PIN = NoPin |
| 87 | + I2C1_SCL_PIN = NoPin |
| 88 | +) |
| 89 | + |
| 90 | +// SPI. We don't have this available |
| 91 | +const ( |
| 92 | + SPI0_SCK_PIN = NoPin |
| 93 | + SPI0_SDO_PIN = NoPin |
| 94 | + SPI0_SDI_PIN = NoPin |
| 95 | + SPI1_SCK_PIN = NoPin |
| 96 | + SPI1_SDO_PIN = NoPin |
| 97 | + SPI1_SDI_PIN = NoPin |
| 98 | +) |
| 99 | + |
| 100 | +// USB CDC identifiers |
| 101 | +const ( |
| 102 | + usb_STRING_PRODUCT = "SKR Pico" |
| 103 | + usb_STRING_MANUFACTURER = "BigTreeTech" |
| 104 | +) |
| 105 | + |
| 106 | +var ( |
| 107 | + usb_VID uint16 = 0x2e8a |
| 108 | + usb_PID uint16 = 0x0003 |
| 109 | +) |
| 110 | + |
| 111 | +// UART pins |
| 112 | +const ( |
| 113 | + UART0_TX_PIN = GPIO0 |
| 114 | + UART0_RX_PIN = GPIO1 |
| 115 | + UART1_TX_PIN = GPIO8 |
| 116 | + UART1_RX_PIN = GPIO9 |
| 117 | + UART_TX_PIN = UART0_TX_PIN |
| 118 | + UART_RX_PIN = UART0_RX_PIN |
| 119 | +) |
| 120 | + |
| 121 | +var DefaultUART = UART0 |
0 commit comments