The smarty6 is a fully programmable and versatile universal automation controller. Its array of configurable I/O includes 16 analog, 16 digital, two current (4-20, 0-20 and 20 to 0), two incremental encoders, and seven timing/frequency/stepper terminals (step and direction). Complementing the I/O is a suite of application blocks that include but are not limited to multipliers, dividers, PID’s, logic, state machine, digital registration, trapezoidal motion and cam profiles supported by 32-bit math. Multiple communication standards are supported, including ModbusRTU client (server optional), micro B USB, 100baseTX Ethernet, Modbus TCP/IP client and server and EIP/PCCC server, CANopen master.