Sign inSign up

jdahlke/btmon3

By jdahlke

•Updated over 2 years ago

Data collector/processor for Brultech monitoring devices with support for Python 3 and InfluxDB2.

Image
0

10K+

jdahlke/btmon3 repository overview

⁠Introduction

This image runs a data collector/processor for Brultech monitoring devices with support for Python 3 and InfluxDB2.

⁠BTMON

Data collector/processor for Brultech monitoring devices using Python 3 with support for InfluxDB2.

Collect data from Brultech ECM-1240, ECM-1220, and GEM power monitors. Print the data, save the data to database, or upload the data to a server.

Includes support for uploading to the following services:

 * MyEnerSave     * SmartEnergyGroups   * xively         * WattzOn
 * PlotWatt       * PeoplePower         * thingspeak     * Eragy
 * emoncms        * Wattvision          * PVOutput       * Bidgely
 * MQTT           * InfluxDB            * InfluxDB2

Thanks to: Amit Snyderman [email protected]⁠ bpwwer & tenholde from the cocoontech.com forums Kelvin Kakugawa brian jackson [http://fivejacksons.com/brian/⁠] Marc MERLIN [email protected]⁠ - http://marc.merlins.org/⁠ Ben [email protected]⁠ Eric Sandeen Mark Lennox Graham Allan

Copyright 2012-2015 Matthew Wall, all rights reserved

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

See http://www.gnu.org/licenses/⁠

⁠BTMON How To

http://lancet.mit.edu/mwall/projects/power/btmon-howto.html⁠

⁠Running the docker container

⁠Using docker run

docker run \
 -v <path to btmon.cfg file>:/etc/btmon/btmon.cfg \
 jdahlke/btmon3:latest 

⁠Using docker-compose

docker-compose up -d
⁠docker-compose.yml
version: '3.4'
services:
  btmon:
    image: jdahlke/btmon3:latest
    container_name: btmon
    restart: always
    volumes:
      - /etc/localtime:/etc/localtime:ro
      ## Adjust below paths (the left part) to your liking.
      - appdata/btmon/btmon.cfg:/etc/btmon/btmon.cfg

⁠InfluxDB2 Configuration:

This uses the InfluxDB HTTP API, which by default runs on port 8086. You must specify the org, bucket, and measurement to write to.

[influxdb2]
influxdb2_out = true
influxdb2_url = localhost:8086                       # default
influxdb2_upload_period = 60                         # default
influxdb2_org = abcde                                # required
influxdb2_bucket = btmon                             # required
influxdb2_token = token                              # required
influxdb2_measurement = energy                       # required
influxdb2_mode = row                                 # "row": 1 series w/ many values; "col": many series w/ 1 value each
influxdb2_map = 1234567_ch1_aws,a,1234567_ch2_aws,b  # renames channels
influxdb2_tags = key1,value1,key2,value2             # adds tags
influxdb2_db_schema = counters,ecmread,ecmreadext    # selects schema, default counters

⁠Source

https://github.com/jordandahlke/mtools/tree/influxdb⁠

Tag summary

Content type

Image

Digest

Size

20.5 MB

Last updated

over 4 years ago

docker pull jdahlke/btmon3