From e685d9d130cec29299576babaa5212e4a13f776d Mon Sep 17 00:00:00 2001 From: Ben Kristinsson Date: Mon, 19 Sep 2022 12:20:05 +0200 Subject: [PATCH 1/6] moving old util codes and examples out of package --- .dockerignore | 5 +++++ {sudoisbot => scripts/misc}/util/common.py | 0 {sudoisbot => scripts/misc}/util/csv2db.py | 0 {sudoisbot => scripts/misc}/util/csv2influx.py | 0 {sudoisbot => scripts/misc}/util/csv2json.py | 0 {sudoisbot => scripts/misc}/util/fromfirstlog.py | 0 {sudoisbot => scripts/misc}/util/graphtemps.py | 0 {sudoisbot => scripts/misc}/util/guide/MDP.py | 0 {sudoisbot => scripts/misc}/util/guide/majordomo.py | 0 {sudoisbot => scripts/misc}/util/guide/oldpirate.py | 0 {sudoisbot => scripts/misc}/util/guide/paranoidpirate.py | 0 {sudoisbot => scripts/misc}/util/guide_modified/lpclient.py | 0 {sudoisbot => scripts/misc}/util/guide_modified/ppworker.py | 0 {sudoisbot => scripts/misc}/util/json2influx.py | 0 {sudoisbot => scripts/misc}/util/json2mariadb.py | 0 {sudoisbot => scripts/misc}/util/notifier.py | 0 {sudoisbot => scripts/misc}/util/oldproxy/majordomo.py | 0 {sudoisbot => scripts/misc}/util/oldproxy/paranoidpirate.py | 0 {sudoisbot => scripts/misc}/util/oldproxy/proxy.py | 0 {sudoisbot => scripts/misc}/util/oldproxy/simplepirate.py | 0 {sudoisbot => scripts/misc}/util/pubtest.py | 0 {sudoisbot => scripts/misc}/util/recenttemps.py | 0 {sudoisbot => scripts/misc}/util/suball.py | 0 {sudoisbot => scripts/misc}/util/temper_csv_converter.py | 0 {sudoisbot => scripts/misc}/util/updatetemps.sh | 0 25 files changed, 5 insertions(+) create mode 100644 .dockerignore rename {sudoisbot => scripts/misc}/util/common.py (100%) rename {sudoisbot => scripts/misc}/util/csv2db.py (100%) rename {sudoisbot => scripts/misc}/util/csv2influx.py (100%) rename {sudoisbot => scripts/misc}/util/csv2json.py (100%) rename {sudoisbot => scripts/misc}/util/fromfirstlog.py (100%) rename {sudoisbot => scripts/misc}/util/graphtemps.py (100%) rename {sudoisbot => scripts/misc}/util/guide/MDP.py (100%) rename {sudoisbot => scripts/misc}/util/guide/majordomo.py (100%) rename {sudoisbot => scripts/misc}/util/guide/oldpirate.py (100%) rename {sudoisbot => scripts/misc}/util/guide/paranoidpirate.py (100%) rename {sudoisbot => scripts/misc}/util/guide_modified/lpclient.py (100%) rename {sudoisbot => scripts/misc}/util/guide_modified/ppworker.py (100%) rename {sudoisbot => scripts/misc}/util/json2influx.py (100%) rename {sudoisbot => scripts/misc}/util/json2mariadb.py (100%) rename {sudoisbot => scripts/misc}/util/notifier.py (100%) rename {sudoisbot => scripts/misc}/util/oldproxy/majordomo.py (100%) rename {sudoisbot => scripts/misc}/util/oldproxy/paranoidpirate.py (100%) rename {sudoisbot => scripts/misc}/util/oldproxy/proxy.py (100%) rename {sudoisbot => scripts/misc}/util/oldproxy/simplepirate.py (100%) rename {sudoisbot => scripts/misc}/util/pubtest.py (100%) rename {sudoisbot => scripts/misc}/util/recenttemps.py (100%) rename {sudoisbot => scripts/misc}/util/suball.py (100%) rename {sudoisbot => scripts/misc}/util/temper_csv_converter.py (100%) rename {sudoisbot => scripts/misc}/util/updatetemps.sh (100%) diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..4ae4bdc --- /dev/null +++ b/.dockerignore @@ -0,0 +1,5 @@ +**/.git +.gitignore +.gitattributes +__pycache__ +**/__pycache__ \ No newline at end of file diff --git a/sudoisbot/util/common.py b/scripts/misc/util/common.py similarity index 100% rename from sudoisbot/util/common.py rename to scripts/misc/util/common.py diff --git a/sudoisbot/util/csv2db.py b/scripts/misc/util/csv2db.py similarity index 100% rename from sudoisbot/util/csv2db.py rename to scripts/misc/util/csv2db.py diff --git a/sudoisbot/util/csv2influx.py b/scripts/misc/util/csv2influx.py similarity index 100% rename from sudoisbot/util/csv2influx.py rename to scripts/misc/util/csv2influx.py diff --git a/sudoisbot/util/csv2json.py b/scripts/misc/util/csv2json.py similarity index 100% rename from sudoisbot/util/csv2json.py rename to scripts/misc/util/csv2json.py diff --git a/sudoisbot/util/fromfirstlog.py b/scripts/misc/util/fromfirstlog.py similarity index 100% rename from sudoisbot/util/fromfirstlog.py rename to scripts/misc/util/fromfirstlog.py diff --git a/sudoisbot/util/graphtemps.py b/scripts/misc/util/graphtemps.py similarity index 100% rename from sudoisbot/util/graphtemps.py rename to scripts/misc/util/graphtemps.py diff --git a/sudoisbot/util/guide/MDP.py b/scripts/misc/util/guide/MDP.py similarity index 100% rename from sudoisbot/util/guide/MDP.py rename to scripts/misc/util/guide/MDP.py diff --git a/sudoisbot/util/guide/majordomo.py b/scripts/misc/util/guide/majordomo.py similarity index 100% rename from sudoisbot/util/guide/majordomo.py rename to scripts/misc/util/guide/majordomo.py diff --git a/sudoisbot/util/guide/oldpirate.py b/scripts/misc/util/guide/oldpirate.py similarity index 100% rename from sudoisbot/util/guide/oldpirate.py rename to scripts/misc/util/guide/oldpirate.py diff --git a/sudoisbot/util/guide/paranoidpirate.py b/scripts/misc/util/guide/paranoidpirate.py similarity index 100% rename from sudoisbot/util/guide/paranoidpirate.py rename to scripts/misc/util/guide/paranoidpirate.py diff --git a/sudoisbot/util/guide_modified/lpclient.py b/scripts/misc/util/guide_modified/lpclient.py similarity index 100% rename from sudoisbot/util/guide_modified/lpclient.py rename to scripts/misc/util/guide_modified/lpclient.py diff --git a/sudoisbot/util/guide_modified/ppworker.py b/scripts/misc/util/guide_modified/ppworker.py similarity index 100% rename from sudoisbot/util/guide_modified/ppworker.py rename to scripts/misc/util/guide_modified/ppworker.py diff --git a/sudoisbot/util/json2influx.py b/scripts/misc/util/json2influx.py similarity index 100% rename from sudoisbot/util/json2influx.py rename to scripts/misc/util/json2influx.py diff --git a/sudoisbot/util/json2mariadb.py b/scripts/misc/util/json2mariadb.py similarity index 100% rename from sudoisbot/util/json2mariadb.py rename to scripts/misc/util/json2mariadb.py diff --git a/sudoisbot/util/notifier.py b/scripts/misc/util/notifier.py similarity index 100% rename from sudoisbot/util/notifier.py rename to scripts/misc/util/notifier.py diff --git a/sudoisbot/util/oldproxy/majordomo.py b/scripts/misc/util/oldproxy/majordomo.py similarity index 100% rename from sudoisbot/util/oldproxy/majordomo.py rename to scripts/misc/util/oldproxy/majordomo.py diff --git a/sudoisbot/util/oldproxy/paranoidpirate.py b/scripts/misc/util/oldproxy/paranoidpirate.py similarity index 100% rename from sudoisbot/util/oldproxy/paranoidpirate.py rename to scripts/misc/util/oldproxy/paranoidpirate.py diff --git a/sudoisbot/util/oldproxy/proxy.py b/scripts/misc/util/oldproxy/proxy.py similarity index 100% rename from sudoisbot/util/oldproxy/proxy.py rename to scripts/misc/util/oldproxy/proxy.py diff --git a/sudoisbot/util/oldproxy/simplepirate.py b/scripts/misc/util/oldproxy/simplepirate.py similarity index 100% rename from sudoisbot/util/oldproxy/simplepirate.py rename to scripts/misc/util/oldproxy/simplepirate.py diff --git a/sudoisbot/util/pubtest.py b/scripts/misc/util/pubtest.py similarity index 100% rename from sudoisbot/util/pubtest.py rename to scripts/misc/util/pubtest.py diff --git a/sudoisbot/util/recenttemps.py b/scripts/misc/util/recenttemps.py similarity index 100% rename from sudoisbot/util/recenttemps.py rename to scripts/misc/util/recenttemps.py diff --git a/sudoisbot/util/suball.py b/scripts/misc/util/suball.py similarity index 100% rename from sudoisbot/util/suball.py rename to scripts/misc/util/suball.py diff --git a/sudoisbot/util/temper_csv_converter.py b/scripts/misc/util/temper_csv_converter.py similarity index 100% rename from sudoisbot/util/temper_csv_converter.py rename to scripts/misc/util/temper_csv_converter.py diff --git a/sudoisbot/util/updatetemps.sh b/scripts/misc/util/updatetemps.sh similarity index 100% rename from sudoisbot/util/updatetemps.sh rename to scripts/misc/util/updatetemps.sh -- 2.40.1 From c77c645f80704c75eb7bcd5a26bbd75d536651e8 Mon Sep 17 00:00:00 2001 From: Ben Kristinsson Date: Mon, 19 Sep 2022 12:21:10 +0200 Subject: [PATCH 2/6] old telegram bot code --- {sudoisbot => scripts/misc}/telegram/listener.py | 0 {sudoisbot => scripts/misc}/telegram/sendmsg.py | 0 {sudoisbot => scripts/misc}/telegram/sendtelegram.py | 0 {sudoisbot => scripts/misc}/telegram/tglistener.py | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename {sudoisbot => scripts/misc}/telegram/listener.py (100%) rename {sudoisbot => scripts/misc}/telegram/sendmsg.py (100%) rename {sudoisbot => scripts/misc}/telegram/sendtelegram.py (100%) rename {sudoisbot => scripts/misc}/telegram/tglistener.py (100%) diff --git a/sudoisbot/telegram/listener.py b/scripts/misc/telegram/listener.py similarity index 100% rename from sudoisbot/telegram/listener.py rename to scripts/misc/telegram/listener.py diff --git a/sudoisbot/telegram/sendmsg.py b/scripts/misc/telegram/sendmsg.py similarity index 100% rename from sudoisbot/telegram/sendmsg.py rename to scripts/misc/telegram/sendmsg.py diff --git a/sudoisbot/telegram/sendtelegram.py b/scripts/misc/telegram/sendtelegram.py similarity index 100% rename from sudoisbot/telegram/sendtelegram.py rename to scripts/misc/telegram/sendtelegram.py diff --git a/sudoisbot/telegram/tglistener.py b/scripts/misc/telegram/tglistener.py similarity index 100% rename from sudoisbot/telegram/tglistener.py rename to scripts/misc/telegram/tglistener.py -- 2.40.1 From 67a2650c19e318130506754d671bcc307617d42a Mon Sep 17 00:00:00 2001 From: Ben Kristinsson Date: Mon, 19 Sep 2022 12:24:43 +0200 Subject: [PATCH 3/6] build scripts --- scripts/{ => build}/docker-build.sh | 0 scripts/{ => build}/docker-run.sh | 0 scripts/{ => build}/docker.env | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename scripts/{ => build}/docker-build.sh (100%) rename scripts/{ => build}/docker-run.sh (100%) rename scripts/{ => build}/docker.env (100%) diff --git a/scripts/docker-build.sh b/scripts/build/docker-build.sh similarity index 100% rename from scripts/docker-build.sh rename to scripts/build/docker-build.sh diff --git a/scripts/docker-run.sh b/scripts/build/docker-run.sh similarity index 100% rename from scripts/docker-run.sh rename to scripts/build/docker-run.sh diff --git a/scripts/docker.env b/scripts/build/docker.env similarity index 100% rename from scripts/docker.env rename to scripts/build/docker.env -- 2.40.1 From 84addef0f083fe3d81f3d4c29db6378d5efdd2b0 Mon Sep 17 00:00:00 2001 From: Ben Kristinsson Date: Mon, 19 Sep 2022 12:28:43 +0200 Subject: [PATCH 4/6] updated from ben/dht --- misc/dht/dht.c | 68 +++++++++++++++++++++++++++++++++++++------------- 1 file changed, 51 insertions(+), 17 deletions(-) diff --git a/misc/dht/dht.c b/misc/dht/dht.c index 3795bcc..ec76169 100644 --- a/misc/dht/dht.c +++ b/misc/dht/dht.c @@ -3,6 +3,10 @@ * read temperature and humidity from DHT11 or DHT22 sensor * * depends on 'wiringpi' apt package + * based on: http://www.uugear.com/portfolio/read-dht1122-temperature-humidity-sensor-from-raspberry-pi/ + * + * wiring pi layout: http://wiringpi.com/pins/ + */ #include @@ -11,13 +15,14 @@ #include #define MAX_TIMINGS 85 +#define MAX_TRIES 5 int data[5] = { 0, 0, 0, 0, 0 }; -void print_json(int dht_pin) { +int print_json(int dht_pin) { uint8_t laststate = HIGH; - uint8_t counter = 0; - uint8_t j = 0, i; + uint8_t counter = 0; + uint8_t j = 0, i; data[0] = data[1] = data[2] = data[3] = data[4] = 0; @@ -28,14 +33,17 @@ void print_json(int dht_pin) { /* prepare to read the pin */ pinMode(dht_pin, INPUT); + //printf("%i\n", laststate); /* detect change and read data */ for (i = 0; i < MAX_TIMINGS; i++) { counter = 0; - while ( digitalRead(dht_pin) == laststate ) { + + while (digitalRead(dht_pin) == laststate ) { counter++; delayMicroseconds(1); if (counter == 255) { + //printf("inner 255 at %i\n", i); break; } } @@ -49,8 +57,9 @@ void print_json(int dht_pin) { if ( (i >= 4) && (i % 2 == 0) ) { /* shove each bit into the storage bytes */ data[j / 8] <<= 1; - if (counter > 16) + if (counter > 16) { data[j / 8] |= 1; + } j++; } } @@ -59,34 +68,59 @@ void print_json(int dht_pin) { * check we read 40 bits (8bit x 5 ) + verify checksum in the last byte * print it out if data is good */ - if ((j >= 40) && (data[4] == ((data[0]+data[1]+data[2]+data[3]) & 0xFF))) { + if ( (j>=40) && (data[4] == ((data[0]+data[1]+data[2]+data[3]) & 0xFF)) ) { float h = (float)((data[0] << 8) + data[1]) / 10; - if ( h > 100 ) { + if (h > 100) { h = data[0]; // for DHT11 } float c = (float)(((data[2] & 0x7F) << 8) + data[3]) / 10; - if ( c > 125 ) { + if (c > 125) { c = data[2]; // for DHT11 } - if ( data[2] & 0x80 ) { + if (data[2] & 0x80) { c = -c; } - printf("{\"humidity\": %.1f, \"temp\": %.1f}\n", h, c); + printf("{\"humidity\": %.1f, \"temp\": %.1f, \"dht_pin\": %d}\n", h, c, dht_pin); + return 0; } else { - printf("{\"error\": \"checksum\"}\n" ); + // printf("{\"error\": \"checksum\"}\n" ); + return 1; } } -int main(int argc, char *argv[]) { +int main(int argc, char* argv[]) { if (wiringPiSetup() == -1) { + printf("{\"error\": \"please install wiringPi\"}\n" ); exit(1); } - /* dht_pin 3 is GPIO-22 */ - int dht_pin; - if (argc > 0 && sscanf(argv[1], "%i", &dht_pin) != 1) { + + // defaulting to pin 3 + // in wiringPi, dht_pin 3 is GPIO-22 + // reference: http://wiringpi.com/pins/ + int dht_pin = 3; + if (argc == 2) { + // read first argument and try to parse as string + + if (sscanf(argv[1], "%i", &dht_pin) != 1) { + printf("{\"error\": \"parsing DHT_PIN failed\"}\n"); + exit(3); + } + } else if (argc != 1) { + printf("{\"error\": \"usage: ./dht [DHT_PIN]\"}\n" ); exit(2); } - print_json(dht_pin); - return(0); + int i; + int dht_res = 1; + while (dht_res !=0 && i < MAX_TRIES) { + delay(2000); + dht_res = print_json(dht_pin); + i++; + } + + if (dht_res != 0) { + printf("{\"error\": \"no valid data\", \"dht_pin\": %d}\n", dht_pin); + } + + return(dht_res); } -- 2.40.1 From 0fc9725d1f9e7604c879ec999722a5130186e2a3 Mon Sep 17 00:00:00 2001 From: Ben Kristinsson Date: Mon, 19 Sep 2022 16:46:51 +0200 Subject: [PATCH 5/6] rename to extra/ --- {misc => extra}/arduino/current/arduino_current.ino | 0 {misc => extra}/arduino/rain/rain.ino | 0 {misc => extra}/dht/dht.c | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename {misc => extra}/arduino/current/arduino_current.ino (100%) rename {misc => extra}/arduino/rain/rain.ino (100%) rename {misc => extra}/dht/dht.c (100%) diff --git a/misc/arduino/current/arduino_current.ino b/extra/arduino/current/arduino_current.ino similarity index 100% rename from misc/arduino/current/arduino_current.ino rename to extra/arduino/current/arduino_current.ino diff --git a/misc/arduino/rain/rain.ino b/extra/arduino/rain/rain.ino similarity index 100% rename from misc/arduino/rain/rain.ino rename to extra/arduino/rain/rain.ino diff --git a/misc/dht/dht.c b/extra/dht/dht.c similarity index 100% rename from misc/dht/dht.c rename to extra/dht/dht.c -- 2.40.1 From f64dfee17dae1d9f259af46aecbfd686332e4b71 Mon Sep 17 00:00:00 2001 From: Ben Kristinsson Date: Mon, 19 Sep 2022 16:48:30 +0200 Subject: [PATCH 6/6] new name added to README --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index a64068b..adfbcce 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,8 @@ this is a home monitoring system written in python and using [zmq](https://www.zeromq.org). +_NOTE: this project will be renamed, most likely to `roomie`._ + ![sudoisbot in grafna](docs/img/sudoisbot-grafana.png) ## related projects -- 2.40.1