<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/mh-z19-co2-sensor-reader-logger-and-visualiser--276gq8brp" -->

---
title: MH-Z19 CO2 sensor reader, logger and visualiser #
description: A Python 3 tool for reading, logging, and visualizing CO2 data from the MH-Z19 (or MH-Z14) NDIR sensor over UART/serial. Covers wiring, connection via USB-UART...
canonical: https://daily.dev/posts/mh-z19-co2-sensor-reader-logger-and-visualiser--276gq8brp
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: MH-Z19 CO2 sensor reader, logger and visualiser # | daily.dev
og:description: A Python 3 tool for reading, logging, and visualizing CO2 data from the MH-Z19 (or MH-Z14) NDIR sensor over UART/serial. Covers wiring, connection via USB-UART...
og:url: https://daily.dev/posts/mh-z19-co2-sensor-reader-logger-and-visualiser--276gq8brp
og:image: https://api.daily.dev/og/posts/276Gq8bRP.png
og:image:alt: MH-Z19 CO2 sensor reader, logger and visualiser #
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# MH-Z19 CO2 sensor reader, logger and visualiser #

**[Sam McLeod](https://daily.dev/sources/smcleod)** · 3 min read · 0 upvotes · 0 comments

## Summary

A Python 3 tool for reading, logging, and visualizing CO2 data from the MH-Z19 (or MH-Z14) NDIR sensor over UART/serial. Covers wiring, connection via USB-UART adapter, command-line usage, raw sensor commands, calibration warnings, and data visualization using plotly.js. Compatible with Raspberry Pi, ESP8266, and Arduino. The author later replaced this DIY setup with an Aranet4 commercial device in 2021.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://smcleod.net/2016/12/mh-z19-co2-sensor-reader-logger-and-visualiser/>

## Similar posts on daily.dev

- [DIY ESP32-P4 weather station & air quality monitor connects to LoRa and ESP-NOW sensors, various weather APIs](https://daily.dev/posts/diy-esp32-p4-weather-station-air-quality-monitor-connects-to-lora-and-esp-now-sensors-various-wea-fyniccq3k) · CNX Software · 0 upvotes · 0 comments
- [BIGTREETECH Panda Sense Pro 8-in-1 smart air quality monitor works with Home Assistant and Klipper for 3D printers](https://daily.dev/posts/bigtreetech-panda-sense-pro-8-in-1-smart-air-quality-monitor-works-with-home-assistant-and-klipper-f-gqi8pvex5) · CNX Software · 0 upvotes · 0 comments
- [Air Lab is the Flipper Zero of air quality monitors](https://daily.dev/posts/air-lab-is-the-flipper-zero-of-air-quality-monitors-6vjhmtx5a) · Jeff Geerling · 0 upvotes · 0 comments
- [I built a Zigbee sniffer on a $60 ESP32 screen, and now I can watch my smart home talk to itself](https://daily.dev/posts/i-built-a-zigbee-sniffer-on-a-60-esp32-screen-and-now-i-can-watch-my-smart-home-talk-to-itself-stmbiva5e) · XDA Developers · 0 upvotes · 0 comments

---

Tags: [#python](https://daily.dev/tags/python), [#iot](https://daily.dev/tags/iot), [#data-visualization](https://daily.dev/tags/data-visualization), [#raspberry-pi](https://daily.dev/tags/raspberry-pi)

[View this post on daily.dev](https://daily.dev/posts/mh-z19-co2-sensor-reader-logger-and-visualiser--276gq8brp)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"MH-Z19 CO2 sensor reader, logger and visualiser #","url":"https://daily.dev/posts/mh-z19-co2-sensor-reader-logger-and-visualiser--276gq8brp","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/mh-z19-co2-sensor-reader-logger-and-visualiser--276gq8brp"},"datePublished":"2026-03-31T12:29:00.328Z","dateModified":"2026-03-31T12:47:00.563Z","description":"A Python 3 tool for reading, logging, and visualizing CO2 data from the MH-Z19 (or MH-Z14) NDIR sensor over UART/serial. Covers wiring, connection via USB-UART...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/d4fc44f671dd86f713a9346cc119342f?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/d4fc44f671dd86f713a9346cc119342f?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Sam McLeod","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Sam McLeod","logo":"https://media.daily.dev/image/upload/s---ERPerFg--/f_auto,q_auto/v1774960030/logos/smcleod?_a=BAMAMiWQ0","url":"https://daily.dev/sources/smcleod"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/mh-z19-co2-sensor-reader-logger-and-visualiser--276gq8brp","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"python,iot,data-visualization,raspberry-pi","timeRequired":"PT3M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Sam McLeod","item":"https://daily.dev/sources/smcleod"},{"@type":"ListItem","position":3,"name":"MH-Z19 CO2 sensor reader, logger and visualiser #"}]}
```

