Smart SoftPLC combines I/O control and logic, communications, firewall/VPN, and an embedded web server. It runs a ladder logic instruction set, with virtually unlimited user memory for logic and data. Additional functions include LogData and SendEmail. User-written functions in C/Java language are supported. It has a four-port Ethernet switch/router with Power over Ethernet (PoE) and fiber connection options, five serial ports and a phone modem port.