Open environmental monitoring

OpenSensor.Space

Keep measuring, even when the connection drops.

Save readings as Parquet on the edge device. Sync directly to object storage or through a nearby phone or local hub. Explore the files from your browser or app.

Follow the data
18
Planned sensors
3
Measurement groups
Open
Source & Data

Meet our peacock guide

OpenSensor’s blue and teal peacock mascot

Observe the air and weather, wherever you are.

The usual setup
Skip presentation
Sensor → Parquet → Object storage

A server waits for every reading.

Readings pass through a receiving server, database and API before reaching your screen.

Illustrative setup

Scroll to follow the readingUse the arrows to follow the reading.

The short version

  1. SensorMeasure
  2. Parquet files15 min / 1 hour
  3. Object storageSync when ready
  4. Charts & toolsRead directly

No always-on receiving server.

Make places measurable

OpenSensor.Space

Live

Low-cost, open-source sensors sharing environmental readings publicly.

Hyper-local air quality
We design, calibrate and deploy PM2.5 and PM10 sensors in Cairo to fill neighbourhood measurement gaps.
Noise & lighting · next
Next: measure noise and artificial light exposure.

Local first. Open by design.

From an isolated field station to public analysis, the same files travel with the data.

Record on the edge

Store measurements as local Parquet files before transferring them. A Wi-Fi outage pauses sync, while the sensor keeps collecting on the device.

Sync with what is nearby

Use Bluetooth to a mobile phone in the field, or a local network to a hub or server. Isolated deployments can keep storage and analysis local; internet sync is optional.

Share open files

When internet is available, sync directly or through a relay to object storage. Publish partitioned Parquet for anonymous reads, with no sign-in required.

Analyse where you are

Browsers, apps and analytical tools read the files directly. Use Apache Parquet, Apache Iceberg tables and STAC discovery with compatible clients, reducing reliance on always-on servers.

One core. Different sensors.

Choose what you want to measure.

Tested prototypes

Air quality

Particles, temperature and humidity.

ParticlesPM1 · PM2.5 · PM10µg/m³
Temperature°C
Humidity% RH

UART connection

The same recording core

Illustrated core architecture

Compatible RTC

Keep time across restarts.

RTC support depends on the board.

microSD

Readings saved as Parquet.

.parquetSaved locally. No internet needed.
External radio modules · roadmap
LoRaZigbeeZ-Wave

Tested prototypes: PMS5003T · PMSA003

Candidates: PMS5003 · SPS30 · SEN63C / SEN6x

PMS5003T supplies the five quantities shown. PMSA003 supplies particulate readings.

Modules need matching power, interfaces and firmware.

Air-gapped deployment · planned

Offline recording works without internet. Current firmware still starts Bluetooth. A fully air-gapped deployment would disable radios and move files by microSD.

Powered by

Cloud-Native GeoCloud-Native GeoApache ParquetApache ParquetDuckDBDuckDBPolarsPolarsSource CooperativeSource Cooperative

Connect your station.

Share readings from your own environmental sensor.

Getting Started
Deploy Edge Software
Install the edge client on your IoT device
Configure Storage
Use Source Cooperative or your own S3-compatible storage
Register Your Station
Submit a PR with your station ID and location
Start Streaming
Your data appears on the public dashboard automatically