Buy PM2.5 Inserts Instead of N95 Masks

One hundred PM2.5 (N95 quality) filter inserts costs just twelve dollars.

For a face mask to be rated N95 means it must filter particulate matter down to 2.5 microns (PM2.5). PM2.5 covers both viruses and smoke particles.

The problem today is that medical professionals need the N95 masks and hoarding them will get people killed. If you’re staying at home, there are great alternatives which are even better for homes than N95 masks and cost just a few dollars. As fire season gets started, this is more important than ever.

For those who want face masks for going out, there is another alternative to hoarding needed medical supplies. PM2.5 inserts can convert any cloth mask into a PM2.5 mask!

It’s also much cheaper. One-hundred PM2.5 mask inserts costs just $12! Using these inserts is a great, responsible, safe alternative to hoarding needed medical supplies while still getting great protection from both covid and smoke particles.

Razer Stealth 13 2020 Review

My old laptop lasted me four years to the day, according to a Facebook memory on the day this one arrived. I like to go for the highest quality in the most convenient package and then stretch it as long as I can. The Razer Stealth 13 2020 was the obvious choice for something new in 2020.

(Credit to the Unicorner Burning Man Camp for the “Don’t tell me how to burn” sticker and REI for the California sticker.)

My favorite laptop in the past was definitely my Asus C302CA. I liked that it had touch screen, 1080p, USB-C charging, a long battery life, and it was very thin. The downside was that it is a Chromebook so no graphics card, and no pc games.

Thin with full ports

This laptop is exactly the same size as that Chromebook. It’s 12 inches, same thickness, same touch screen, same USB-C charging, same long battery life, but it also has 4k, a real graphics card, and it runs Windows. This is a high-end gaming desktop in the form-factor of a Chromebook. Because it’s the same size and uses the same charger, I get to keep using all the same accessories and even the same heavy duty protective case in my backpack.

It also comes with two full-size USB-A ports in addition to two USB-C ports so you can still use all your legacy devices. This is another advantage over the Chromebook which only had the two USB-C ports so you would need a dongle to use USB-A on the Chromebook.

Ridges and Cooling

I especially like the cooling system which has these ridges on the bottom to separate the airflow from the intake and exhaust. There is also a nice filter grill covering the fans and the exhaust so it’s very easy to keep them clean without taking the laptop apart.

Razer 13 2020

Overall I really am impressed with how great this laptop is. I’ve been using it for a couple months now, and I would give it 10/10.

My Choice Of Accessories

Gallium Charger

I upgraded my charger to the brand-new next-generation Gallium charger from RAVPower. This is a really cool new technology that is much smaller than the older brick chargers but still gives you 90 watts of power via USB-C. It also comes with a second port which I will use to charge my phone. Both ports are smart and decide the correct voltage and amperage for each device. Very cool, very smart new charger. I think we will see this Gallium tech taking over the charger market.

I also picked up this Anker hub. There are a couple of things to keep in mind here. In order to charge with USB-C, you need to make sure your hub supports Power Delivery (PD) or it won’t give you enough power to the laptop to actually charge it. This hub has PD plus HDMI out and two USB-A ports as well as a memory card reader. Basically this hub enables me to use a full desktop workstation with all the accessories and just plug it all into the laptop with a single connection. You can see more about that here.

Really 4k 12″?

In the future I will definitely not get 4k on a 12″ laptop. It’s just too small. It’s very hard to see the fine details on the screen when they are that small. And your fingers are too big to use the touch function on such tiny objects. I’ve resorted to using it in 1080p instead of 4k. I paid something like $300 extra to get it in 4k so there’s an easy way to save $300 off the price.



I put this battlestation or “yaddlestation” together for several reasons related to a number of projects but I had some questions about this setup so I wanted to do a sort-of roll-up post about all of it. Notice baby yoda watching from among the plans and inspiring the name.

First there is the computer which is actually a laptop connected to a USB-C dock. Basically anything with a USB-C port can drive all of this; a phone, a laptop, a chromebook, etc. Once a device is plugged into the dock, it puts out HDMI to the TV as well as USB to a hub. The hub drives several accessories;

The desk is a Husky sit/stand desk which can go up and down. The TV is mounted via this stand.

Next to the desk, you can see a terrarium containing a number of ferns as well as several other houseplants including spider plants, pothos, and parlor palms. These are sitting on an Ikea 2×2 Kallax shelf. The terrarium also contains this fogger which has the side effect of improving the humidity in the room. The lights for the plants are these high-intensity led spot lights. I made the shades with black paper.

Behind the TV is an RGB led strip light which is using this wifi controller. I like this controller because it works without the cloud so it is very easy to work into various other projects and it would work off-grid. It also connects to IFTTT and Google. I also set up the macro keypad to run the scenes for the lights and fan so it’s easy to control everything in a quick and simple way.

Between the desk and the shelf, there is a 20×20 box fan which has behind it a 20×20 whole-house filter rated at the same quality as N95. This will come in handy once the fires start.

I also have a Google home hub which can control all the smart things but which sadly will not work without an internet connection. I am therefore considering replacing it with a Mycroft.

Power Resiliency

The first stop for electricity is a 1500 watt UPS. This protects all my stuff from surges as well as from outages. The second stop for power is the smart plugin strip which controls the plants and the filter/fan. This means when my alarm clock goes off, everything automatically comes on and when I go to bed, I just say the word to the Google home hub in order to turn off the lights and turn on the filter/fan.


I have a Synology NAS on the shelf to the left side which has eight terabytes of documents and media stored on it. A power outage is a serious danger for a NAS, so the UPS allows the NAS to operate safely and shut itself down without losing any data in the event of a a power outage.

The NAS is running Plex plus BTSync which automatically mirrors all my devices onto the NAS in real time. This makes it super easy to access any photos I’ve taken or files I’ve downloaded regardless of which device they are on or which device I am using. It also means nothing ever gets lost. I mirror the NAS to dead storage on an external drive once a week and run antivirus and anti-cryptolocker software on the NAS to make sure my data stays safe.

Network Resiliency

I have a simple unmanaged gigabit switch uplinked to a mesh gigabit wifi node from Google. The NAS and the laptop’s dock connect through the switch to the mesh node. Both the NAS and the dock have static IPs. This means basically that the connection between the NAS and the laptop is not dependent on anything except the gigabit switch so even if there are internet issues or a power outage, the NAS and laptop continue to work together as normal.

Because the laptop and NAS use very little power, they could run off the UPS for many hours without outside power and internet. This is a huge improvement over other designs I’ve used in the past. I decided to experiment with this design because I intend to eventually move into an RV and travel indefinitely. This design means it will work even if I’m in some remote area with no internet or outside power.

I think in the future once I get an RV, I will move towards a more hierarchical network architecture with a load-balancing router at the top in order to automatically switch between satellite, GSM, and wifi as sources of internet.

Moon Catcher

CJ Trowbridge


Astronomy 2

What planet would you colonize first? Why and how?

Mars is the obvious choice but there are a few problems we would need to solve first.  It needs a magnetic field, and some oceans.

Having read science fiction for decades and considered this question at some length, I keep returning to Winston Duarte’s published thesis “Logistics-Based Strategy in Interplanetary Conflict” within the Expanse universe. There is something very germane that even he seemed to miss which does come up later in the series; transfer points.

The spacecraft systems required to reach orbit are essentially non-overlapping with the systems required to travel between planets, and then land and take off again. Elon Musk is taking the same approach as The Martian did; one rocket to get to orbit, and another rocket to shuttle back and forth between Earth and Mars. What’s interesting is that even he does not consider the moon as the obvious transfer point where a permanent settlement could be built and then serve as a natural place for the rockets to meet.

Building and controlling transfer-points bears not only enormous economic and political significance but also dramatically empowers growth and expansion.  In a later Expanse book, transfer points are constructed deliberately around the terrestrial planets in order to control traffic, but it just seems so obvious today that these are the most critical and overlooked missing piece to the interplanetary puzzle. There is another critical feature of large transfer points as we will see…

The  Earth already has a large transfer point, Luna. But Mars has two tiny baby satellites which are essentially useless because they do not have enough mass to create geological activity and a corresponding planetary magnetic field to protect against harmful radiation. Based on the theory that the reason Mars is geologically and magnetically dead is its lack of a large satellite, adding a large satellite would solve both problems at once by making Mars geologically and magnetically active, and also creating an obvious transfer-point for interplanetary travel.

I have conducted a survey of the available moons in the solar system and I think Titan would be the most logical one to move over to Mars. It is somewhat larger than Luna with respect to Mars’ relative mass compared to the Earth. I think this would accelerate the process of activating the planet’s geology and magnetic field. We would still need to create liquid oceans, and so Ceres seems like the most logical choice. Scientists estimate that its mass is about ten percent water. So if we direct Ceres to crash into Mars, we would add about 10^17 kg of water to Mars’ surface, or about a quarter of the amount of ice in Antarctica; not a lot but definitely something to work with.

I think these changes would be a good first step in terraforming and eventually colonizing Mars.

Simple $30 Pumped Water Filter

I do a lot of outdoor activities like cross-country hiking, kayaking, etc. In the past I have tried many methods for filtering water. It’s easy to spend a lot of money and get not very good results. One product that has always intrigued and frustrated me is the Sawyer filter.

Sawyer Filter With Bags

This is a great filter except for two really frustrating things about it. You can screw it onto a bottle and use it like a lifestraw, but that’s not ideal because you need to clear it every time you use it, so it’s really not designed for sipping all day.

Their solution is these squeeze bags. Basically you fill the bag with river water and then screw it onto the filter, and squeeze the bag to push the water through the filter so you can get clean water in your camelback or nalgene. The big theoretical benefit here is that you don’t have to carry dirty water with you.

The problem is that the squeeze bags are really hard to fill since they want to go flat in the water and not let any water in. So basically while these seem great, I’ve always found them very frustrating. I tried these years ago before buying the lifestraw bottle instead.


Enter the Lifestraw Go Bottle. Kind of great, kind of not.

Lifestraw Go Bottle

So here you can see the Lifestraw Go Bottle attached to my kayak. It’s great for kayaking. You can just quickly fill it and then sip throughout the day. The filter is designed to work that way. You only have to clear it when it starts getting hard to suck water through the straw, maybe just a couple times a day depending on the water.

The problem here is that it’s a tiny bottle, just 650ml. So you can’t carry more water than that. This makes is basically useless for hiking unless you’re hiking along a river. There is no way to get clean water into another container with this filter.


My Idea…

I have worked with lots of small electric pumps on other projects. In the past I have wondered about using one of these little pumps to push water through the Sawyer filter so I picked one up to test out. This would mean basically you can fill up all your nalgenes and camelbacks and other containers and have as much water as you want, very easily and quickly.

Filter and pumpThis tiny electric pump fits perfectly in the straw the Sawyer comes with, and works at almost full speed; about a gallon per minute. There is also a USB version of this pump which should work just fine. The USB version also includes a coarse filter to keep debris out of the pump which should improve the lifespan.

As you can see, this is tiny, weighs almost nothing, and cost just about $30 all together. You probably have some kind of battery bank or solar panel you’re already taking with you, so you can put together whatever version of this that will run off your existing setup, USB or 12v.

I will be testing this out in the coming days and I’ll report back on how it works in the wild.

Multpurpose Apocalypse Sensors

The end seems pretty nigh, so why not measure it? This sensor array is ready whether it’s fires or nuclear war.

This Sensor Array Measures:

    • Particulate Matter: PM2.5 is the international standard measure of air quality related to fires. It measures density of particulate matter with a size larger than 2.5 microns (Technically 2.5 microns is an average, and this metric generally refers to particles larger than 0.8 microns.).  This includes smoke but also includes pollen and some other pollutants.
    • Nuclear Radiation: I have always wanted to have a geiger counter, so I decided to buy two; one for inside and one for outside.
    • Temperature and Humidity: Temperature and humidity play a huge role in the impact of particulate matter in the air on the respiratory system. Even without smoke, the wrong humidity levels can cause respiratory problems for sensitive people. Tracking this number will help us see the potential impact on air quality indoors and out.

As the new worst-ever fire season gets started, I am planning to explore the effectiveness of several methods for indoor air filtration. I wanted to measure the results so I decided to expand on earlier work and build a series of high precision sensor arrays which can measure and compare smoke levels in the air.

Why not radiation too? These sensor arrays will become an ongoing source of interesting data as the world continues to fall apart. Watching the Chernobyl miniseries, I was struck by the fact that the scientists had a sort of “smoke alarm” for radiation in their offices. I asked myself why that isn’t something we all have. How would we know if there was some serious radiation danger? Well now I will know.  Also, wildfires release naturally occurring radioactive materials into the atmosphere which then rain down radionuclides onto the population. The USDA says we should not worry about this which makes me feel like we should worry about this.

Additionally, I will be comparing the efficacy of house plants alone and together with air filters on improving indoor air quality during fires. This builds on earlier work by NASA which showed that in general, house plants have a major positive impact on indoor air quality, but smoke was not one of the things NASA tested for.

Detector arrays

I bought some 12″ x 12″ cork boards and then tacked all the pieces on, with some EL wire around the edge to help tell them apart. In this photo, the Geiger counter on the left has a ziploc full of uranium marbles laying on it for testing purposes.

The Sensors

DHT22 Sensor: Gives temperature and humidity with high precision. This is not directly relevant but it makes it a more complicated and interesting project. Also, I suspect that humidity in particular will have an impact on filter performance.

PM2.5 Sensor: This sensor measures particulate matter larger than 2.5 microns. This is the standard unit of measure for air quality related to fires.

Geiger Counter: This is self explanatory. The Geiger-Muller tube detects ionizing particles which intersect it. This gives us the cool radioactive clicking sound and lots of information about radioactivity in the air. Scientists have declared that radiation is the hallmark of the Holocene or the archaeological epoch of humanity. It always seems like some nuclear disaster is spreading and threatening the globe. Let’s measure it over time!

The Micro-Controller

Probably any micro-controller will work, but initially I decided to use the very cheap and simple NodeMCU which is just a few dollars. This has wifi and I already had a box full of them. I’ve used these in the past on other projects. While they work great with digital inputs, I was not able to get the analog input to work; also there is only one analog input and no analog outputs which is frustrating.

I changed my mind and decided to go with the new Arduino Mkr Wifi 1010 because it has so many analog pins which makes this project a lot easier. It’s a little more expensive but it has much better support in addition to those critical analog pins. It also has eight digital pins with six being PWM; a very versatile micro-controller. Allegedly it even has OTA so you don’t have to plug it in to flash new software (I have not gotten this to work correctly). The simple I2C interface means this micro-controller  can also run an lcd screen in addition to the sensors which means it will be easier to have verbose output on the data.

The Code

The micro-controller simply hosts a web page as well as a JSON endpoint with all the data. It also has REST endpoints for each sensor so it’s very easy to query the sensors or to quickly view all the data on the homepage.

Here is the final draft of the final code. Each sensor has an API endpoint so they can be polled individually, or there is a json endpoint to poll them all simultaneously. This version also includes the LCD display which cycles through displaying all the sensor values.

If you’re going to use this on another micro-controller, you would probably just need to change the wifi parts or remove them since this is using the newest WifiNINA library. You could also simply log the data through USB.

Corona Country

Corona Country is a twist on the earlier project Covid19 Progress. This app shows you data at the county level in your area. So you can see how coronavirus is going where you are.

There are a couple of reasons I decided to launch this project. While it’s interesting to compare countries and states, I think it’s more interesting to feel some agency and control over your own personal choices. Knowing which areas to avoid and which areas to frequent for things like shopping and essential services could mean the difference between life and death for people with comorbidity factors.

Corona CountryAnother major difference from the previous project is that it shows a two-week average in daily change rather than focusing on the current day’s data. The problem with showing the current day’s data is that since this is a chaotic disaster, the numbers often seem to be batched and some zeros show up in between numbers in the thousands. Showing an average makes it much more clear what’s going on if you’re trying to see a simple number that explains and compares between counties.

Corona Country Desktop

Since Corona Country is GPS-based and shows you the nearby statistics, it also features a dropdown menu to allow you to check out the statistics in other metropolitan areas.

Tech Stack

This project is very different from Covid19 Progress on the back-end. The challenge is very complex. We need to be able to handle both time-series and statistical data about approximately 4,000 counties around the country over a period of several months, and probably another year at least into the future.

Each day, Johns Hopkins releases a very large CSV file containing lots of information about every county. The first step is fetching this file. A lot of the data is either bad, ignored, or junk. Many of the fields are never filled out, or contain irrelevant or redundant data. The file is too large to put into memory, so the script must loop through it looking for the current data for each county. Next, that data must be parsed and then put into each county’s individual archive file. This current data must also be updated in the database. (The database contains only the current day’s data for each county.)

I know what you’re thinking; why not just put everything in the database? The problem is that each time a user loads the page, we would have to fetch thousands of rows and then parse them into the correct format that chart.js wants. The other problem is that past rows are often updated in new releases of the Johns Hopkins file. So we would have to check hundreds of thousands of records every day to see if they need to be updated. By the time this is all over, that will probably grow to millions of rows. Instead of doing it that way, we can put just the basics in the database and use it only to select the closest counties and get the static data. This is much faster. The rest of the data is already parsed and waiting for us in each county’s archive file. Parsing these files is slow work which only needs to be done once a day.

When a user opens the site, the static homepage asks for the user’s gps information or offers to let them choose a metropolitan area. Then it queries the api which finds any counties within 50 miles, and fetches the archived data for those counties and returns it to the user. This takes an average of just 30 milliseconds and about 180k of ram per request.

Covid19 Progress

I saw an opportunity around the lack of clarity and accessibility for coronavirus statistics. I also saw a lot of misleading claims made by people with an agenda. I wanted to bring clarity to the data and make it easy to understand and compare. And so, Covid19 Progress was born!


This simple site allows anyone to log on and compare numbers between any country, and even between states. Rather than giving a total number infected or dead, it reports these things in terms of a percentage of the population. Also interesting is the graphs of change in growth over time. This is part of what inspired the next project, Corona Country.

Some of the results are very surprising. For example, while the united states has far more cases than any other country, it is closer to the middle of the pack in terms of percentage of the population infected. Likewise, some states are doing a much better job than others, and this is much easier to see with the tools on this site.

Tech Stack

The back-end is based on my earlier Draupnr project. Once a day, the updated information is fetched from Johns Hopkins, then it gets parsed into data for each separate state and country. The data is filled into a template and comes out in two forms; chart.js on top and tablesorter on the bottom.

Producing static html files like this means it’s very easy to handle virtually unlimited traffic because the server is not doing any compute during the requests. This is something Pieter Levels talks about a lot as an important design goal people should keep in mind.

Beat The Smoke Without N95

Hoarding N95 masks and other medical supplies during covid is irresponsible and unhelpful. I will show you a better alternative.

I have severe asthma. As such, fire season in California poses a real threat even without the additional risk of a respiratory pandemic. Many of the comorbidity factors from covid-19 are related to respiratory issues, and while asthma is not one of those factors, we don’t know the impact wildfires will have. As such, I wanted to make sure to prepare early since all the N95 masks are needed for coronavirus.

One expert I interviewed let me know that in fact unless you are shaving every day and wearing a professionally fitted mask, N95 is actually not significantly more helpful than simple fabric face wraps. Many recent studies and academic articles have corroborated this.

N95 masks are the ones that can filter both smoke and coronavirus, if they are professionally fitted on someone who is shaving daily. Therefore they are in extremely high demand by medical professionals who need them. I would not buy them for that reason. Also, I still have a dozen or so left over from burning man last year. (N95 also filters playa dust.) Sadly though I tried, I was not able to donate these because the box was opened. If you have unopened N95 masks, please donate them to medical professionals who actually need them, rather than hoarding life-saving supplies.

I have spent several years together with friends exploring the best ways to filter the indoor air quality during fire season. According to NASA research, one of the best things you can do is to have the right kind of indoor plants. Unfortunately while this filters many harmful chemicals, in my experience it does not seem to be effective against smoke. I am conducting an extended research project to look at this question and I will be reporting back soon. I have tried many different kinds of air filters, and landed on a very solid and excellent setup.


($10 ea) 20×20″ MERV 13 Filter

($20) 20″ Box Fan

$30 Total

Houses and Faces

An N95 mask is certified on a scale called NIOSH. N95 mask certification actually has nothing to do with viruses. It is a scale for filtering particulates which do not contain oil; this includes viruses as well as smoke particles. N95 masks are also certified for biocompatibility since they are touching the face. There are many other factors that go into the N95 mask certification.

NIOSH Ratings

For the purposes of this post, all that really matters is filtering smoke. So when we look for a house filter to fit the need, we don’t necessarily care if it’s ok to wear it on your face or how resistant it is to oils.

House filters are rated on a completely different scale called MERV. MERV 11 and up are rated for smoke. MERV 13 and up are also rated for viruses and bacteria as well. An average MERV 13 filter currently costs under $10. MERV filters are not certified for biocompatibility since they are not designed to touch your skin. Do not use house filters on your face. They can contain dangerous materials which are not safe for your face. Cutting house filters into face masks can release fiberglass and other dangerous materials which can hurt you.

MERV Ratings

There are any number of expensive air filter products you can buy which run up into the hundreds of dollars. I am going to show you how to accomplish the same quality air filtration for just $30.

One common size for MERV 13 filters is 20″ x 20″. This is the same size as the generic $20 box fans you can find at any department store from Walmart to Home Depot.

It’s a simple matter of using a few pieces of tape to attach the filter to the back of the fan. Now you have one of the highest quality air filters you can get for just $30; certified for both smoke and for viruses.


For just $30, you have essentially the highest quality air filter possible which will last for years depending on your situation. In my case, one or two MERV 13 filters lasts me the full fire season.

DIY Filter

Breathe easy!

Raised Bed Gardens and Water Distribution

Given the many weeks of isolation in quarantine, I decided to move home rather than continue to pay  bay area prices to be in quarantine indefinitely. It was nice to spend time with family, and we decided to remodel the house to keep ourselves busy. My project was the new garden.

I decided to build three 4×8 raised beds. Pretty simple design. Each bed takes three 2x4s with one cut in half. Then screw the ends together. Staple barrier fabric across the bottom, and fill with dirt. Next, I bought 125ft of soaker hose and wound it through the gardens, held in place with garden staples. For the finishing touch, I added a small fence in front to keep the dog out, and solar garden lights in the beds.

Here’s what it looks like;

raised bed gardens complete


The soaker hose is not designed to carry enough pressure to run more than about 40 feet. So it would need to be split into a separate run for each bed. I also wanted to be careful not to let it drip in between the beds, otherwise the weeds and grass would take off and be hard to control. So I built this;

water distributor

Basically, there is an inlet at the bottom for a hose to attach. I had already run a 100ft hose all the way around the yard from the spigot to the gardens, so it just connects there.

Then the high pressure hose branches off into three valves to control the pressure to each bed separately. Then there is a corner to bend down to the soaker hose attachments. This prevents water from dripping outside the beds. Here’s what it looks like all put together;

all put togetherI also added an automatic timer at the spigot which turns the water on and off on a schedule. So now it’s just a matter of tuning the amount of water each bed receives with the valves!

Trellis Alternatives

I didn’t want to use those stupid tomato towers for all the plants so instead I got some eight foot posts and drove them about a foot into the ground, then I stapled chicken wire around them. This also keeps the cats out while providing something for the plants to climb. I plan to espalier both the tomatoes and cucumbers, as well as the zucchinis and sugar snap peas.

Garden fences