SST: Single direction 12V – 35V, 30A, Programmable


A small, low cost, versatile, single direction programmable controller. Based on a Picaxe microcontroller it is suitable for a wide range of motor control projects, particularly those requiring an element of customisation.

SKU: N/A Category:
Save 10% when you buy three or more controllers.


We were asked by a number of customers to design a basic controller that was small, inexpensive, and could be easily programmed to do a variety of tasks. The SST-31 is the result. Based on the power section of our proven Porter 5, it uses a small Picaxe microcontroller to provide a range of functions and capabilities usually only found on larger, more expensive controllers. Designed with four separate input / output ports the SST-31 provides great flexibility for more advanced motor control projects that require input from external switches or sensors, or to have timer functions included [e.g. windscreen wiper control]. Apart from the motor supply there is one 5V output that can be used to drive a relay or LED, and there is also a serial output that can be used to drive a LCD display.

For basic applications the SST can be used out of the box with it’s default values, but by accessing its programmable capabilities a host of possibilities is opened up. We selected the Picaxe chip because it is easy to program without specialist equipment or complex software. We’ve made the operating software completely open source to allow and encourage development in a wide variety of power control applications.

Main features;

  • 12V – 35V
  • Up to 30A depending on cooling.
  • Single direction
  • Easily programmed if required via free Picaxe software
  • Three control inputs, two with output capability
  • On / off “ignition” input
  • Picaxe 08M2 microcontroller
  • Ready-made, open source software versions available for the following functions;
    • Open loop PWM control using a potentiometer or voltage input [like the majority of other 4QD controllers].
    • Softstart operation via switch or ignition input.
    • Closed loop RPM control using a hall effect or other sensor [coming soon].
  • The software can be easily adapted to work with the 4 – 20 mA current loop process control standard.
  • Die-cast box provides protection and heatsink function [can be sealed if water resistance is required].

The SST-31 is supplied with one software version pre-installed [choose the version in the drop down box]. The code for all the versions is available on the software tab, and can be downloaded and modified by the user as required. Each version has been written with well defined and documented variables allowing the behaviour to be tailored to the application. Flashing the software into the SST-31 requires a PC with a USB port, a Picaxe programming lead and our conversion cable. [add links]

There are 3 control inputs which can be used in a variety of ways e.g. for a potentiometer or voltage input, to monitor system parameters such as temperature or pressure, or to sense a brake switch. Two of the three inputs can also be used as outputs if required e.g. to drive a display, solenoid or alarm.

Picaxe development software is free to download and allows users to either modify the existing software or to develop entirely new applications. We have written the standard software versions using the BASIC language, which gives fine control over all the variables.  A  simplified version of each has also been created using the Picaxe flowchart system which is easier for non-programmers to understand. If you can draw a flowchart then you can program the SST-31. For volume orders 4QD can develop the software.

The SST-31 use the Picaxes’ built in PWM function to give the user full control over the frequency and duty cycle of the PWM output. The frequency can be adjusted down for enhanced current capability.

A Picaxe LCD module can also be added to display information, messages, or system variables in real time.

Note; The SST-31 has been designed to be a low cost, simple controller. As such certain features found in our other controllers are not present, these include

  • Regenerative braking
  • Current limiting
  • Over temperature protection
  • Reverse polarity protection
  • Over voltage protection
  • Pot fault protection
  • High pot lockout [can be added in software]

The user should take these into account when designing the system.


Nominal voltage range V 12 – 24
Minimum / maximum voltage V 10 – 35
Motor current A [max] 50
Motor current A [continuous] 30 [depends on mounting / cooling]
Current limiting No
Regen braking No
Dimensions [mm] 60 x 55 x 30
Weight [g] 100
Power connections Screw down terminals
Control inputs 0 – 5V
Reverse polarity protection Partial [not mosfets]
Overvoltage protection No
Ramp times Adjustable via software
P software Default = 1s
S software Default ramp up = 7s, ramp down = 2s
C software Depends on configuration
Power down state (motor) Diode
Heatsink Box
Switching frequency Default 20 kHz [adjustable via software]
Water resistance Box and cable entry can be sealed


The manual provides full instructions on setting up and operating the controller. The manual is available in PDF  format:

Adobe_PDF_file_icon_32x32   Read manual

The manual is designed to be printed double-sided in A4 booklet format. To print the booklet from the PDF on a double-sided printer, select Booklet in the Page Size & Handling section of the print window, and set Orientation to Portrait.

Wiring diagrams and Instructions

Full instructions are included in the manual.


For troubleshooting common to all controllers click here.



Depending on the application some thought may need to be given to heat dissipation, some options are;

  • Making sure that there is a good flow of air over the case, either by siting it in the vehicle airflow, or fitting a small PC type fan.
  • Clamping the case to a metal part of the chassis.
  • Painting the case matt black.

Notes on Current

The default switching frequency of the SST is 20kHz. If this frequency is reduced then the switching losses in the mosfets will also be reduced, which in turn will allow the SST to handle larger currents without overheating. The trade-off is increased acoustic noise.


We have a number of SST specific articles in our knowledgebase.


The software for the SST controller is written in Picaxe BASIC, please see the Picaxe site for full documentation.

If you want to change the default operating parameters, or customise the operation of the controller, then you may download the programs using the links below. A readme file is included in each download, explaining more about the parameters and giving a program overview.

P software version

This program is for open loop PWM control using a potentiometer or voltage input. The user parameters are straightforward to change and are listed below.

It is possible to set the rate at which the controller ramps up and down in response to the control setting, and the voltage to correspond to minimum and maximum speeds.

Name Default Value Description
Ramp time Default to 20 ms Can be 0 – 1 second. Interval at which ramp increments are made
Ramp increment Default to 5 Can be 1 – 199. The step size to take from current duty cycle to new duty cycle corresponding to new input voltage.
Ramp decrement Default to 5 Can be 1 – 199. The step size to take from current duty cycle to new duty cycle corresponding to new input voltage.
Min voltage Default to 0 (OV) for PWM
Or set to 52 (1V) for 4-20 mA current loop
Input voltage (digital value) above which motor to start running. Values below this give 0% PWM.
Values can be 0 -255.
Max voltage Default to 255 (5V) Input voltage (digital value)  needed to give 100% PWM output.

Download a zip file of the PWM BASIC program and documentation here.

S software version

This program is for softstart operation via an optional switch input. The user parameters are straightforward to change and are listed below.

It is possible to set the period over which the motor ramps up from zero to full speed, and the period over which it ramps down from full speed to zero.

Name Default Value Description
Ramp up time Default to 7000 ms The period in milliseconds over which the motor should ramp up from stopped to full speed.
Ramp down time Default to 1000 ms The period in milliseconds over which the motor should ramp down from full speed to stopped.
Ramp up step Default to 5 Can be 1 – 199. The step size to take when ramping up the PWM duty cycle.
Ramp down step Default to 5 Can be 1 – 199. The step size to take when ramping down the PWM duty cycle.

Download a zip file of the Softstart BASIC program and documentation here.

Picaxe Flowchart Programs

Users who are new to programming, and who wish to customise the controller behaviour (beyond that possible by changing the user parameters), may find it easier to program using the Picaxe flowchart tool. A simplified flowchart version of the PWM and softstart programs are available to use as a starting point. Download the Picaxe flowchart programs here.

Please refer to the SST & Picaxe manuals for instructions on how to flash the code into the controller.

Please note that any changes to the software are done at your own risk and are not supported by 4QD.


You may need some or all of the following