Relay SJ-S-112DM Controlled by Arduino

Old boards with relays that are controlled by transistor switches are an excellent source of ready-made (already calculated) relay modules for Arduino. Below is a photo of the board from the old air conditioner indoor unit control module of 2007 issue (2007.07.19) which is marked as "CE-KFR32G/N1Y-R1.D.01.NP1-1 [v1.3]" and I took two relays from there.


This board has two identical parallel-connected relays 12V/5A250V (SJ-S-112DM) which are also controlled by an identical parallel-connected transistor switches. Unfortunately, I did not find the datasheet for this board, so I had to redraw the circuit directly from the board.


Both of these relays is controlled by a simple transistor switches with a minimal set of elements (a NPN transistor STS9014, a protective diode 1N4148 and a resistor in the base wire about 2 kilohm) of which I made two independent and miniature relay modules.

// Relay testing (blink)

  int relay1Pin = 4;    // Pin D4
  int relay2Pin = 19;  // Pin A5

void setup () {

  pinMode (relay1Pin, OUTPUT);
  pinMode (relay2Pin, OUTPUT);


void loop () {

  digitalWrite (relay1Pin, HIGH);
  digitalWrite (relay2Pin, LOW);
  delay (1000);
  digitalWrite (relay1Pin, LOW);
  digitalWrite (relay2Pin, HIGH);
  delay (1000);

}  // Arduino IDE 1.8.4

To test these relay modules, I used a standard sketch for blinking LED and modified it a little. Each relay module also turns on for 1 second, but they are triggered alternately (in the photo both relay modules are turned on simultaneously, but I did it only for demonstration).

Now, purely for the sake of interest, I will calculate (approximately) the saturation coefficient of the transistor that the engineer chose when designing this section of the scheme.

► 1. The load of the transistor is a relay (SJ-S-112DM) with a coil resistance of 320 ohms (Rc). Calculate the collector current of the transistor (Ic):

Ic = Vcc/Rc = 12/320 = 0.038A = 38mA (Vce(sat) => 0)

► 2. Calculate the base current (for checking - the measured value Ib = 2.1mA):

Ib = Vr/Rb = (Vin-Vbe)/Rb = (5-0.7)/2000 = 0.0022A = 2.2mA

► 3. The DC current gain (β) of the transistor (STS9014) is 100...1000, so I take the minimum value β = 100 and calculate the saturation coefficient of the transistor (S):

Ib = S*(Ic/β) => S = (β*Ib)/Ic = (100*0.0022)/0.038 = 5.8

(!) Usually for such transistor switches it is recommended to take this value within 3...5.

For visual control of the current state of the relay modules (ON/OFF), I soldered parallel to their coils (12V) a LED with a resistor of 1 kilohm and this is not shown in the diagrams.