The Best Solid Stat Relay


I have to manage 2x1500W @ 250VAC heater with a Spark. To do that, I think use two Solid State Relay (or only one, I don’t have make a choice right now). SSR because I will probably manage it with a PID algorithme and I don’t want noise.
I have electricity skills and programming skills but I’m novice in electronic…
Can you please help me to choose the SSR ?
Spark working in 3.3V seems to complicate the choice…

I hope this post will be also helpful to other people (what is the best KISS SSR for a spark)…


Hi @jburdy,
The easiest way to do this is to buy a solid state relay at
Click the link to see an example. Cheap and Easy!
to control the relay just connect terminal 3 to D3, or another Digital pin) and terminal 4 to the ground.
Then connect terminal 1 and 2 in series with the heater and the power supply.
The only question is if the spark has enough power to activate the relay. If not, let me know, then I will send you a schematic with a simple driver circuit.


I just looked up the specs of this relay and it needs 12 mA drive current, that should not be a problem for the core!

@marcus, I could not find a spec sheet showing 12ma for the drive, only 7.5ma. However, the relay can be configured so the Core sources or sinks the necessary current. To source, the “-” input is connected to GND and the “+” is connected to the Core control pin which, when set to HIGH will provide up to 18ma or so of current (at 3.3v), more than enough needed. To sink current, the “+” side of the relay is connected to 3.3V via a current limiting resistor (200-300 ohms for 12ma or 400 ohms or so for 8ma). Then the “-” is connected to the Core control pin so that when set to LOW, it will sink the current to GND. This is essentially reverse logic. :smile:


Hi @peekay123,
I did not look for a datasheet, but I read the reviews of this product on the DX site, and I found this:

sacamantecas Post on 2013-01-17
Involvement:Expert (understands the inner workings) - Ownership:more than 1 month
Much better than a mechanical relay, because it works quickly (<10 milliseconds), silently and for too many years. SSR requires <12mA (an Crydom CX240DX relay requires 12,5mA) There are a LED indicator: this is a good idea
no cons.
With this SSR you can turn on-off a big amount of power: 5500W at 220VAC. In my house I haven't enoug power :-D
You can connect 4 SSR to an arduino or compatible microcontroller. This is an ideal gadget for domotic and industry applications: you must buy a SSR now!

The other reviews are all very positive, so I would give it a go.
About the way to connect the relay to the core, I decided not to advice on sinking since the sourcing capacity is more than enough. Another reason not to choose a sinking setup is that indeed, induces negative logic, unnatural for most starting hackers, no offence @jburdy!
Further more most SSR’s usely have a built in current limiting resistor, to enable a wide control voltage range of 3-24 volts or so. The reason is that these units have to be rocksolid and deployable in all kind of situations by every day service engineers.

Sourcing the relay, instead of sinking, is the simplest way, and it guarantees that the relay is not accidentally activated on power cycles or reset after code flashing. I think this is important because @jburdy wants to switch a lot of high voltage current. And we don’t want him to get electrocuted during testing :wink:

That’s why I suggested this setup, cheap, simple and safe!

1 Like

You might want to shop around a bit more for a ‘zero crossing’ type SSR. The one in the link appears to be a ‘random on’ device. There is a great SSR write up at this site . If you are planning to use a PID control algorithm the heaters will be switched off and on rather more frequently than with a simple dead band controller. Opting for zero crossing SSRs will be less noisy and probably extend the life of the SSRs as well.

1 Like

I would DEFINITELY count on using a PID control and also count on building an adjustable hysteresis. Otherwise your control will frankly… suck from an efficiency stand point.

There are generally two ways to control the heat of an element using an SSR

  1. Use a zero-crossing SSR and adjust the number of cycles it is on to control the heat. The advantage of using a zero-crossing SSR is that the power turns on / off only at the zero crossings of the mains line.

  2. Use a random turn on SSR and use phase control to adjust the heat. This will give you a finer level of control over the heat but will be electrically noisy and requires a zero-cross detection circuit for your timing of the turn on signal.

The challenge with #1 is if you don’t know when the zero crossing occurs then you are reliant on a timer and estimates of when to turn on / off the control signal.

Pay close attention to your SSR. Specifically notice if it is a zero-crossing or random turn on type. Also get a current rating 4-5x the amperage you plan on controlling.

Lastly I am assuming you are using a resistive load heater, if you are using an inductive load then you will need to add circuit protection against voltage spikes.

1 Like

Thanks everyone.

Yes, this is for resistive load heater .

What is the advantage of sinking ? If this is the best in my case I can implement it.

Zero-crossing seems to be a really good choice to in my case, but it seems more difficult to find ? Have you some example ? Else I will order the SSR from @marcus.

Thanks again !

Hi @jburdy and @mtnscott,

I have build and SMD reflow oven using a SSR and Arduino with the PID algorithm. We needed to control the temperature of the oven within a narrow temperature range.
The PID algorithm had a cycle time of 1 second. That was more than fast enough to control precisely the temperature for the oven. Why? because the heat constant of thermo elements is big, something like 2 seconds per degree celsius. (the constant decreases when the temperature rises off course).

Packed with this knowledge I would advise you to go for a simple SSR and use the Arduino PID library and a cycle time of 1 to 5 seconds.

And don’t worry about RFI, since you don’t use a zero cross SSR, the normal SSR’s switch a million times cleaner then a manual switch or ordinary relay who spark during switching!
If you want my PID code, drop me a PM.


1 Like


You might want to take a look at the CW 24 series from Crydom. They are zero crossing SSRs when used to switch a resistive load. In a former life I specified thousands of them for resistive heater loads and they were very reliable when not overloaded. Specifically the CWD2425 will switch up to 25 A at 250V and the data sheet claims the minimum turn on voltage is 3 VDC. As suggested by @mtnscott, always go with an SSR current rating several times your expected load… To control 1500W at 250V you will be switching a nominal 6A but in rush current is always higher so a 25A SSR is probably a good choice.

The data sheet for the CWD2425 says nominal input current is 10 mA at 12 VDC It will probably draw a bit more than 10 mA at 3 VDC but probably not as much as 40 mA. Bottom line is that the Core with its 20 mA drive current is going to be borderline for a direct connection to the SSR. You may need to use one of the Digital Out pins to drive a transistor which in turn drives the SSR input if the 20 mA signal is insufficient. But you may get lucky and its worth trying the direct connection first.

Good luck.


Thanks everyone for your answers .

I have now the keys for my project.

I have understands that zero-crossing CWD2425 is probably the best SSR in my case but 6 time s more expensive that the SSR-25DA . I will start with the cheap solution for my first step.