One of this blog readers recently acquired a Radon detector as I had mentioned earlier. Specifically, the Airthings Wave. And wow, I am glad he did. As you can see from his screenshot, he first put it in one area in his basement (Waterloo, Ontario, Canada), and then relocated it to nearer the sump-hole. And there is a peak of ~1300Bq/m^3 (recall that the 'safe' limit is under 200).

Radon is a tricky beast. It moves in ground water (and we had a bit of a thaw yesterday). It comes in through cracks and holes. To check for it, you need to find the worst spot (usually the least ventilated area, and usually near your sump if you have one. Perhaps a cold room as well). And, it takes a bit of time to measure, you can't just snap it in an hour, it takes days or weeks to get accurate.

Health Canada has a nice FAQ on Radon, and a larger site with more information. 3000 people per year in Canada die from this, but many many more get lung cancer or other affects from it. Don't be one of them!

It seems BestBuy has removed the product (boo), but you can still get it from Amazon here.

Feel free to add in the comments if you have a Radon measuring system in place, and what your avg/peak is. And please remember, move it around a bit to find the worst area (least circulation/most moisture usually). E.g. don't place it beside the air-exchanger on your furnace and feel secure 🙂

Tagged with: , ,

So an update on the earlier radon gadget. I received the BLE sniffer widget, but, wow, its a bit complex to use. Keeping an eye on the basement Radon, and you can see, it fluctuates quite a bit. We are well under the 'safety' limit (which there is some discussion on, some being of the opinion there is no safe limit, others that if its similar to the outdoor levels you can't do much better).

In Europe, the consensus seems to be 100Bq/m^3 is the threshold to start mediation. Here in Canada the consensus is 200Bq/m^3. My peak is 53Bq/m^3, with an average around 30. So good so far. But its deep-winter here, once spring starts and ground-water flows, maybe I'll have an issue.

So, worried about your basement? A little more bluetooth gadgetry and you can know for sure. And yes, that test you did once years ago is meaningless, you need to test all the time, see my results.

Tagged with: , ,

OK, so i ran the Airthings Wave for a few weeks, I ended up with an average of ~20-30Bq/m^3, which is below the Health Canada worry line of 200Bq/m^3. Now, its time to look at how to make this integrate with my Home Assistant. The device uses Bluetooth Low Energy (BLE), and is integrated via an app on the phone. I have ordered a BLE sniffer, but while I wait for that, I have decided to try the 'hci snoop debug' mode on Android. This outputs the HCI frames (in a way that wireshark can read?). On Android Nougat and later it does not output this as a separate file (/sdcard/bt_snoop.log), but instead puts it in the general 'generate a bug report' log. The method is in the code here. Inside the larger log file you get a chunk that looks like this:

--- BEGIN:BTSNOOP_LOG_SUMMARY (85476 bytes in) --- 

You would be forgiven for thinking (like me) that this is uuencode. Its not. Going back to the code that generates it, it does:

push preamble to buffer
deflate buffer
base64 buffer
printf footer

OK, so it uses zlib. I should be able to rip the headers off, run it through base64 -d, and then run zlib-flate -uncompress, right? Sadly, that gives some error on the decompression.

And you would think this would be an obvious google search "android unpack bug report logs". But I must be missing something. It must be this or this (btsnooz, see here). But that gives me the same error. Hmm.

Ah, i see, its this one here, Got it. And here is the file (and you can open this in wireshark) btsnoop. OK, who wants to help decode it? I unpaired, started capturing, paired, let it run for >1 hr to get a radon measurement, and dumped this file. You can see the two devices (Pixel 2 XL <-> TexasIns) talking.

OK, put on your peril-sensitive sunglasses, crack open that wireshark, and open the log file. Race you.

Tagged with: , ,


Earlier this week someone brought up Radon gas. He was somewhat surprised that we all knew about it, but we didn't know enough it turns out. Health Canada has a great resource on it here, including a survey of the prevalence in homes. Radon is the leading cause of lung cancer in non-smokers, and the #2 in smokers, causing ~21000 deaths in the US last year. In a nutshell, natural uranium & thorium decays to lead, and enroute, produces Radon gas.

Now, i was of the impression that since I tested when I bought the house (home inspection), that I was not at risk. Turns out its seasonal (since it follows groundwater). Also, you need to test over a much longer period than I did (~90 days vs the 2 days I did). Ooops. The recommended maximum Radon is 200Bq/m^3, and 6.9% of Canadian homes are there!

Now, I had thought this was more of a regional thing, but it turns out its not. Your neighbour can be fine, and you can be at risk. So, we have carbon monoxide detectors, but why not Radon? The normal test is to take a box of charcoal, but it in your basement for 90days, then ship it to a lab to sniff it. Well, this is a bit of a pain for ongoing metrics.

Enter the Airthings Wave. Designed in Norway, Assembled in Tunisia, fulfilled by Amazon, and delivered by Canada Post. And now the subject of some hacking by me!

OK, so this is bluetooth only. Hmm. So it logs locally, and periodically you open an app on your phone and fetch the stats. For some reason you need an online account with a password. OK, we'll hack the bluetooth stream later and figure out how to integrate with Home Assistant. But first lets see whats inside. Hmm, deep-recessed pentalobe security screws, obviously don't want me in here. No problem, just need to find the right bit... we're in.

OK, below some pictures, I'll post more once I start in on it. After the pairing and the requisite firmware update for the device, we end up with a fairly nice-looking (if basic) app. It measures temperature/humidity/radon. And it syncs periodically to the device when you ask it to.

OK, lots of pictures of the naked innards. It is using a TI MSP430 as the processor and a LSR SaBLE-X for the BLE (probably this TI reference design of the TI SimpleLink CC2640). Enjoy!

Tagged with: , ,