CNC_Controller_Upgrade_Pinouts

Complete pin assignment reference for the PiBot v4.9 Plus B and AireDale STM32 I/O Expander used in the Genmitsu 4040 Pro Max controller upgrade.

PiBot v4.9 Plus B Controller

GPIO Input Pins

GPIO PinFluidNC PinFunctionConnectorPhaseNotes
gpio.2gpio.2Probe inputCN-R12-P11Tool probe
gpio.32gpio.32X-Axis limit(-)CN-R06-P11Factory mechanical switch
gpio.33gpio.33YL-Axis limit(-)CN-R10-P11Factory mechanical switch
gpio.34gpio.34E-Stop inputCN-F03-P31Software stop signal
gpio.35gpio.35Z-Axis limit(-)CN-R08-P11Factory mechanical switch
gpio.36gpio.36AvailableReserved for expansion
gpio.39gpio.39AvailableReserved for expansion
I2SO.23I2SO.23IoT PDU controlCN-R16-P11Smart outlet control

GPIO Output Pins

GPIO PinFluidNC PinFunctionConnectorPhaseNotes
gpio.4gpio.4Air solenoid MOSFETCN-R17-P11Misting system control
gpio.12gpio.12AUX MOSFETCN-R18-P12General purpose MOSFET
gpio.13Laser PWMLaser PWM controlCN-R14-P14Laser power modulation
gpio.26gpio.26Vacuum relayInternal relay1Dust collection control

Communication Pins

RS485 (VFD Communication)

GPIO PinFluidNC PinFunctionConnectorPhaseNotes
gpio.14RS485 RTSRequest to sendCN-R131RS485 flow control
gpio.15RS485 TXTransmitCN-R13-P11RS485-A to VFD
gpio.16RS485 RXReceiveCN-R13-P21RS485-B from VFD

UART1 (Pendant/AireDale)

GPIO PinFluidNC PinFunctionConnectorPhaseNotes
gpio.25UART1 TXTransmit to expanderCN-F021CNC pendant or AireDale
gpio.27UART1 RXReceive from expanderCN-F021Reconfigured in Phase 2

Motor Control Pins (I2SO Expander)

X-Axis Motor

SignalPinTB6600 ConnectionConnectorPhase
EnableI2SO.0ENA+TB6600(X)1
StepI2SO.2PUL+TB6600(X)1
DirectionI2SO.1DIR+TB6600(X)1

Y-Left Motor

SignalPinTB6600 ConnectionConnectorPhase
EnableI2SO.7ENA+TB6600(YL)1
StepI2SO.5PUL+TB6600(YL)1
DirectionI2SO.4DIR+TB6600(YL)1

Y-Right Motor

SignalPinTB6600 ConnectionConnectorPhase
EnableI2SO.8ENA+TB6600(YR)1
StepI2SO.10PUL+TB6600(YR)1
DirectionI2SO.9DIR+TB6600(YR)1

Z-Axis Motor

SignalPinTB6600 ConnectionConnectorPhase
EnableI2SO.15ENA+TB6600(Z)1
StepI2SO.13PUL+TB6600(Z)1
DirectionI2SO.12DIR+TB6600(Z)1

A-Axis (Rotary Table)

SignalPinConnectionConnectorPhase
EnableI2SO.16EnACN-R21-P31
StepI2SO.18StpCN-R21-P41
DirectionI2SO.17DirCN-R21-P51

AireDale STM32 I/O Expander (Phase 2+)

The AireDale expander connects to PiBot J3 via RJ12 cable and provides an RJ12 passthrough for the CNC pendant.

UART Channel Configuration

PiBot Configuration:

  • UART1 reconfigured from direct pendant connection to AireDale communication
  • Baud rate: 115200
  • Protocol: uart_channel1 in FluidNC

Input Pins

PinFunctionConnectorPhaseNotes
uart_channel1.0X-Axis limit(+)CN-R05-P12Inductive proximity sensor
uart_channel1.1Y-Left limit(+)CN-R09-P12Inductive proximity sensor
uart_channel1.2Y-Right limit(-)CN-R11-P12Inductive proximity sensor
uart_channel1.3Z-Axis limit(+)CN-R07-P12Inductive proximity sensor
uart_channel1.4Tool setterCN-R15-P12Automated tool measurement
uart_channel1.5AUX input 1CN-R24-P12General purpose input
uart_channel1.6AUX input 2CN-R24-P22General purpose input
uart_channel1.7AUX input 3CN-R24-P32General purpose input

Output Pins (PWM Capable)

PinFunctionConnectorPhaseNotes
uart_channel1.8Laser enableCN-R14-P24Laser safety interlock
uart_channel1.9AUX PWM 1CN-R22-P12General purpose PWM
uart_channel1.10AUX PWM 2CN-R22-P22General purpose PWM
uart_channel1.11AUX PWM 3CN-R22-P32General purpose PWM
uart_channel1.12AUX PWM 4CN-R23-P12General purpose PWM
uart_channel1.13AUX PWM 5CN-R23-P22General purpose PWM
uart_channel1.14AUX PWM 6CN-R23-P32General purpose PWM
uart_channel1.15Reserved PWM2Available for expansion

MOSFET Output Pins

PinFunctionConnectorPhaseNotes
uart_channel1.16AUX MOSFET 1CN-R19-P12Switched output, STM32 V_MOSFET
uart_channel1.17AUX MOSFET 2CN-R20-P12Switched output, STM32 V_MOSFET

Status LED Pins (Not Used)

PinFunctionNotes
uart_channel1.18Red LEDActive low, unused in project
uart_channel1.19Green LEDActive low, unused in project
uart_channel1.20Blue LEDActive low, unused in project

Connector Pinouts

Rear Panel Connectors (Detailed)

CN-R01 – X-MOT (GX12/4P)

Motor connection to TB6600(X) driver:

  • P1: A+ (Red)
  • P2: A- (Green)
  • P3: B+ (Black)
  • P4: B- (White)

CN-R02 – YL-MOT (GX12/4P)

Motor connection to TB6600(YL) driver:

  • P1: A+ (Red)
  • P2: A- (Green)
  • P3: B+ (Black)
  • P4: B- (White)

CN-R03 – YR-MOT (GX12/4P)

Motor connection to TB6600(YR) driver:

  • P1: A+ (Red)
  • P2: A- (Green)
  • P3: B+ (Black)
  • P4: B- (White)

CN-R04 – Z-MOT (GX12/4P)

Motor connection to TB6600(Z) driver:

  • P1: A+ (Red)
  • P2: A- (Green)
  • P3: B+ (Black)
  • P4: B- (White)

CN-R05 – X-LIM(+) (GX12/4P) [Phase 2]

  • P1: uart_channel1.0 (Signal)
  • P2: 24VDC
  • P3: Ground
  • P4: Not connected

CN-R06 – X-LIM(-) (GX12/4P) [Phase 1]

  • P1: gpio.32 (Signal)
  • P2: 24VDC
  • P3: Ground
  • P4: Not connected

CN-R07 – Z-LIM(+) (GX12/4P) [Phase 2]

  • P1: uart_channel1.3 (Signal)
  • P2: 24VDC
  • P3: Ground
  • P4: Not connected

CN-R08 – Z-LIM(-) (GX12/4P) [Phase 1]

  • P1: gpio.35 (Signal)
  • P2: 24VDC
  • P3: Ground
  • P4: Not connected

CN-R09 – YL-LIM(+) (GX12/4P) [Phase 2]

  • P1: uart_channel1.1 (Signal)
  • P2: 24VDC
  • P3: Ground
  • P4: Not connected

CN-R10 – YL-LIM(-) (GX12/4P) [Phase 1]

  • P1: gpio.33 (Signal)
  • P2: 24VDC
  • P3: Ground
  • P4: Not connected

CN-R11 – YR-LIM(-) (GX12/4P) [Phase 2]

  • P1: uart_channel1.2 (Signal)
  • P2: 24VDC
  • P3: Ground
  • P4: Not connected

CN-R12 – PROBE (GX12/4P) [Phase 1]

  • P1: gpio.2 (Signal)
  • P2: 24VDC
  • P3: Ground
  • P4: Not connected

CN-R13 – VFD (GX12/4P) [Phase 1]

RS485 communication to VFD:

  • P1: RS485-A (gpio.15 TX)
  • P2: RS485-B (gpio.16 RX)
  • P3: Ground
  • P4: Cable shield/Ground

CN-R14 – LASER (GX12/4P) [Phase 4]

  • P1: gpio.13 (PWM output)
  • P2: uart_channel1.8 (Enable output)
  • P3: 24VDC
  • P4: Ground

CN-R15 – TOOL-SET (GX12/4P) [Phase 2]

  • P1: uart_channel1.4 (Signal)
  • P2: 24VDC
  • P3: Ground
  • P4: Not connected

CN-R16 – IOT-PDU (GX12/4P) [Phase 1]

  • P1: I2SO.23 (Control signal)
  • P2: Ground
  • P3: Not connected
  • P4: Not connected

CN-R17 – AIR-SOL (GX12/4P) [Phase 1]

MOSFET-switched output:

  • P1: gpio.4 (MOSFET gate)
  • P2: VMot (24VDC switched)
  • P3: Ground
  • P4: Ground

CN-R18 – AuxFET-1 (GX12/4P) [Phase 2]

MOSFET-switched output (PiBot):

  • P1: gpio.12 (MOSFET gate)
  • P2: VMot (24VDC switched)
  • P3: Ground
  • P4: Ground

CN-R19 – AuxFET-2 (GX12/4P) [Phase 2]

MOSFET-switched output (STM32):

  • P1: uart_channel1.16 (MOSFET gate)
  • P2: V_MOSFET from STM32 TB1-P3
  • P3: Ground
  • P4: Ground

CN-R20 – AuxFET-3 (GX12/4P) [Phase 2]

MOSFET-switched output (STM32):

  • P1: uart_channel1.17 (MOSFET gate)
  • P2: V_MOSFET from STM32 TB1-P5
  • P3: Ground
  • P4: Ground

CN-R21 – A-AXIS (GX16/6P) [Phase 1]

Rotary table connection:

  • P1: 24VDC
  • P2: Ground
  • P3: I2SO.16 (Enable)
  • P4: I2SO.18 (Step)
  • P5: I2SO.17 (Direction)
  • P6: Ground

CN-R22 – AuxOut-1 (GX16/6P) [Phase 2]

Three PWM outputs:

  • P1: uart_channel1.9 (PWM 1)
  • P2: uart_channel1.10 (PWM 2)
  • P3: uart_channel1.11 (PWM 3)
  • P4: Ground
  • P5: Ground
  • P6: Ground

CN-R23 – AuxOut-2 (GX16/6P) [Phase 2]

Three PWM outputs:

  • P1: uart_channel1.12 (PWM 4)
  • P2: uart_channel1.13 (PWM 5)
  • P3: uart_channel1.14 (PWM 6)
  • P4: Ground
  • P5: Ground
  • P6: Ground

CN-R24 – AuxIn (GX16/6P) [Phase 2]

Three general purpose inputs:

  • P1: uart_channel1.5 (Input 1)
  • P2: uart_channel1.6 (Input 2)
  • P3: uart_channel1.7 (Input 3)
  • P4: Ground
  • P5: Ground
  • P6: Ground

Front Panel Connectors (Detailed)

CN-F02 – PENDANT (RJ12)

Connects to PiBot J3 connector:

  • Phase 1: Direct connection to CNC pendant
  • Phase 2+: Connection to AireDale with pendant passthrough

RJ12 pinout (standard 6P6C):

  • P1: Ground
  • P2: 5V (if needed by pendant)
  • P3: UART TX (gpio.25)
  • P4: UART RX (gpio.27)
  • P5: Ground
  • P6: Not connected

CN-F03 – E-STOP (GX12/4P) [Phase 1]

Dual-function emergency stop:

  • P1: 24VDC input from power supply
  • P2: 24VDC output to TB6600 drivers (NC contact)
  • P3: gpio.34 software stop signal (NO contact)
  • P4: Ground

Operation:

  • NC contact (P1-P2) interrupts motor power immediately
  • NO contact (P3-P4) signals FluidNC to enter alarm state

CN-F04 – SD-CARD (SD Extension)

Standard SD card extension:

  • Provides external access to PiBot SD card
  • Allows configuration file updates without opening enclosure

CN-F05 – USB (USB-C Extension)

Programming and diagnostic port:

  • Direct connection to PiBot USB-C port
  • Used for firmware updates and serial communication

TB6600 Stepper Driver Connections

Each TB6600 driver has the following connections:

Power Connections

  • VCC: 24VDC from E-Stop relay (CN-F03-P2)
  • GND: Power supply ground

Motor Connections (to rear panel motor connectors)

  • A+: Motor coil A positive
  • A-: Motor coil A negative
  • B+: Motor coil B positive
  • B-: Motor coil B negative

Control Connections (from PiBot I2SO pins)

  • ENA+: Enable signal (active high)
  • ENA-: Ground
  • PUL+: Step pulses (active high)
  • PUL-: Ground
  • DIR+: Direction signal (high/low)
  • DIR-: Ground

DIP Switch Settings

Recommended settings for NEMA17 motors (Phase 1):

  • SW1-SW3 (Current): 2.0A setting
  • SW4-SW6 (Microstep): 1/8 microstep
  • SW7-SW8 (Decay): FAST decay mode

Power Supply Connections

24V 350W Power Supply

Input:

  • L: 110VAC Line (from CB-01)
  • N: 110VAC Neutral
  • Ground: Chassis ground

Output:

  • V+: 24VDC positive (to VMot distribution)
  • V-: 24VDC negative (to ground bus)
  • COM: Common/Ground

Distribution:

  • TB6600 drivers (through E-Stop relay)
  • Limit switches and sensors
  • MOSFET outputs
  • PiBot logic power

Wiring Color Codes

Standard Wire Colors

Power:

  • Red: 24VDC positive
  • Black: Ground/Common
  • Yellow: 5VDC (if used)

Signals:

  • White: Control signals, inputs
  • Blue: Communication (RS485-A, TX)
  • Green: Communication (RS485-B, RX)
  • Orange: PWM outputs

Motors:

  • Red: A+ coil
  • Green: A- coil
  • Black: B+ coil
  • White: B- coil