Gas Sensor For Emergency Workers

Gas sensor "grenade" that may save lives instead of taking them. The sensor can be thrown into dangerous areas to remotely report levels

Similar projects worth following
In my professional life I have used many different gas analyzers for confined space entry as well as emergency response. These units are very expensive and require the user to be able to read the display or be close enough to hear the alert generated if an unsafe condition exists where human entry would need other measures.

I made this to be a very cheap and easily reproduced product which can simply be thrown into any uncertain environment such as a confined space, building with a possible gas leak, fire etc. Any potential entry person can just toss the ball into the area and remotely receive the gas and smoke levels via voice from several hundred meters away.

I used an MQ2 smoke, LPG (Liquified Petroleum Gas), and CO (Carbon Monoxide) sensor. I used freely available code to get the sensor working with an Arduino Nano. Then taking an Ultra Cheap 433MHZ transmitter to output real voice transmit to any basic radio within the area.

This project is fully open-source! Enjoy

This project is not only for emergency workers- Every day thousands of people work in industries which expose them to the hazards of "confined space". The difference between life and death in these areas can be as simple as as a few PPM deviation from standard atmosphere. This project is dedicated and given freely to all of them...

Using the Arduino I was able to easily measure the gas levels. Using the Talkie library I was able to then translate these values into true synthesized human voice (with NO special boards/modules) The transmitter accepts the voice output and directly transmits it out on 433mhz to ANY receiver. It is sending this as an AM transmission- but surprisingly any FM receiver such as scanners/handy talkie radio, EMS radios etc have no trouble receiving the clear voice values.

Then entire package fits nicely into the "ball" form-factor. This enables anyone to throw it a significant distance into a potentially harmful area. No additional equipment required and the best part:

The user never enters the potentially hazardous area whatsoever.

2015 Hackaday Prize Semifinals Video:

Here is a more technical demo:

Video Demo

Updated videos and code walk-through can be found in the links. Further info can also be found in the GitHub repo which includes all the code, design files, PCB layout and design document.

Here is a demo I did on the Adafruit Show and Tell show. Fast forward to 09:46 as the direct link doesn't seem to work here:

Video covering the basics and full Arduino code walk-through/explanation so anyone can mod the project to suit their needs:

I decided for others to be able to recreate this project easily for themselves- a full video tutorial series would be of great benefit. I know I learn much better from good video versus a static page of instructions so here is the full electronics and PCB step by step assembly tutorial:

Here is the final assembly into the ball and some quick testing/upcoming changes needed:

Upcoming mods on the project will include a higher quality sensor which will likely end up being multiple sensors to more align with industry standard gas analyzers.

Hopefully this project will allow anyone, anywhere to reproduce this tool cheaply and easily anywhere in the world!

  • 1 × Arduino Nano
  • 1 × MQ2 Gas Sensor Measures Smoke, CO and LPG gas levels
  • 1 × 1S LiPo Battery if using Power Boost (Also can use 2S direct to VIn) Any cheap battery will do
  • 1 × PowerBoost 500 Charger from Adafruit This makes it extremely simple and adds USB charging easily
  • 1 × Dog Chew Toy Enclosure Dollar store enclosure made to tolerate the worst punishment

View all 6 components

  • Long overdue update

    Eric Wiiliam02/03/2017 at 17:38 0 comments

    As some new people are following this project each week I thought I'd post that last year it did end up receiving 4th place in the Hackaday Prize 2015 contest!

    Fast Forward to 22:55 Here:

    I reached out to MSA equipment a few times in hopes they would add the project to their line of equipment but they did not respond to a single mail. In speaking to one person I got the distinct impression they did not understand the concept of open-source and could take the project free of charge.

    It may have also been the fact that now the design was in the public domain it would not be possible to protect it via patents :)

    Hopefully someone will produce the gas sensor in the future and perhaps save some lives. This year I saw several instances (again) where multiple people died trying to rescue each other. Check out this recent example from January 2017


  • New Finals Video

    Eric Wiiliam10/25/2015 at 21:42 0 comments

    Well here goes my Finals video submission. I want to thank everyone for the support and kind words so far on this project.

    Thanks to Hackaday for such an amazing contest this year and thanks to the judges for all your hard work!

    I decided since I already have full overview vieos, assembly tutorial videos, code explanation videos etc that I would do more of an overview video and some insight into how the project came to be, its uses and some history on me personally.

    I think it turned out fairly good and covers some of the things I've been meaning to explain but never seemed to get around to doing.

    Here is the video:

    As well I placed all of the videos into one playlist on YouTube so people can find them easily here:

    My hope is the project truly makes a differnece in the world. Best of luck to everyone in the 2015 Hackaday Prize. There are some amazing projects this year!



  • New Code Added

    Eric Wiiliam10/14/2015 at 21:48 0 comments

    Thanks to everyone for supporting this project! I'm really happy it made the top 10 and will hopefully make a difference in the world.

    As I mentioned before in the project, the MQ2 sensor is great for a "proof of concept" but needs to be updated to a full sensor suite to replicate industry gas analyzers. One problem I have had is that when the sensor is flooded with a gas like LPG- it false triggers on the remaining ones whereby relaying potentially incorrect levels.

    This isn't a huge deal for basic project sharing but I decided to simplify the code to a basic "Go" or "No-GO" indication. This would trigger anyone to be ready for all 3 situations if alert is indicated.

    New code is added to GIT with a simple annunciation- it repeats safe if all are 0 levels and repeats "Alert" 3 times any time there is any indication of levels above zero from the sensor.

    I really wish I could afford to get a proper sensor system but in the interim this is one more option to take the project forward.

    I will try to do a final update video soon covering some "insider info" as to why I truly love this project and why I wish I could have used it in daily work for many years. It does indeed apply to many fields of industry and I can't believe a commercial unit like this is seemingly not yet available.


  • Final Video Before Judging

    Eric Wiiliam09/17/2015 at 23:42 0 comments

    Here is my "promo" video of sorts. My hope is that it will help others to understand the motivation and application behind the project. I am pretty happy with the way it turned out :)

    I am still on the hunt for a proper sensor suite to replace the MQ2. I definitely want to make the unit capable of measuring all the standard gas and air quality levels that are used for commercial units. As the cost on these is extremely high I may just mod the code as mentioned before to give a strict go/no-go indication of levels with the MQ2 as the invidual level reporting doesn't work well when the sensor is overwhelmed.

    Let me know what you think of the video and project. Take the design and make it better!

  • Final Assembly Video Tutorial

    Eric Wiiliam09/17/2015 at 01:27 0 comments

    Finally got around to shooting the final assembly video and some testing. Overall I am super pleased with the results of this project. At the heart of it- I truly believe there is a product which can make a real difference to real people all around the word. Getting it out there completely open-source via Hackaday was just amazing timing and I couldn't be happier.

    In the video you can see I switched around the transmitter module. In the next revisions I will need to get a better gas sensor (commercial grade) but in the interim I will just remove the individual gas readouts and make this unit transmit a simple SAFE, WARN, or DANGER call out for all 3.

    Also thanks to comments here I will add an RGB LED so it will provide a visual indication as well in case the user is within sight and wishes to use that as an indicator. As well I will add some battery voltage monitoring with LED and voice call out as well. Very cool :)

    Make one, make it better, share it back with the world! Cheers

  • Full Assembly Tutorial Video

    Eric Wiiliam09/11/2015 at 23:17 0 comments

    Finally finished up the assembly video so others can easily reproduce this project for themselves. Between the assembly instructions, heavily commented code, design files, PCB layout and general project updates I think just about anyone should be able to build this project now.

    The OSH Park PCB's worked amazing! I am super happy with the results considering I had zero experience in Fritzing before this project. The Fritzing files need to be cleaned up a bit for both my Hackaday projects but overall they do the job quite well.

    There is the full assembly of all the electronics/PCB components. Enjoy!

    Next video I'll show the assembly into the ball and some further testing/fun.

    Build one yourself. Make it better. Share it back! Cheers

  • Back to work! New Gas Sensor Needed

    Eric Wiiliam09/04/2015 at 21:26 0 comments

    Just got back from 2 weeks of work in Europe so the project is behind a bit more than I would like. Did some more testing today and I have confirmed that the MQ-2 sensor indeed is not perfect for taking this project to the "next level" in commercial applications. It performs great but I can attest that with my code it has an annoying weakness with discriminating between the 3 levels if saturation is high.

    With that said, it does perform great as long as you don't need discreet levels. It seems to trigger just fine- only the measurements can be unreliable as it canl announce a gas or level that isn't fully accurate (basically 2 levels will announce but only one is truly in the test environment). I am still trying to source a commercial grade sensor that I can afford to integrate- but for now I think I may just mod the code so it is strictly a go/no go indication of a dangerous condition. For this it seems to work great! No issues at all with even a slight amount of smoke or gas.

    I will also try modding the code to attempt better resolution between the gasses. I have my doubts this can be done reliably. A proper commercial grade sensor seems to be the path forward but I am willing to try :)

    This is simply the best part of inventing for me- working out minor hurdles and ending up better than the original target.

    Next up a video of assembling the unit with my custom PCB's linked on this project. First test seems to work great!

    Full assembly video tutorial coming soon! Cheers

  • Custom PCB's Are Here!

    Eric Wiiliam08/17/2015 at 13:23 0 comments

    Received the custom PCB's from OSH Park and they seem fantastic! The plan is to assemble a couple more prototypes and make sure the PCB version works as well as the breadboard ones. I don't anticipate any issues but will see if Mr. Murphy has found a way in...

    I am still hunting for a higher quality sensor or a sensor suite as the MQ2 isn't the best choice for the longer term. Adding more gasses such as basic O2 would make this unit truly a beast. With the basics already done- these would be simple mod's. Will also add more LED lighting to make it easier to retrieve in the dark.

    So far it works as inteneded and can't wait to see some other people take the design forward in the open source community.


  • GitHub Repo Created- All Files Posted!

    Eric Wiiliam08/05/2015 at 20:22 0 comments

    Finally got all the files posted to GitHub for everyone. Hopefully this will make it much easier for anyone else to take this project and make it their own!

    In the repository you can find the full Arduino source code, the master Fritzing design file, PCB design files as well as the system design document.

    PCB has yet to be tested and is noted in the "issues" section. I should receive the boards from OSHPark in a few days so I can do the final tests. So far the project does exactly what I desired!

    Others should now be able to easily reproduce this wherever they may be. Hopefully the GIT repository will make it easier for future modifications and sharing of the project.


  • Custom PCB Finalized

    Eric Wiiliam07/28/2015 at 05:33 6 comments

    Finally got around to designing a custom PCB for the gas sensor. I am entirely new to using Fritzing so I decided to simply use the Arduino Nano as it was without breaking out the chip, supply etc. This isn't the best use of space but should make this super easy for anyone to replicate.

    The PCB design went really quickly and I was able to export the design files in an hour or so:

    Off I went to the OSH Park website to use the credit I received from an early bird prize in the Hackaday 2015 contest. The PCB's were really cheap and I ordered- but 5 minutes later I found a serious error in the design- so I re-ordered again :)

    Version 2.0 looks promising and once I have verified it works I will post all the design files so everyone can create their own version. Super happy with this project and loving that it has been well received with the open source and electronics community.



View all 14 project logs

  • 1
    Step 1

    Gather all the parts listed. Fabricate the custom PCB if you wish from the supplied files (all posted on GitHub). You can use some perf-board as shown below to easily replicate as well.

    Due to the limited number of connections you could also get creative with wires/jumpers dirctly to the Arduino itself...

  • 2
    Step 2

    Attach the MQ2 signal pin to Arduino pin A0 as defined in the code here:

    Attach the VCC and Ground pins of the MQ2 sensor to supply and ground. Using the custom PCB this is done for you here:

    The fourth pin is not needed but you could use it for the digital output from the MQ2 if you liked.

    You can also follow along with the video PCB assembly tutorial here:

  • 3
    Step 3

    Attache the signal pin of your transmitter module to digital pin 3 on the Arduino

    Save the receiver module for another project.

    Attach the VCC and Ground pins for the transmitter to your VCC and ground connections.

    *NOTE* Please remember to follow all applicable rules for radio transmission in your area. Some areas may require an Amateur Radio License even though the TX power is extremely low. Check your local legislation firs or substitute a transmitter on a different band if needed.

View all 8 instructions

Enjoy this project?



christopher.glossner wrote 03/19/2016 at 00:16 point

I just have found this Project and didnt read much about it. Since im working in that same field  i have some Questions. Whats with Methane ? Often you have Methane inside closed spaces especially in Pipes for contanimated water. Whats up if the gas area you are Measuring is explosive ? 

  Are you sure? yes | no

Eric Wiiliam wrote 11/03/2015 at 17:39 point

Thanks very much!

  Are you sure? yes | no wrote 11/02/2015 at 14:47 point

Great job Eric. A project that can make the world a safer place. Thanks for sharing!

  Are you sure? yes | no

Scott Vickers wrote 10/06/2015 at 22:28 point

Very good project and I think you are really on the right path.  I may want to loointo something like this as a fun project with a real world application.  

One word of caution is that you need to think on the lines of a intrinsically safe system.  You do not want the source of the explosion to be the nice little gas sensor you just tossed in the confined space.

Also, to be used for confined space entry or testing atmospheres as you want it to be able to do you will definitely need to ad an O2 sensor.

Keep up the good work.

  Are you sure? yes | no

Eric Wiiliam wrote 10/06/2015 at 23:34 point

Thanks Scott.  appreciate the comment.  I'll add a bit of a long form reply here in hopes others may read it.  You are indeed correct that this unit is not intrinsically safe.  In one of the videos I heavily caution that this is in no means certified for any IDLH atmosphere (I also mention those not understanding what IDLH means should not be using the device haha)

I actually hold numerous certifications for emergency response, trauma treatment, confined space entry, confined space rescue, high angle rescue etc etc-  Hence the project being born.  I was simply sick of the commercial gas analyzers we were using and the limitations thereof.  It baffled me while responding to a rescue situation- that I had to use the same exact equipment which caused the need for a rescue situation in the first place (if that makes sense).  

The project needs a proper industry standard multi gas sensor in order to proceed into all industries that would truly benefit.  The bigger ones would actually be utility workers, miners, sewer worker etc etc which I truly failed to display here but I did so on purpose as the majority of the population simply doesn't understand the dangers of simply entering a building, trench, vault, or  enclosed space of any kind. By stressing the emergency responders I hoped there would be higher odds of people taking this project forward.

At the end of the project I was able to prove I could build exactly what I needed to keep the guys I was responsible for much safer than the air monitors we were using (just need a better sensor as mentioned before).  I simply don't have the funds to support getting a proper industry standard sensor suite (as you probably know they are crazy expensive) or pursue certifications of the unit for industry use.

My hope is that putting this out open-source will allow others to take it forward (even if it is a big manufacturer) and truly give us the tools to protect lives.  For several years I resorted to using on-person monitors to monitor areas we want to enter- this is just silly.  But we simply don't have a choice in industry right now (that I know of)

Thanks so much for the feedback.  It is truly appreciated.  I will try to do another video explaining this a bit further.  I hope you build something based on this and take it forward. 

*edit* Sorry for the long winded response :)  Figured I would save a bit of typing by putting it all in one place even if it was a bit random...

Thanks again Sir.  Cheers

  Are you sure? yes | no

qquuiinn wrote 08/18/2015 at 04:22 point

You should check out the MICS series gas sensors, they're very small and sometimes pack two or three different types of gas sensor into one module!

  Are you sure? yes | no

Eric Wiiliam wrote 08/18/2015 at 12:28 point

Will take a look.  Thanks for the tip!

  Are you sure? yes | no

qquuiinn wrote 08/18/2015 at 20:52 point

It sounds like the MICS-4514 is what you are looking for.

  Are you sure? yes | no

jimbo welsh wrote 08/05/2015 at 22:18 point

Nice work Eric! One suggestion:

Add flashing LED's and a detachable leash for ease of recovery during hectic events in dark places. If you can manage RGB LEDs in stoplight colors for safe/warning/danger, all the better.

Right now you couldn't toss this into a confined space with water. With a leash you could dangle it in an opening or hang it on the wall and visually notify of hazards at a glance without requiring secondary equipment or using rescue channels.

  Are you sure? yes | no

Eric Wiiliam wrote 08/05/2015 at 23:02 point

Great idea on the LED's.  I meant to add some before PCB fab but alas, I missed it.  Next rev for sure.  The leash is something definitely needed for the exact reasons you mentioned.  I didn't mention it in the video etc because it's something I just take for granted we all do when using gas analyzers- we often use poles with lanyards etc to "dangle them" in the area we need to sample.  I've used a good old fishing pole more than once :)  It should be called out I suppose.  Great input!  Cheers

  Are you sure? yes | no

davedarko wrote 07/29/2015 at 22:06 point

wait what, an arduino talks over 433MHz about gas sensor values? I never realized how much effort you've put in this, awesome! Good luck with the prize!

  Are you sure? yes | no

Eric Wiiliam wrote 07/30/2015 at 01:02 point

Thanks very much!  Yep works as intended.  Just mashed some different projects together and got exactly what I hoped for.  Cheers!

  Are you sure? yes | no


[this comment has been deleted]

Eric Wiiliam wrote 05/06/2015 at 20:46 point

Thanks very much.  Cheers

  Are you sure? yes | no

Mateco wrote 03/20/2015 at 18:51 point

Im a real noob into technology, so i dont know if my word means something, but i think its a really great and original idea.

  Are you sure? yes | no

Eric Wiiliam wrote 03/20/2015 at 18:54 point

Thanks very much.  It does mean plenty :)

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates