Chemical warfare detection was never supposed to be a hobbyist project. Yet here we are: Air Quality Guardian by [debdoot], the self-proclaimed world’s first open source chemical threat detection system, claims to pack lab-grade sensing into an ESP32-based build for less than $100. Compare that with $10,000+ black-box hardware and you see why this is worth trying at home, even if this project might not have the nut cracked just yet.
Unlike your air monitor from IKEA, the device aims to analyze raw gas sensor resistance – ohm-level data most devices throw away – combined with temporal spikes, humidity correlations, and a database of 35+ signatures. Of course, there is a lot of work to be done here on the calibration side, and we don’t have any chemical warfare agents on hand to test against, so we have no idea how well it works, and we’d expect false positives. Still, the idea of taking a more granular look at the data coming off the sensor may bear some fruit.
(Editor’s note: edited with a hefty dash of skeptical salt.)
Featured Image by Arjun Lama on Unsplash
I truly admire the self-confidence of the person who wrote the readme, boldly explaining how this arduino + 8€ COTS sensor combined with ~900 lines of C++ is better than professional chemical warfare detection systems.
I’d also be interested to hear how they think they developed a system for detecting nerve gas/Sarin, and how they think they tested it to ensure the code is working, bearing in mind that the manual for the BME688/AI-studio says it has to be taught what signal a chemical will generate.
I’d bet quite some money that the readme was written by an LLM. Just look at the “Project Structure” part. And the fact that “dirtysalsa” has forked the DeepSeek-V3 repo.
It’s all talk and no proof, IMO. Whether it’s AI or human, there’s a very strong smell of “fake it till you make it” over there.
And I don’t think they’ve made it just yet.
I’m not sure we should be giving this airtime and legitimacy by featuring it here?
I hear you, but we can’t un-publish it. Or rather, we don’t — editorial policy. So let’s just chalk it up as a mistake.
OTOH, there’s actually some good discussion about how to correctly do the chemical sensing that’s developing in the comments here, so I guess that’s some kind of redemption?
Ah, I see this has been addressed more in comments below, but it’d be good to say something at the top of the article I think.
Having actually built a portable gas chromatograph for sarin detection (we used simulants), this device won’t be terribly useful without some form of separation. Raw sensor values aren’t useful for identification, you need retention time.
Even worse, they likely made an LLM like ChatGPT write it! The emojis are a dead giveaway
How did this go through the editorial process? This has 1 star on GitHub and reeks of regurgitated LLM outputs.
Agreed. We’re leaving this up for the record and for discussion, but I had an edit on the post to make it clear that the claims are those of the project’s owner.
Even Hackaday makes mistakes. Sorry about this one.
This is not the only “low quality” post which “slipped through” during the last couple of weeks.
:-(
Please stop posting stuff which smells fishy!
Agreed. There was another dubious project about a week ago. It’s not cool — our editors should be catching this sort of thing. I’ll remind folks.
Unless it’s a hack that relates to literal fish or the odors thereof. An interesting hack of fishing gear would be welcome, especially if it had dasblinkenlights.
That’s a whole lot of extremely AI code along with a hype-heavy readme and exactly no validation or detailed reasoning why any of this would even work.
The real information is here is:
PMS7003 particulate sensor ( plantower.com/en/products_33/76.html )
BME688 gas sensor ( http://www.bosch-sensortec.com/products/environmental-sensors/gas-sensors/bme688/ )
How does this compare to the SEN54 ( sensirion.com/products/catalog/SEN54 ) used in the IKEA product? dunno.
The SEN54 is a very simple sensor and can only give a simple VOC score. The Bosch sensor can also do VSC’s that the SEN54 doesn’t appear to be able to do. It seems to me that the Bosch BME688 is a much better sensor. For example, the Bosch BME688 is capable of detecting H2S that the SEN54 is not capable of doing that. H2S would be the primary thing I would test.
Fart wars in the cube farm!
No women on the whole floor.
Bored geeks, banging out DB/bean counting code.
The vegetarian started it.
It escalated.
We were eating for war.
It ended when a PHB ‘detected’ natural gas taggant (not H2S anymore), cleared the building, which had no gas service, but a number of ‘gas leaks’.
We stopped after that.
The look on the PHB’s face when the fireman told him ‘no gas service’ was priceless.
X-hot KimChi, hardboiled eggs and old Milwaukee beer!
Don’t do it.
Sorry, but this whole thing stinks. (Hah. See what I did there?). My understand of these sensors is limited, so please correct me if I’m wrong.
The sensitivity of the detector seems to be controlled by the temperature of the sensing element. Higher temperature = higher sensitivity. However, from what I can gather from the datasheet, it simply detects ANY VOCs which are reactive enough to do stuff to the sensor. I fail to see how on earth you can get a “signature” which allows you to identify a particular compound. Compare that with proper detectors which have a detection method that is closely matched to the compound in question – e.g. an enzyme or bacteria which will only react with an organophosphate and nothing else.
Unless you have access to the compounds in question to actually test the sensor, I fail to see how you could determine the “signatures” for each or have any faith in what the sensor is saying.
Next, how the project is presented. Reading the github page, it sounds like the sort of sensationalised guff that an AI would generate. Sure enough, pasting it into 4 different AI text checkers, they ALL said it was 100% AI-generated.
The user is “dirtysalsa” based in Kolkata and they have a twitter account at https://x.com/dirtysalsa and a website at https://www.dirtysalsa.com/ (seems to be how-to videos on Salsa dancing). Their twitter feed has a whole conspiracy theory feel to it – numerous sensational posts about “heavy metal attacks” or “neurotoxin” attacks, tagging the UN, Kolkata police. Believes someone upstairs is spreading poisonous gas etc. etc. and that’s why they built this sensor.
Generally, Hackaday, please have a good look at who’s behind this.
Yeah, I’d never head of “chemical harassment” before but it made my BS detector ping. Googled a bit, and found only people who believe that the smell of fabric softener in a laundromat is an attack targeted at them personally, and that other people’s presence in public is specifically designed to inconvenience them.
We didn’t call it that, but there was plenty of “chemical harassment” going on when I was in elementary school. Unlike the “X-hot KimChi” above, we were acting our age.
Well yes – BME688 can’t detect CO2 – it is just estimate based on the amount of VOCs and an assumption that they are produced by humans breathing. This is just BS. So the only thing they can measure is VOC concentration (badly, the sensor is good for rough estimate and thats that) and dust. The rest is just AI generated slop and conspiracy theories.
Please stop this – it is like publishing articles about new devices to measure flatness of earth to prove that the earth is flat or something.
The readme on the github repo screams LLM-generated to me. It’d be interesting to see any testing of the device with pesticide or something given the readme says treat any warnings from this doohickey as a serious threat.
Red flags:
1) Github description is likely AI-generated (I pasted it into 4 different checkers and they all said 100% likelyhood)
2) User’s twitter account (https://x.com/dirtysalsa) has a total conspiracy theory flavor to it. Believes someone upstairs is poisoning them with gas so they built this detector to check it. I kid you not. For example: https://x.com/dirtysalsa/status/1964072290540216633
Why do paranoid people have the most entertaining and humorous Twitter accounts
Because 1) most of the rest of us have better thing to do with our time than create entertaining and humorous Twitter accounts, and 2) absurdity is generally funnier than normal, sane life
Another red flag: the “Project structure” part of the README lists a very impressive tree of files…most of which don’t exist.
anyone who actually worke din the field with RMOX sensors will tell you: this will onyl work with oen sensor, as the sensor to sensor variation is very very wide. Also age will quickly alter resistance response.
the effectiveness of this seems….. dubious
Its hard to believe any amount of hackery and AI magic can turn a $20 sensor into a CRBN detector.
The BME688 datasheet says its for things like detecting spoiled food, bad breath, and dirty diapers…. certainly unpleasant but not exactly chemical weapons.
A quick peek the creators twitter show some pretty out-there beliefs and suggests that they might not be well. That the effectiveness of this device in detecting airborne chemical weapons might not be reflective of consensus reality.
In short, someone should take a skeptical look at this
Mountains of AI generated fluff in the readme, no prototype, no demonstration. Why would you post this?
From a superficial “sniff test”: Heidi Ulrich last posted an “article” 20 days ago….
Okay, maybe just on holiday but I wanted to throw a sniff test in here. ;-)
Anyone looked to make a budget high specificity sensor should look into molecularly imprinted polymers and sensor arrays (i.e. if you wanted to distinguish toluene/benzene you could imprint a polymer with both then overlay a voc sensor with both and a differential signal between the two can give you better quantification. Of course as far as I know MIPs are not typically as selective as things like gold nanoparticle sensors with specific ligands.)
Good luck getting your hands on an appreciable amount of sarin to imprint the polymer, of course.
Funny thought – could you extract the insect version of acetylcholinesterase from a bunch of insects, use that to get your detector working for Bug Spray ™, and then replace that thin film with a smear of actual acetylcholinesterase and hope you’re close enough? I mean, you can always hope, but you know what I mean. (I’m thinking SAW detectors, which are, granted, Old School AF)
Yes, but I’m afraid if we keep going this direction we’ll just end up smearing liver pate on a piece of copper foil and call it a day.
It’s a shame, too, because the way real sensors for these agents work is definitely worthy of hackaday. Very good intro: https://pmc.ncbi.nlm.nih.gov/articles/PMC5750728/
Not an expert here, but apparently any kind of organophosphate detection on a budget is very hard and requires a whole lot more than offered here.
I’m pretty sure all nerve agents fall into the organophosphate category together with lots of (all?) insecticides.
Also, chlorine is way easier to synthesize than any of the nerve agent chem weapons. Pretty sure phosgene and mustard gas are too.
Yes, the LD50 on them is much higher but they were incredibly effective in WWI anyway.
As others have said, not a good project but also, not even properly focused on real world risk.
With all due respect to the editors: Leaving up an article that is full of BS isn’t helping. You should publish a withdrawal notice and mea culpa. Then work at not making the same mistake again.
Meant to say retraction not withdrawal.
I agree, but Eliot Williams has already, and with regret, stated above that un-publishing articles isn’t Hackaday editorial policy.
And now, of course, this article will be scraped by an LLM, ingested into its corpus, and the next generation of AIs will be confidently telling naive and credulous people how to build a $20 chemical warfare sensor with a citation… and the circle of dross will continue.
Jeez not a single comment here mentioning the need for chromatographic separation. There’s no such thing as a selective sensor. In order to identify the target analytes, you’d need gas chromatography to separate the sample, and you’d need to calibrate the instrument against your target compounds to generate the calibration curve. I did this professionally for 10 years, this project is bunk.