Air quality · Citizen science

Making air-quality data more accessible, from public records to open sensors.

This is the work I have been doing around Taranto since 2019: turning public monitoring data into reports and alerts people can inspect, and now connecting an open sensor directly to my own Omniscope workflow.

Jan 2019

I publish the first Omniscope air-quality report

I published an automatically updated Omniscope report using ARPA Puglia measurements. In the accompanying post, I invited people in Taranto to explore the data with me and build something useful from it. Read the original public Facebook post ↗

Feb 2019

I add history, comparisons and an Italian version

I extended the history back to 2016, added new comparison views and published an Italian version for people in Taranto and the surrounding province. See the historical comparison update ↗ See the Italian release ↗

2020

I begin publishing alerts for high readings

I began publishing alerts when the monitoring data showed high pollution measurements. The posts record the highest benzene value then measured by the ARPA stations, followed by 14 more peaks around Via Orsini in two months. See the November record ↗ See the two-month alert record ↗

2021

I document pollution events and gaps in monitoring

I documented repeated sulphur-dioxide exceedances, a severe combination of pollutants, a failed Tamburi monitoring station and another benzene record. The posts asked public bodies to investigate the events and also showed when monitoring data was missing. See the SO₂ warning ↗ See the request concerning missing monitoring ↗ See the December benzene record ↗

2023

The Omniscope alerts reach PeaceLink in Taranto

I put extraction, analysis, reporting, screenshot generation and threshold alerts into one Omniscope workflow. Alessandro Marescotti describes receiving my benzene graphs from London and relaying the warnings through PeaceLink’s network in Taranto. Read Marescotti’s account ↗ Read the implementation tutorial ↗ Read the full PeaceLink account in Italian ↗

Feb 2024

PeaceLink presents the benzene analysis to the Senate

Working with PeaceLink, I analysed more than 80,000 hourly benzene measurements. Alessandro Marescotti presented the results during an Italian Senate hearing on ILVA, and the official slides credit my data analysis and processing with Omniscope. See my public record of the presentation ↗ Open the official Senate slides ↗

2024–25

I compare peaks, wind, neighbourhoods and production

I compared hourly peaks with wind direction, PM10 in Tamburi and Talsano across 2017–2025, and the reduction in benzene alongside falling steel production. The relationships deserve investigation, but the monitoring data alone does not prove one cause. See the wind-direction analysis ↗ See the long-term PM10 comparison ↗ See the benzene and production analysis ↗

2026

I move the alerts to Facebook and customise an open sensor

I moved the current hourly benzene alerts to Aria Taranto, with each alert linking back to the live Omniscope reports. The earlier OmniscopeBot account on X remains the historical alert archive. In parallel, I customised an open AirGradient monitor to send measurements directly and privately to an Omniscope workflow, with no vendor cloud, middleware, home server or inbound router port.

How the alert is made

How Omniscope turns a qualifying measurement into an alert.

Omniscope refreshes the public data, applies the threshold rule, saves a screenshot and publishes an alert with a link back to the interactive report.

Public measurements → Omniscope workflow → historical report → threshold rule → screenshot and alert → linked report and source data
80k+ Hourly benzene observations examined across 2013–2023.
63 Observations over 27 µg/m³ in the public data available for the February 2024 Senate analysis; ARPA’s final report used a more complete 2023 series.
1 min Current interval for the new sensor’s direct push to Omniscope.

The 2023–2025 record

The first visible reversal since monitoring began.

In the available 2023–2025 data, I counted fewer daily benzene peaks and lower average values, particularly around Tamburi. Steel production and emissions from the former ILVA site also fell during the period. I treated that coincidence as something to examine, not proof of one cause; the 2025 period was incomplete when I published the comparison.

Omniscope report showing the number and average of benzene peaks across four Taranto monitoring stations from 2023 to 2025
Benzene peaks and average concentrations across Cokeria, Meteo Parchi, Tamburi Via Orsini and Taranto Via Machiavelli, 2023–2025. Read the original analysis in Italian ↗

Analytical discipline

A relationship in the data is not automatically an explanation.

I found lower black-carbon readings when stronger winds blew from the north. That could mean pollution was being dispersed, but it could also reflect unreliable measurements under those conditions or another factor. The report lets readers inspect the pattern; it cannot turn correlation into proof.

Omniscope analysis comparing wind direction and speed with black-carbon readings around Taranto
Exploring wind conditions alongside black-carbon measurements. Read the original methodological note ↗

Read the story

The articles behind this air-quality work.

The English series covers the open monitor, the 80,000 hourly readings, public ARPA data, evidence-preserving alerts and the complete monitoring path. The article in Italian brings together the work done with PeaceLink over time.

01

How to Build a Private AirGradient-to-Analytics Pipeline

Build a private AirGradient analytics pipeline using custom ESP32-C3 firmware, local Android control and direct HTTPS ingestion into Omniscope.

02

What I Learned from Analysing 80,000 Hourly Benzene Measurements

Lessons from analysing more than 80,000 hourly benzene readings in Taranto: preserve peaks, define thresholds, expose gaps and version the evidence.

03

Making Institutional Air-Quality Data Usable by Citizens

How ARPA Puglia monitoring files became a public, Italian-language Omniscope instrument for citizens, classrooms, comparisons and civic investigation.

04

Designing Alerts That Preserve the Evidence Behind the Claim

Design data-driven air-quality alerts with station, time, units, averaging period, reference meaning, source status and links to inspectable evidence.

05

Open Hardware, Private Infrastructure and Citizen-Owned Monitoring

What citizen-owned air-quality monitoring requires across open hardware, firmware, local control, private transport, stored history and responsible interpretation.

IT

Il lavoro con PeaceLink sui dati ambientali di Taranto

Come il lavoro sui dati ambientali di Taranto è diventato un supporto continuativo alle attività civiche e istituzionali di PeaceLink.

A continuing public record

I have documented this work through public posts and alerts, work with Alessandro Marescotti, PeaceLink and people in Taranto and Tamburi, and exchanges with scientists and doctors including Annamaria Moschetti. The linked posts include the first report, public warnings, requests for institutional action, later comparisons and the Senate hearing where Alessandro presented analysis produced in Omniscope.

Open implementation

I published the modified firmware, browser installer and Android controller so other people can inspect the code, adapt it and connect an open monitor to their own private analysis.