Skip to content

GPIO Pin Map

Cross-referenced from live gpio dir/gpio regs queries (2026-02-13), K60 datasheet pin mux table (MK60DN512VLQ10, 144-LQFP), boot log peripheral init, and A3981 datasheet.

SPI1 — A3981 Stepper Motor Drivers (4 MHz, mode 0x03)

Section titled “SPI1 — A3981 Stepper Motor Drivers (4 MHz, mode 0x03)”

The two A3981 stepper motor driver ICs are controlled via SPI1 at 4 MHz. SPI mode 0x03 means CPOL=1, CPHA=1.

K60 PinGPIOAltFunctionDirStateNotes
PTE0E0ALT2SPI1_PCS1OUT1A3981 #2 chip select (EL motor)
PTE1E1ALT2SPI1_SOUT(periph)1MOSI — MCU to A3981
PTE2E2ALT2SPI1_SCK(periph)1SPI clock
PTE3E3ALT2SPI1_SIN(periph)0MISO — A3981 to MCU
PTE4E4ALT2SPI1_PCS0IN*1A3981 #1 chip select (AZ motor)
PTE5E5ALT2SPI1_PCS2OUT1Possibly A3981 RESET or enable

SPI2 — BCM4515 DVB-S2 Tuner (6.857 MHz, mode 0x03)

Section titled “SPI2 — BCM4515 DVB-S2 Tuner (6.857 MHz, mode 0x03)”

The BCM4515 DVB-S2 tuner communicates via SPI2. The clock frequency is 48 MHz / 7 = 6.857 MHz.

K60 PinGPIOAltFunctionDirStateNotes
PTD11D11ALT2SPI2_PCS0OUT1BCM4515 chip select
PTD12D12ALT2SPI2_SCKIN*1SPI clock
PTD13D13ALT2SPI2_SOUTIN*1MOSI — MCU to BCM4515
PTD14D14ALT2SPI2_SIN0MISO — BCM4515 to MCU
PTD15D15ALT2SPI2_PCS10Secondary chip select (unused?)

The console serial port used for all firmware interaction.

K60 PinGPIOAltFunctionDirStateNotes
PTE24E24ALT3UART4_TXOUT1Console TX (to computer RX pair)
PTE25E25ALT3UART4_RXIN1Console RX (from computer TX pair)
PTE26E26ALT3UART4_CTSIN1Hardware flow control (idle high)
PTE27E27GPIOIN1Unknown (RTS? or pullup)
PTE28E28GPIOIN1Unknown

The dipswitch command reads the raw value val:ffffff01 (all OFF/up), which maps to app_dipswitch:101 (DISH 110+119+129 degrees W).

Exact GPIO pins are TBD — likely Port A or Port C inputs with internal pullups. The 0xffffff01 raw value suggests a 32-bit register read where bits 1-24 are all high (pullup, switches open) and bit 0 is high (LSB).

The a3981 diag command reads fault status from two GPIO pins (one per motor driver). Both read “OK” when motors are healthy. The A3981 DIAG output is active-low open-drain, pulled high when no fault is present.

Exact GPIO pins are TBD — likely on Port A or Port E near the SPI1 bus.

These GPIO pins were observed in the HIGH state (logic 1) during the gpio regs dump. Their functions are inferred from context and K60 pin mux options.

GPIODirStateLikely Function
D10OUT1BCM4515 reset or power enable
B0-B31SPI0 or I2C bus (B0-B3 cluster)
B111Status LED or peripheral enable
C10-C131Contiguous block — possibly bus interface
C181LNB voltage control or relay

From the gpio regs command, 101 pins are enumerated across 5 ports:

PortPins EnumeratedCountHigh Pins (=1)
AA0-A19, A24-A2926A1, A3, A4, A5, A15, A16, A25-A29
BB0-B11, B16-B2320B0, B1, B2, B3, B11
CC0-C1920C10, C11, C12, C13, C18
DD0-D1516D11, D12, D13
EE0-E12, E24-E2919E0, E1, E2, E4, E5, E7, E9-E12, E24-E28

The K60 has dedicated USB pins that cannot be muxed to GPIO:

LQFP PinSignalFunction
19USB0_DPUSB Data+
20USB0_DMUSB Data-
21VOUT33USB VREG 3.3V output
22VREGINUSB VREG 5V input (self-power from USB)

The Trav’ler Pro uses USB A-to-A (ttyACM0) for its serial console, proving Winegard has USB CDC/ACM firmware for the Kinetis platform. The G2 may also have a USB connector on the PCB (possibly internal, for field service). NVS indices 2 (“Debug 2nd Console Port”) and 4 (“Debug Port Connection”) hint at multiple console port support.

For firmware extraction via SWD debug probe:

SignalK60 PinLQFP-144Notes
SWDIOPTA3Pin 50Bidirectional data
SWDCLKPTA0Pin 46Clock (probe drives)
GNDMultipleCommon ground with probe
RESETPin 74Optional but recommended
SWOPTA2Pin 49Optional trace output