The motor controller can be operated as either a self-contained control system, driving the motor directly from the onboard inputs, or it can be integrated into a CAN J1939 network of controllers. It has four universal signal inputs and 4 digital inputs that can be used to drive the motor or extra outputs. Two of the digital inputs are reserved for safety interlock functionality. In addition to the powerful DC motor drive, the motor controller has two outputs to drive two hydraulic proportional coils up to 2.5A each, and two relay outputs. This allows the motor controller to be a fully integrated control platform for small machines using a combination of hydraulic actuators and a motor drive system. It uses full isolation to separate the inputs and the processor section of the controller from the motor power and output. The motor controller has a number of built-in protections that can shut off the motor in adverse conditions. These features include hardware shutoffs to protect the circuits from being damaged as well as software shutdown features that can be enabled in safety critical systems. A rugged enclosure and connections provide reliability in machine environments.