From 77fba6371ced2434b0abbdf0e9f189faa5b34091 Mon Sep 17 00:00:00 2001 From: s3lph <5564491+s3lph@users.noreply.github.com> Date: Sun, 5 Oct 2025 13:27:05 +0200 Subject: [PATCH 1/2] feat: add "particulate_matter" sensor type --- 16-draft.json | 140 ++++++++++++++++++++++++++++++++++++++++++++++++++ CHANGELOG.md | 5 ++ 2 files changed, 145 insertions(+) diff --git a/16-draft.json b/16-draft.json index 8a1a66d..b82a1fe 100644 --- a/16-draft.json +++ b/16-draft.json @@ -1307,6 +1307,146 @@ ] }, "minItems": 1 + }, + "particulate_matter": { + "description": "Concentration of particulate matter in the air.", + "type": "array", + "items": { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "PM10": { + "description": "Concentration of particulate matter with a diameter of 10µm or less.", + "type": "object", + "properties": { + "value": { + "description": "The measurement value", + "type": "number", + "minimum": 0 + }, + "unit": { + "description": "The measurement unit", + "type": "string", + "enum": [ + "µg/m³" + ] + } + }, + "required": [ + "value", + "unit" + ] + }, + "PM4.25": { + "description": "Concentration of particulate matter with a diameter of 4.25µm or less.", + "type": "object", + "properties": { + "value": { + "description": "The measurement value", + "type": "number", + "minimum": 0 + }, + "unit": { + "description": "The measurement unit", + "type": "string", + "enum": [ + "µg/m³" + ] + } + }, + "required": [ + "value", + "unit" + ] + }, + "PM2.5": { + "description": "Concentration of particulate matter with a diameter of 2.5µm or less.", + "type": "object", + "properties": { + "value": { + "description": "The measurement value", + "type": "number", + "minimum": 0 + }, + "unit": { + "description": "The measurement unit", + "type": "string", + "enum": [ + "µg/m³" + ] + } + }, + "required": [ + "value", + "unit" + ] + }, + "PM1": { + "description": "Concentration of particulate matter with a diameter of 1µm or less.", + "type": "object", + "properties": { + "value": { + "description": "The measurement value", + "type": "number", + "minimum": 0 + }, + "unit": { + "description": "The measurement unit", + "type": "string", + "enum": [ + "µg/m³" + ] + } + }, + "required": [ + "value", + "unit" + ] + }, + "PM0.3": { + "description": "Concentration of particulate matter with a diameter of 0.3µm or less.", + "type": "object", + "properties": { + "value": { + "description": "The measurement value", + "type": "number", + "minimum": 0 + }, + "unit": { + "description": "The measurement unit", + "type": "string", + "enum": [ + "µg/m³" + ] + } + }, + "required": [ + "value", + "unit" + ] + } + } + }, + "location": { + "description": "Location the measurement relates to, e.g. Hackerspace.", + "type": "string" + }, + "description": { + "description": "An extra field that you can use to attach some additional information to this sensor instance", + "type": "string" + }, + "lastchange": { + "description": "The Unix timestamp (in seconds) when the sensor value changed most recently", + "type": "number" + } + }, + "required": [ + "properties" + ] + }, + "minItems": 1 } } }, diff --git a/CHANGELOG.md b/CHANGELOG.md index 9578767..8bd3b96 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,10 @@ Changes should start with one of the following tags: - [added] The `telegram` contact option was added ([#120]) - [added] The `telegram` contact option for keymasters was added ([#126]) +`sensors`: + +- [added] The `particulate_matter` sensor was added ([#131]) + ## v15 Root level: @@ -126,3 +130,4 @@ Root level: [#108]: https://github.com/SpaceApi/schema/pull/108 [#107]: https://github.com/SpaceApi/schema/pull/107 [#115]: https://github.com/SpaceApi/schema/pull/115 +[#131]: https://github.com/SpaceApi/schema/pull/131 From 0a61ebc614f71f7ba6449985b9373f99cd0c564f Mon Sep 17 00:00:00 2001 From: s3lph <5564491+s3lph@users.noreply.github.com> Date: Sun, 5 Oct 2025 14:41:47 +0200 Subject: [PATCH 2/2] fix: remove pm0.3 --- 16-draft.json | 24 +----------------------- 1 file changed, 1 insertion(+), 23 deletions(-) diff --git a/16-draft.json b/16-draft.json index b82a1fe..9049af2 100644 --- a/16-draft.json +++ b/16-draft.json @@ -1404,30 +1404,8 @@ "value", "unit" ] - }, - "PM0.3": { - "description": "Concentration of particulate matter with a diameter of 0.3µm or less.", - "type": "object", - "properties": { - "value": { - "description": "The measurement value", - "type": "number", - "minimum": 0 - }, - "unit": { - "description": "The measurement unit", - "type": "string", - "enum": [ - "µg/m³" - ] - } - }, - "required": [ - "value", - "unit" - ] } - } + } }, "location": { "description": "Location the measurement relates to, e.g. Hackerspace.",