ARM Pin | mBed Pin | LPCXpresso Pin | Smoothieboard 1.0 |
(Proposed) ^ Comment |
P0.0 | P9 | 9 | i2c1 sda | i2c1 sda | All: Internal I2C bus. Used for digipots and port expander. |
P0.1 | P10 | 10 | i2c1 scl | i2c1 scl | All: Internal I2C bus. Used for digipots and port expander. |
P0.2 | USBTX | 21 | uart0 txd | uart0 txd | All: Used for ISP programming of the bootloader and for debugging. |
P0.3 | USBRX | 22 | uart0 rxd | uart0 rxd | All: Used for ISP programming of the bootloader and for debugging. |
P0.4 | P30 | 38 | alpha_en_pin | blue | spare |
note: also is rs485 rd2 |
P0.5 | P29 | 39 | alpha_dir_pin | blue | spare |
note: also is rs485 td2 |
P0.6 | P8 | 8 | spi1 ssel | spi1 ssel | All: sdcard |
P0.7 | P7 | 7 | spi1 sck | spi1 sck | All: sdcard |
P0.8 | P6 | 6 | spi1 miso | spi1 miso | All: sdcard |
P0.9 | P5 | 5 | spi1 mosi | spi1 mosi | All: sdcard |
P0.10 | P28 | 40 | beta_en_pin | blue | |
uart1 txd | 1.5: connected to edison uart1 rxd _
note: also i2c2 sda |
P0.11 | P27 | 41 | beta_dir_pin | blue |
uart1 rxd | 1.5: connected to edison uart1 txd _
note: also i2c2 scl |
fpga sck | 1.0: User spi port. used for rrd glcd _
1.5: connected as master to fpga if populated, otherwise connected as slave to edison |
fpga ssel | 1.0: User spi port. used for rrd glcd cs _
1.5: connected as master to fpga if populated, otherwise connected as slave to edison |
fpga miso | 1.0: User spi port _
1.5: connected as master to fpga if populated, otherwise connected as slave to edison |
fpga mosi | 1.0: User spi port. used for rrd glcd _
1.5: connected as master to fpga if populated, otherwise connected as slave to edison |
P0.19 | - | Pad17 | gamma_en_pin | blue | mosfet5 |
note: also i2c3 sda on lpcxpresso e2prom |
P0.20 | - | Pad18 | gamma_dir_pin | blue | mosfet6 |
note: also i2c3 scl on lpcxpresso e2prom |
P0.21 | - | 23 | delta_en_pin | blue | servo1 | |
P0.22 | - | 24 | delta_dir_pin | blue | servo2 | note: lpcxpresso led |
P0.23 | P15 | 15 | hotend.thermistor_pin | adc0 thermistor0 | | |
P0.24 | P16 | 16 | bed.thermistor_pin | adc1 thermistor1 | | |
P0.25 | P17 | 17 | thermistor2 | adc2 thermistor2 | | |
P0.26 | P18 | 18 | thermistor3 | blue | adc3 dac | 1.5: not used for thermistor anymore |
P0.27 | - | 25 | i2c0 sda | i2c0 sda | All: User i2c port. Not used | |
P0.28 | - | 26 | i2c0 scl | i2c0 scl | All: User i2c port. Not used | |
P0.29 | 31 | 37 | USB-D+ | USB-D+ | | |
P0.30 | 32 | 36 | USB-D- | USB-D- | | |
| | | | | | |
P1.0 | | | eth txd0 | eth txd0 | | |
P1.1 | | | eth txd1 | eth txd1 | | |
P1.4 | | | eth tx en | eth tx en | | |
P1.8 | | | eth crs | eth crs | | |
P1.9 | | | eth rxd0 | eth rxd0 | | |
P1.10 | | | eth rxd1 | eth rxd1 | | |
P1.14 | | | eth rx err | eth rx err | | |
P1.15 | | | eth ref clk | eth ref clk | | |
P1.16 | | | eth mdc | eth mdc | | |
P1.17 | | | eth mdio | eth mdio | | |
P1.18 | LED1 | Pad1 | led1 | led1 | | |
P1.19 | - | Pad2 | led2 | led2 | | |
P1.20 | LED2 | Pad3 | led3 | led3 | | |
P1.21 | LED3 | Pad4 | led4 | led4 | | |
P1.22 | - | Pad5 | 3rd small fet | blue | alpha min endstop | 1.0: spare on 3 and 4 driver boards |
P1.23 | LED4 | Pad6 | 3rd large fet | blue | mosfet2 | 1.0: spare on 3 and 4 driver boards |
P1.24 | - | Pad7 | alpha_min_endstop | blue | mosfet3 | |
P1.25 | - | Pad8 | alpha_max_endstop | alpha max endstop | | |
P1.26 | - | Pad9 | beta_min_endstop | blue | mosfet4 | |
P1.27 | - | Pad10 | beta_max_endstop | blue | | |
fpga clkin | 1.5: clock output to fpga; recommended for rrd click/buzz if fpga not populated |
P1.28 | - | Pad11 | gamma_min_endstop | gamma min endstop | | |
P1.29 | - | Pad12 | gamma_max_endstop | gamma max endstop | | |
P1.30 | P19 | 19 | spare | blue | beta min endstop | 1.0: used for click button on rrd glcd |
P1.31 | P20 | 20 | spare | blue | adc5 thermistor3 | |
1.5: used for 4th thermistor |
| | | | | | |
P2.0 | P26 | 42 | alpha_step_pin | alpha step | | |
P2.1 | P25 | 43 | beta_step_pin | beta step | | |
P2.2 | P24 | 44 | gamma_step_pin | gamma step | | |
P2.3 | P23 | 45 | delta_step_pin | delta step | | |
P2.4 | P22 | 46 | psu.output_pin | blue | alpha dir | |
P2.5 | P21 | 47 | bed.heater_pin | blue | beta dir | |
P2.6 | - | 48 | fan.output_pin | blue | gamma dir | |
P2.7 | - | 49 | hotend.heater_pin | blue | delta dir | |
P2.8 | - | 50 | epsilon_step_pin | epsilon step | All: spare on 3 and 4 driver | |
P2.9 | - | Pad19 | USB soft connect | USB soft connect | | |
P2.10 | - | 51 | ISP button | ISP button | | |
P2.11 | - | 52 | spare | | | |
fpga program | 1.0: used for pause/kill/back pin on glcd _
1.5: fpga reset pin; recommended for rrd click/buzz if fpga not populated |
P2.12 | - | 53 | pause button | All: play/pause button | | |
P2.13 | - | 27 | epsilon_dir_pin | epsilon dir | All: spare on 3 and 4 driver | |
| | | | | | |
P3.25 | - | Pad13 | spare | blue | 5v pwm out | 1.0: used for encoder pin for all panels |
P3.26 | - | Pad14 | spare | blue | mosfet1 | 1.0: used for encoder pin for all panels |
P4.28 | - | Pad15 | play/pause led | play/pause led | | |
P4.29 | - | Pad16 | epsilon_en_pin | blue | beta max endstop | 1.0: spare on 3 and 4 driver |
NOTE The italicized pins are hardcoded and would need to be changed in the source code (P0.2, P0.3, P0.6 - P0.9, P0.29, P0.30, P2.9, P2.10) The rest are soft configurable in config.
v1.5 NOTES The blue|blue tagged pins have had their function changed for Smoothieboard v1.5
Chip Pin | Module Pin | Breakout Pin | Arduino Pin | Smoothieboard 1.5 | Comment |
GP109 | 55 | J17.11 | | spi5 sck | |
GP110 | 53 | J18.10 | | spi5 ssel a | |
GP111 | 51 | J17.10 | | spi5 ssel b | |
GP114 | 59 | J18.11 | | spi5 misi | |
GP115 | 57 | J17.12 | | spi5 moso | |
GP129 | 63 | J18.12 | D4 | | connected to mcu reset |
GP130 | 61 | J18.13 | D0 | uart1 rx | connected to mcu uart1 txd |
GP131 | 46 | J19.8 | D1 | uart1 tx | connected to mcu uart1 rxd |
| | | | | |
GP77 | 60 | J19.12 | | - | host breakout: sd0 cd |
GP78 | 58 | J20.11 | | - | host breakout: sd0 clk |
GP79 | 62 | J20.12 | | - | host breakout: sd0 cmd |
GP80 | 66 | J20.13 | | - | host breakout: sd0 d0 |
GP81 | 70 | J20.14 | | - | host breakout: sd0 d1 |
GP82 | 64 | J19.13 | | - | host breakout: sd0 d2 |
GP83 | 68 | J19.14 | | - | host breakout: sd0 d3 |
GP84 | 44 | J20.8 | | - | host breakout: sd0 clk fb |
GP134 | 22 | J20.3 | | - | host breakout: uart2 rxd |
GP135 | 27 | J17.5 | | - | host breakout: uart2 txd |
| | | | | |
GP40 | 52 | J19.10 | | - | panel breakout: spi2 sck |
GP41 | 54 | J20.10 | | - | panel breakout: spi2 ssel |
GP42 | 50 | J20.9 | | - | panel breakout: spi2 moso |
GP43 | 56 | J19.11 | | - | panel breakout: spi2 misi |
| | | | | panel breakout: enc a |
| | | | | panel breakout: enc b |
| | | | | panel breakout: click |
| | | | | panel breakout: button |
| | | | | panel breakout: buzz |
One/Pro/Duo ^ Zpuino Pin ^ Smoothieboard 1.5 ^ Comment |
B1.40P | BH3 | P62 | mcu clkout | |
B1.40N | osc in | - | osc in | |
B2.1P | | | spi0 sck | main fpga spi slave port |
B2.1N | | | fpga m0 | tied high for serial slave programming |
B2.3P | | | spi0 mosi | main fpga spi slave port |
B2.3N | | | spi0 miso | main fpga spi slave port |
B2.13P | | | fpga m1 | tied high for serial slave programming |
B2.56P | | | fpga init | tied high to boot immediately |
B2.65N | | | spi0 ssel | main fpga spi slave port |
1.5 new functions: dac, 5v pwm out, edison uart, 2 servos; optional function (not populated and pins free by default): rs485
the 5 enable pins will go on an 8 pin i2c io expander (PCA9554B); MS1, MS2, and RESET/SLEEP stepper pins will have pull-ups to expander pins
expander pins unassigned: 0
mcu pins spared without fpga: 2
mcu pins spared without edison: 2
mcu pins unassigned: 0
functions unassigned: 0
for rrd display support recommended that rs485 pins be used for encoder and two fpga pins be used for buttons
balance: 0 mcu pins remaining
I'm pretty sure this is currently 1 pin short of full backwards compatibility