Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Work in progress: support for InfluxDB and MQTT as backend, new WiFiConfig #33

Closed
3 tasks done
ricki-z opened this issue Jan 14, 2017 · 13 comments
Closed
3 tasks done

Comments

@ricki-z
Copy link
Member

ricki-z commented Jan 14, 2017

These are some enhancements that will come with the next versions:

  • support for InfluxDB as backend
  • support for MQTT as backend too many different payload strings and auth methods
  • new config page as a more flexible replacement for WiFiManager
@ricki-z ricki-z changed the title Work in progress: support for InfluxDB and MQTT as backend, new WiFiConfig Work in progress: support for InfluxDB ~~and MQTT~~ as backend, new WiFiConfig Jan 15, 2017
@ricki-z ricki-z changed the title Work in progress: support for InfluxDB ~~and MQTT~~ as backend, new WiFiConfig Work in progress: support for InfluxDB and MQTT as backend, new WiFiConfig Jan 15, 2017
@ensonic
Copy link

ensonic commented Jan 15, 2017

What do you mean by "too many different payload strings and auth methods"? If this gets dropped, whats the suggested way to log the data to some place where I can get history and e.g. graphs?

@ricki-z
Copy link
Member Author

ricki-z commented Jan 15, 2017

Some mqtt brokers need user name and password, others need a device id and a device password.
I've requests for a payload with a special format and a payload with json formatted data.
You can easily implement a "proxy", that translate json to mqtt. Then you can use this proxy as custom api.
Historic data can be found here: http(s)://archive.luftdaten.info/
Graphs can be found here: http(s)://www.madavi.de/sensor/graph.php
"Life" data can be found here: http(s)://api.luftdaten.info/static/v1/data.json . This file is updated every minute and contains all sensors and values sent to the server in the last 5 minutes.

@ensonic
Copy link

ensonic commented Jan 15, 2017

Thanks for the explanation, makes sense. I'll look into the custom-api suggestion. Is there an irc / gitter.im chat for this project (so that I don't hijack more threads :))?

@ricki-z
Copy link
Member Author

ricki-z commented Jan 15, 2017

We use slack. Please send a short mail to our info address with the request for an invitation.

@amotl
Copy link

amotl commented May 4, 2017

Dear Rajko and the whole team of luftdaten.info,

first things first: Thanks for conceiving this great project!

Together with @einsiedlerkrebs, we recently have been able to dedicate some time to consuming and processing the data you are publishing.

The outcome of that work is called Luftdatenpumpe. It can read measurement data from the luftdaten.info live api and republish it to MQTT, essentially implementing the HTTP to MQTT convergence like outlined in your post above.

Cheers,
Andreas.


P.S.: Along the lines, Luftdatenpumpe can also write the data to an InfluxDB database and is able to provision an appropriate Grafana dashboard to display historical data from all sensors by geographical location.

Maybe this can spark your interest, it could become it a meaningful supplement to the luftdaten.info map you already provide with more flexible access capabilities compared to the current RRDTOOL-based graphing.

To get more into the details, you might want to have a look at about luftdaten.info in InfluxDB and Grafana. We are happy to receive any feedback and answer further questions about this.

@njumaen
Copy link

njumaen commented May 5, 2017

@amotl This ist soooooo awesome!!! Great work!

@tho-wa
Copy link

tho-wa commented May 21, 2017

Is it down actually @amotl ?

@amotl
Copy link

amotl commented May 22, 2017

Dear Thomas (@tho-wa),

you are right, very sorry. We expanded the disk size of the machine before the weekend and missed to spin up the (separate) Grafana instance again. Now its up and running again, thanks for noticing!

Cheers,
Andreas.

@rzr
Copy link

rzr commented Jan 30, 2019

Basic MQTT support is still welcome, at least as well as WebThing REST API

Some hints at:

@ricki-z
Copy link
Member Author

ricki-z commented Feb 1, 2019

@rzr please read the complete thread. There are good reasons why we don't support MQTT (memory usage, different configs for different platforms, and if we start with one platform how should we argue against others)

@rzr
Copy link

rzr commented Jun 17, 2019

Well i assumed there were traction for MQTT support:

So I guess it should be implemented in per platform custom fw,

I am targeting this device:
ESP8266 ESP8266EX LoLin NodeMcu v3

Any clue ?

@ricki-z
Copy link
Member Author

ricki-z commented Jun 17, 2019

You could modify the "Own API" functionality. Or set up a mapper JSON to MQTT and use this as an "Own API" endpoint.
There is more than just implementing MQTT. This protocol is very unspecific about the data format.
And: The source code should work on all ESP8266 systems with more than 1MB flash memory. There is no need for a per platform fw.

rzr added a commit to SamsungInternet/iotjs-express that referenced this issue Jun 18, 2019
It was used along luftdaten sensor, using custom API using endpoint:

    /mqtt/broker.hivemq.com/1883/luftdaten.info,sensors,0

    mosquitto_sub -v -h broker.hivemq.com -p 1883 -t luftdaten.info,sensors,0
    {... ,"sensordatavalues":[{ ... "value":"42.00" ...

If needed replace broker/port, with your sensorid (not 0):

https://meine.luftdaten.info/sensors# (# : it's a number)

Note that for now only IoT.js runtime is supported in this example.

Relate-to: opendata-stuttgart/sensors-software#33
Change-Id: I8b75cc0311a5dac4c05b697ea32c17a1e3f18a60
Signed-off-by: Philippe Coval <p.coval@samsung.com>
rzr added a commit to SamsungInternet/iotjs-express that referenced this issue Jun 26, 2019
It was used along luftdaten sensor, using custom API using endpoint:

    /mqtt/broker.hivemq.com/1883/luftdaten.info,sensors,0

    mosquitto_sub -v -h broker.hivemq.com -p 1883 -t luftdaten.info,sensors,0
    {... ,"sensordatavalues":[{ ... "value":"42.00" ...

If needed replace broker/port, with your sensorid (not 0):

https://meine.luftdaten.info/sensors# (# : it's a number)

Note that for now only IoT.js runtime is supported in this example.

Relate-to: opendata-stuttgart/sensors-software#33
Change-Id: I8b75cc0311a5dac4c05b697ea32c17a1e3f18a60
Signed-off-by: Philippe Coval <p.coval@samsung.com>
@dirkmueller
Copy link
Collaborator

Looks like nothing is still open here mqtt had been removed (although it could be added back now that we have fewer constraints on memory)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants