Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bertrik/sensor-data-bridge
Bridge software for receiving airborne particulate matter measurements from TheThingsNetwork and forwarding them to sensor.community and opensensemap
https://github.com/bertrik/sensor-data-bridge
luftdaten particulate-matter sensor-community thethingsnetwork
Last synced: about 2 months ago
JSON representation
Bridge software for receiving airborne particulate matter measurements from TheThingsNetwork and forwarding them to sensor.community and opensensemap
- Host: GitHub
- URL: https://github.com/bertrik/sensor-data-bridge
- Owner: bertrik
- License: mit
- Created: 2019-04-22T08:06:19.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-10-26T23:24:30.000Z (2 months ago)
- Last Synced: 2024-10-27T00:32:38.865Z (2 months ago)
- Topics: luftdaten, particulate-matter, sensor-community, thethingsnetwork
- Language: Java
- Homepage: https://revspace.nl/sensor-data-bridge
- Size: 933 KB
- Stars: 5
- Watchers: 6
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# sensor-data-bridge
Bridge software for receiving airborne particulate matter data from TheThingsNetwork
and forwarding it to sensor.community, opensenseForwarding to sensor.community and other dashboards is controlled through TTN device attributes,
which can be configured for each device in the TheThingsNetwork console:
* sensor.community
* attribute 'senscom-id' contains the sensor.community hardware id
* opensense.org
* attribute 'opensense-id'Several data encodings are supported:
* Cayenne encoding, PM is encoded as analog data, PM10 in channel 1, PM2.5 in channel 2, PM4.0 in channel 4 and PM1.0 in channel 0.
* JSON encoding, the configuration file specifies how JSON fields map to measurement properties
* SPS30 encoding, a custom encoding for SPS30 sensors, includes the particle countExperimental support for Helium LoRaWAN, NB-IOT. Possible future support for Sigfox.
## Configuration
### TheThingsNetwork configuration
The application requires an application API key with the following individual rights:* View devices in application
* View application information
* Read application traffic (uplink and downlink)![TTN API key](ttn-api-key.png)
Make sure to copy/save it to another place immediately after creating in on the TTN console.
### Application configuration
Application example config file (YAML):~~~~
---
ttn:
mqtt_url: "tcp://eu1.cloud.thethings.network"
identity_server_url: "https://eu1.cloud.thethings.network"
identity_server_timeout: 30
apps:
- name: "particulatematter"
key: "secret"
decoder:
encoding: "CAYENNE"
properties: ""
- name: "ttn-hittestress"
key: "secret"
decoder:
encoding: "JSON"
properties:
- path: "/pm10"
item: "PM10"
- path: "/pm2p5"
item: "PM2_5"
- path: "/rh"
item: "HUMIDITY"
- path: "/temp"
item: "TEMPERATURE"
- name: "ttn-soundkit"
key: "secret"
decoder:
encoding: "JSON"
properties:
- path: "/la/min"
item: "NOISE_LA_MIN"
- path: "/la/avg"
item: "NOISE_LA_EQ"
- path: "/la/max"
item: "NOISE_LA_MAX"
nbiot:
port: 9000
senscom:
url: "https://api.sensor.community"
timeout: 30
opensense:
url: "https://api.opensensemap.org"
timeout: 30
geolocation:
url: "https://location.services.mozilla.com"
timeout: 30
apikey: "test"
~~~~