The MESA 5I25 is a low cost, FPGA based programmable I/O card for the PCI bus. The 5I25 is a low profile PCI card (available with low profile and standard brackets, low profile bracket shown here) that uses standard parallel port pinouts and connectors for compatibilty with most parallel port interfaced motion control / CNC breakout cards/ multi axis step motor drives, allowing a motion control performance boost while retaining a reliable real time PCI interface. Unlike the parallel port that the 5I25 replaces, each I/O bit has individually programmable direction and function. The 5I25 is a universal PCI card so will work in 5V and 3.3V systems. the 5I25 provides 34 I/O bits (17 per connector) All I/O bits are 5V tolerant and have pullup resistors. A power source option allows the 5I25 to supply 5V power to breakout boards if desired. This 5V power is protected by a PTC. Firmware modules are provided for hardware step generation, quadrature encoder counting, PWM generation, digital I/O, Smart Serial remote I/O, BISS, SSI, SPI, UART interfaces and more. Configurations are available that are compatible with common breakout cards and multi axis step motor drives like the Gecko G540. All motion control firmware is open source and easily modified to support new functions or different mixes of functions.