co2mon.nz: Ventilation monitoring as a service
Previously, I explained why ventilation monitoring is important, and the opportunity I see to help accelerate deployment of high quality ventilation monitoring for small businesses and organisations.
In this post, I’m going to discuss my plans to tackle that opportunity:
My journey to ventilation monitoring
I started looking into ventilation monitoring in detail last year when I wanted to ensure that the classrooms of our local primary school were well ventilated during the Omicron outbreak. That research revealed that the existing products on offer were challenging to deploy in a school environment from a cost perspective while also not providing perfect functionality.
I built and deployed a set of monitors to our local school, along with a corresponding set of software and web services that provide management of the monitors and visibility into the collected data and trends. The benefit of the monitoring is evident - CO2 concentration drops immediately after a notification occurs, indicating the intended action of increasing ventilation is taking place. Initially this occurred more frequently, but over time low concentrations of CO2, indicating good ventilation levels, are regularly achieved across the school day thanks to simple changes in routine being established, such as leaving windows cracked open.
As the benefits of the project to the school became clear, my ambition and vision for ventilation monitoring grew from wanting to see my children learn in a safe and effective environment to desiring safe and effective learning, working, living and social spaces for everyone.
co2mon.nz: Ventilation monitoring as a service prototype
co2mon.nz is the service that I have launched to explore this opportunity. Based on the same hardware and software that I used for the school deployment I am selling both a physical CO2 monitor and an ongoing subscription service for the management and monitoring. Together, the monitor and software provide an effective and affordable path to understanding indoor air quality and ventilation status that anyone can use.
The CO2 monitor hardware and firmware are based on Oliver Seiler’s design using a Sensirion SCD40 module for CO2 measurement and providing immediate in-room feedback via an on-monitor screen as well as a red/orange/green “traffic light”. In addition to the immediate feedback provided by the monitor itself, a WiFi connection can be configured allowing every measurement to be reported back to the supporting monitoring and management service.
At the current prototype stage, I am building all the hardware, 3D printing the plastic cases and assembling the circuit board from purchased components through a “production line” in my home workshop. The monitor is powered via a standard USB cable and wall adaptor for simplicity.
The first batch of monitors I built have been operating smoothly for nearly a year now. Further refinement and development of the design is required but already I am impressed with the potential this combination of easily accessible components provides to enable widespread adoption and deployment of ventilation monitoring.
Monitoring and management service
The web service provides a historical record of CO2 levels from each monitor through a set of graphs and other dashboards and allows for this data to be shared or published. This is useful both for providing visibility into ventilation status to those not directly present in the space (e.g. across an entire school) and to allow insights into trends and patterns in ventilation to be observed and acted upon.
When I began the project I approached the software side as an opportunity to explore the “real-world” equivalents of many of the internal tools and components that I was used to using within Google. That’s been a fun process, even though it means I’ve invested far more time on the software than the current number of customers or business state can really justify.
Communication with the monitors occurs via MQTT into a custom Go service responsible for maintaining the fleet and exposing the measurement data to Prometheus which acts as the storage layer. A second service (based on the Buffalo web framework) is responsible for serving the web interface containing the dashboards and configuration options. Alongside these core components another small Golang service manages a private X509 certificate authority to provide monitor identity and encryption of the measurement data and an automated pipeline of scripts and triggers takes care of firmware provisioning, sensor calibration and burn-in/failure testing when building batches of monitors.
While simple, the design is easy to manage and could scale to support many, many more monitors without significant effort. I’m hosting the infrastructure on AWS, which I’ve found pleasant and easy to use, and while not a typical choice, I’m very pleased with the performance and flexibility that Prometheus offers as a data storage layer.
Areas of development
The prototype has been effective in proving the feasibility of offering ventilation monitoring as a service, but to evolve the prototype into an actual business is going to require further effort in the following areas:
Finding product market fit
I’m confident that what co2mon.nz is offering could provide a useful and needed service for many small business owners and numerous others, but the question of whether it’s sufficiently compelling that a sizeable group of customers see enough value that they’re willing to regularly pay for it and therefore sustain a business providing the service is not yet proven.
While initial feedback on the idea has been positive, much of it has been from family and friends and I’ve spent more time building the software (which has been fun and educational) than I have talking to actual potential customers and understanding their needs and wants.
This is a classic trap that technical founders fall into, and I’m guilty despite my best intentions – it’s comfortable and easy for me to work on the parts where I have existing experience and neglect putting time into the customer-facing sales, marketing and research which are more uncomfortable, new and challenging!
Scaling monitor production
Scaling from the current prototype batches I have built to even modest levels (e.g. hundreds) of sales will require outsourcing. There are several potential New Zealand and overseas providers I can work with which look very promising, but will require iteration of the hardware design (e.g. to remove through-hole components which add complexity and expense to the PCB assembly process). The lead times I’ve been quoted for working with these outsourced providers are in the order of 1-2 months per batch, and on top of this there are a number of other risks in terms of component availability and regulatory compliance that may add additional delays or time to resolve, particularly as my experience leans towards the software rather than the hardware.
It seems counter-intuitive to worry about how to scale to meet demand that doesn’t yet provably exist, but given the potentially long lead times involved in establishing outsourced production I think it’s worth taking some risk in starting this journey early.
My aim now is to intentionally change my focus from the software to learning about the market and finding the right product to offer via two channels:
- Via online marketing, to reach a wide range of potential customers and allow rapid iteration and testing of a variety of product/service combinations, including referral options for existing customers.
- In-person with small businesses in my local area to seek out direct feedback and thoughts on the general issue of ventilation monitoring and the specific service I’m offering.
One concrete possibility I’m keen to test via both channels is a simple monthly price for the combined service, rather than purchasing a monitor and separate software subscription. This has the potential to be both simpler to market and explain to customers, while also opening the possibility of short-term rental or evaluation to customers who are not willing to make a long-term investment or commitment.
In parallel to the customer-focused discovery work, but as an explicit lower priority, I’ll order an initial small batch of outsourced monitors to begin gaining experience with that process – accepting the risk that the time and cost may turn out to be wasted if the product is wrong or not a good match for customers’ needs.