Coder Social home page Coder Social logo

tinfluxws's Introduction

TinFluxWS

The Tinkerforge InfluxDB Weather Station. Short: TinFluxWS

What for

This tiny docker image will collect periodically Tinkerforge sensor values and saves them into a InfluxDB.

Supported Tinkerforge Bricklets

Sensors will automatically be detected.

As a nice feature, since version 1.7.x, TinFluxWS calculates things like:

  • Saturation vapor pressure
  • Water vapor partial pressure
  • Specific humidity
  • Max specific humidity
  • Mixing ratio - moisture level
  • Dense water vapor
  • Dense dry air
  • Dense humid air
  • Dew point temperature
  • Absolute humidity
  • Altitude (with offset possibility - see TINFLUXWS_ALTITUDEOFFSET env. var.)

Please keep in mind that these calculations require a temperature, humidity and air pressure Bricklet!

Graphing

Thanks to the amazing Grafana project you can graph then the measured sensor values.

Supported tags and respective Dockerfile links

Using this Image

Requirements

Configuration

The TinFluxWS image uses several environment variables to automatically configure certain parts of the application. They may significantly aid you in using this image.

TINFLUXWS_STATIONNAME

Adds a name to the TinFluxWStaion. This name will also be the measurement name within the provided InfluxDB database.

TINFLUXWS_MASTERBRICK_HOST

Lets the application know on which IP/Hostname the Master Brick can be found.

TINFLUXWS_MASTERBRICK_PORT

The TCP port on which the Master Brick will listen.

TINFLUXWS_CALLBACKPERIOD

Sets the frequent (as integer in seconds) for measuring the environment.

TINFLUXWS_ALTITUDEOFFSET

Sets the offset (can be a negative or positive integer) for the altitude calculation. This may be necessary because the calculation works with approximations constants.

TINFLUXWS_INFLUXDB_HOST_URI

The URI to connect to the Influx RESTful API

TINFLUXWS_INFLUXDB_NAME

The Influx database name. In this DB will measurements be placed.

TINFLUXWS_INFLUXDB_USER

Influx user with write permissions

Consider using env-files or docker secrets for storing this sensitive data!

TINFLUXWS_INFLUXDB_PASSWD

Influx user's password

Consider using env-files or docker secrets for storing this sensitive data!

Docker-Compose example file

version: "3.5"

services:
  tinfluxweatherstation:
    image: keusendev/tinfluxws:latest
    container_name: tinfluxws
    restart: always
    environment:
      - TINFLUXWS_STATIONNAME=myWeatherStationName
      - TINFLUXWS_MASTERBRICK_HOST=masterb.domain.local
      - TINFLUXWS_MASTERBRICK_PORT=4223
      - TINFLUXWS_CALLBACKPERIOD=300
      - TINFLUXWS_ALTITUDEOFFSET=29
      - TINFLUXWS_INFLUXDB_HOST_URI=https://influxhost.domain.local:443
      - TINFLUXWS_INFLUXDB_NAME=myInfluxDB

    # Because of security reasons, the following env variables should be placed in a separate .env file.
    # Even better use Docker secrets: https://docs.docker.com/engine/swarm/secrets/
    # - TINFLUXWS_INFLUXDB_USER=
    # - TINFLUXWS_INFLUXDB_PASSWD=

  # env_file:
    # - ./docker.env

    secrets:
      - influxuser
      - influxpassword

# File based docker secrets (if not in swarm mode):
secrets:
  influxuser:
    file: ./dbusername
  influxpassword:
    file: ./dbpassword

License

View license information for the software contained in this image.

As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).

As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.

Versions

  • 04.05.2019: Add Moisture sensor, switched to dotnet core 2.2 (1.9.0)
  • 13.04.2019: New github location (1.8.1)
  • 30.09.2018: Add UV Light sensor (1.8.0)
  • 05.07.2018: minor fixes (1.7.1)
  • 05.07.2018: Add altitude calculation and some code refactoring (1.7)
  • 02.07.2018: New air calculation features like absolute humidity added (1.6)
  • 30.06.2018: Initial public release (1.5)

tinfluxws's People

Contributors

akeusen avatar keusendev avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.