I'm building a system using a microcontroller (like an Arduino maybe) to automatically control the temperature of a kettle of liquid being heated by an LP gas burner with a PID algorithm to turn the burner on and off.

I'm having difficulty figuring out how to sense presence/absence of the flame so I can deactivate the igniter and then monitor for flame blowout. I looked at flame sensor rods as used in furnaces (rectifier type), but can't find anything on how to interface one to the microcontroller.

I considered using a thermopile, but they seem to be used mostly for pilot flame, so I'm not sure if would work for the main flame. I looked at a fire sensor (transistor based) for the Arduino, but it doesn't detect natural gas flame, so I'm not sure if would work for LP.

I need a solution.

Safety is not a big concern since this will never be used indoors, and will always be monitored constantly while in operation. A common approach for this is to manually ignite the burner and monitor a thermometer in the liquid. The burners are periodically adjusted using a ball valve. I'd just like to make the process a little easier, but have no intention of leaving it unattended. So I guess you could say that adding a

flame detector is just a secondary extra safety measure.

Thanks everyone for your input. I've began analyzing an electric alternative. I'll need to go 220V with around 5500W elements in the liquid, but it is definitely doable. I can use a SSR to feed the power and regulate the temperature. It's definitely a cleaner and simpler alternative, so I may go that way. Thanks again for being so responsive.

Now, I need to finalize on the microcontroller selection. I'm thinking maybe an Atmel. I see there are some opinions already posted on this. Anyone have specific suggestions on models, and rational for the proposed selection?

  • 3
    \$\begingroup\$ The flame sensor is part (a safety-critical part) of a safety system and you should purchase a certified device for this purpose and install it according to the manufacturer's recommendations. You can replace the thermostat with your Arduino (adding, if necessary, an auxiliary safety device such as a passive thermal cutout if the thermostat can cause an unsafe condition, for example by staying on 100%) . Otherwise a single point failure, including firmware, could cause an explosion. Typically this stuff is built into the ignitor controller. \$\endgroup\$ Oct 18, 2018 at 5:00
  • 1
    \$\begingroup\$ I concur with Mr. Pefhany. Whatever the sensor technique used to detect the flame, the analog signal levels generated by them are miniscule, and can be swamped by (inadvertently) marginal design in both mechanical and electrical, construction, contamination by debris causing parallel signal paths over time, etc. Also your code will have to test for and recognize all sorts of sensor failure modes and act accordingly (shut the fuel supply off, raise some kind of notification alarm). An electrical heating system would at least eliminate fuel explosion, but maybe that's not viable for you. \$\endgroup\$
    – user201365
    Oct 18, 2018 at 5:27
  • 4
    \$\begingroup\$ On the contrary, there's absolutely no reason to use a Cortex M4 for this. Almost any simple MCU is appropriate if used wisely - AVR, Cortex M0, MSP430, etc. If anything, look for physical and electrical robustness not compute power or trendiness. \$\endgroup\$ Oct 18, 2018 at 12:52
  • 2
    \$\begingroup\$ As for trendiness, that's the only benefit of Arduino. The embedded systems sector is right are now seeing the equivalence of thousands of carpenter apprentices who use one tool, a very dull knife (Arduino), to solve every problem. Hit a nail? Use the dull knife. Screw a screw? Use the dull knife. Paint the wall? Use the dull knife. \$\endgroup\$
    – Lundin
    Oct 19, 2018 at 13:20
  • 3
    \$\begingroup\$ @Lundin seems you've never worked on anything cost sensitive and so have never really tried to see what you can do. If you think about it for even 30 seconds you'll realize that control loop complexity leads to program size, but not necessarily high compute demand. Compute power need only be sufficient to run the loop at the desired rate. Most tiny agile drones fly 3 pairs of nested PID loops on a Cortex M0, updating far faster than a furnace controller needs to (a few years back they were flying on STM8's and AVR's) You're guessing, not thinking. \$\endgroup\$ Oct 19, 2018 at 14:51

2 Answers 2


There are three common flame detectors used for fuel-gas heating systems: Flame Rectification, Temperature Sensing using a thermocouple, UV sensing.

UV sensors are not reliable when used outdoors unless the sensor and the flame pot are completely shielded from outside light. One of the systems that I had to troubleshoot several years ago suffered from exactly that problem - worked when it was on the ground, didn't work when it was up in the air on a lighting truss.

Flame Rectification needs a high-voltage AC source, usually in the 160 Vac range. Not difficult to generate but . . .

Another problem with Flame Rectification is when (not if) the flame-sensing rod becomes contaminated with combustion products from dirty fuel-gas. Easily fixed with some steel wool or other abrasive pad but a maintenance hassle non-the-less.

Temperature Sensing is both inexpensive and reliable. The only problem is ensuring that the thermocouple tip is always within the flame cone.

There are a lot of safety concerns if you are building this for a commercial application. Certification is a hassle and is always expensive. You would need to study the relevant regulations and design both your hardware and software to meet those regulations. Pay particular attention to the requirement for fail-safe operation.

  • \$\begingroup\$ This is a really handy answer, I'd never heard of flame rectification but it makes sense. These are from the Wikipedia article video, blog, the blogpost is quite helpful. For the UV, I suppose a collimating tube facing a (UV black) backstop on the other side could help somewhat, but it's not foolproof. \$\endgroup\$
    – uhoh
    Oct 20, 2018 at 6:47

Unless you need the power of gas to heat a large volume of water as quick as possible, you should abandon using gas and just use electric heating. Make a control system for an electric kettle, or an electric immersion heater.

If you do need to heat a large volume of water, you should maybe consider you may be biting off more than you can chew, safety and liability wise.

That said, you could use a thermocouple and a thermocouple interface chip such as the Maxim MAX31855. It is easy to come by thermocouples from scientific suppliers that can be put right in the flame of the burner.

Such a combination would be useful in a multiple-channel setup to also measure the temperature of your liquid, though RTDs are often used for that application for food items.

Whatever you do, take safety concerns seriously. Assume every part you use will fail at one point or another, and design your system accordingly so when that does happen, it fails into a safe state, not an unsafe one.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.