Kidde KN-COEG-3 carbon monoxide/gas alarm teardown

In continuation of Carbon Monoxide teardowns, we now have a Kidde KN-COEG-3 detector designed to handle both carbon monoxide and natural gas in residential use. Unlike the previous target (First Alert FCD2BT), this one never worked that well, causing frequent “GAS” false panics and piercing alarms, so a teardown is a natural progression for this model!

Display error messages

In this design, a separate wall pack is used to deal with AC mains, supplying 9V AC to the unit. The supply can either stay in the case or be used remotely.

9V AC transformer

Taking one screw out, we get the case to open:

One screw in the center holds the halves together

This huge (2"x0.5") cylinder is a Kidde branded CO sensor

Next to it is a small SMT board holding the natural gas  sensor from Figaro:

Gas sensor board from the back. Not a very clean assembly

Figaro TGS2611 gas sensor and a few passives

RNetworks underneath LCD

Neat raised display

Now on to the main board details:

Microchip PIC16, RE46C101 and an unknown chip under the label

Taking the label off, reveals yet another Microchip part:

Unknown chip turns out to be PIC16F628A

MCP602 opamp is processing sensor output.

5V voltage regulator for the logic

Not much is on the back of the board, just somewhat messy TH joints done with noclean solder as a post-operation.

Average solder quality here

Looks like a guard trace around sensitive nodes to capture any leakage

And a bt of a crappy soldering on the AC input pins

Very nice soldering job here!

And finally a block diagram of my limited reverse engineering effort together with a brief description of how this thing works:

High level block diagram

The power supply is very straightforward  an AC wallpack feeding a rectifier and a 5V regulator for the logic. Battery voltage is diode OR-ed in. The logic section is split into two microcontrollers. The older PIC16CR54C serves as a decoder for the 7-segment LED display. It received data serially over two lines (clk and data at about 58Khz) from the main micro, this time PIC16F628A. There is the usual R46C101 piezo horn driver, with enable line connected to the main micro. Its LED drive facilities are not used.

Sensing is done via two separate sensors. Natural gas detection is handled by Figaro TGS2611 sensor. The output is fed into an LM339 comparator and then into the main microcontroller. Carbon Monoxide is sensed by a Kidde branded sensor that appears to be electrochemical in nature, with only two pins coming out of it. The signal is converted from current to voltage by a low bias current Microchip MCP602 opamp and fed into the micro. Of interest is a MOSFET across the sensor, it is intended to keep the sensor shorted when no measurement is performed. That prevents sensor from damaging itself when not being used. I’ve not been able to locate the datasheet for the exact sensor used, but this Figaro model seems very similar. Note the 1-2nA/ppm output current, necessitating guard traces around opamp input node.The Figaro appnote is here 

A nice discussion thread for these teardowns is located over at EEVBlog. Thanks to the folks there for the feedback!

 

 

9 thoughts on “Kidde KN-COEG-3 carbon monoxide/gas alarm teardown

  1. Greeting,
    I have your Kidde Co2 and explosive model alarm model KN-COEO-3. We recently had a power outage and my alarm keeps beeping every 15 to twenty seconds. I replaced the battery and plugged it back in and it still beeps. Is my alarm bad and will I have to get a new one? Or do I have to try another battery? I bought this unit in 2012. Is there a special battery I have to use? Please advise. Thanks.

      • These detectors are designed to stop functioning seven (7) years after initial power up due to the CO sensor’s life span. The sensor uses an electrochemical process to sense CO and it just plain wears out. It states this on the alarm and in the packaging.

    • I know this is all water over the dam for you, Dale, but just for reference (as I replied to Forest below), the CO sensor wears out after seven years AFTER INITIAL POWER UP so these alarms are programmed to stop functioning and beep every thirty seconds or so. If you bought this new in 2012, it would have still been under warranty and Kidde would have replaced it. But if the unit was seven or more years past the date of manufacture (shown on a sticker on back of alarm) it is possible that someone powered it up before passing it along to you. To answer the battery question, it is not a special battery. It is just a standard alkaline 9V battery.

  2. Thanks for this teardown. It gives me a straightforward path to implement a hack idea using Arduino.

    A family member recently fell asleep behind the wheel and found that her exhaust manifold had been leaking exhaust into the passenger compartment. It made me wonder why we don’t have battery-operated CO detectors in cars. They’re mandated in homes now, so why not vehicles where surely the long-term exposure risks are higher?

    I bought a Kidde KN-COPP-B-LP battery-operated unit with digital display. I just drive around with it, periodically checking the peak reading, then resetting the unit. I can go for days with zero-valued peak readings, but every few days they are higher: 11, 14, 28 as high as 40ppm. The peak reading feature is valuable, but it would be a lot more helpful to get a little beep and record the data whenever the reading is non-zero. When does it happen? And for how long? Is it happening in traffic? Is it right after parking in the garage? I’d like to know!

    My unit seems to use the same 2-terminal electrochemical sensor you found in your teardown. I was initially thinking of using Arduino to read the LCD display but your block diagram reveals a much simpler approach. The key is the FET which keeps the cell’s terminals normally shorted. I should be able to use this signal as an interrupt, causing Arduino to sample the output of the current-sensing opamp.

    If there’s more to the story – e.g. if the unit’s PIC controller does some sort of calibration routine, or maybe temperature compensation, or even if low readings aren’t guaranteed, I don’t really care at this point. My main goal for now is to be informed whenever the CO sensor reading is non-zero, while driving.

    Kidde makes a $200 unit that’s marketed for low-level exposure, but I bet you it uses the same analog front end. I would guess it’s a much lower-volume application so maybe the higher price is based on calibration costs during production.

    • A bit late and offtopic, but a better solution is not using gas cars in general. EVs don’t emit carbon monoxide 😉

  3. I am wanting to replace my RV 12v CO and Propane system with this model number. If I want to use 110V power which isn’t a huge issue because I am on a lake lot and plugged in 95% of the time. But it would be better if I could run it off 12Volt DC somehow as I already have the 12V DC power line right where I want to put this unit.

    What would be the easiest way to accomplish this? I see that the AC adapter steps down from 120V AC to 9v DC. I have read that as long as there isn’t a transformer in the circuit board that you could probably go from 12v DC to 9V AC without an issue. But being that it’s a calibrated sensor I am a little concerned with doing it this way.

    I am thinking the better way of doing this would be to get a 9V battery connector and plug it into the battery backup input. Then use a buck converter to step down the 12V to 9V DC. The thing I don’t know is how many amps this device would be able to take on the DC input side.

    Thank you in advance for the help…

    Maurice

  4. Hey there, KT.

    I’ve got a problem similar to @dB; I’d like to know if there’s a way I can be alerted to a non-zero reading when it happens, not when I get curious enough to check the peak reading data. Ever since I first bought the KN-COEG-3, I’ve only ever seen a reading of zero – and I live in a small apartment, so the detector is regularly within sight. I test at least once a month and I’ve never had a problem with that part of the detector’s functionality, however I would like to see *when* the highest levels were recorded, since the KN-COEG-3 appears to have some sort of ability to measure time (unless the 7-year replacement interval is determined based off of the EC sensor and not time itself).

    The goal is to implement a new way that alerts me at levels 10-30PPM, but without triggering the whole alarm code. Aside from the task of accessing the code itself, I’m worried the code may be locked, or, worse, unreadable. I’m a little new to “hardware hacking” as a whole, but I’ve been writing in various high-level and low-level languages for about nine years.

    If there’s any direction you can point me in, please, let me know.

  5. Not sure if this is the right forum for this question. Is it normal/possible to hear a faint buzzing coming from the Kiddie Carbon Monoxide and Explosive Gas Alarm when plugged in, model # KN-COEG-3? We just bought a new one and my wife claims she hears a buzzing sound from it (and that it stops when she unplugs, 9v battery is in it). I don’t hear it.

Leave a Reply to Forest Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.