From 40764118789f79f79e943a95b805db4e929ec5d7 Mon Sep 17 00:00:00 2001 From: Karel Kočí Date: Wed, 12 Sep 2018 17:18:42 +0200 Subject: Tweak bigclown packages --- bigclown-gateway/files/init | 57 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100755 bigclown-gateway/files/init (limited to 'bigclown-gateway/files/init') diff --git a/bigclown-gateway/files/init b/bigclown-gateway/files/init new file mode 100755 index 0000000..090cc06 --- /dev/null +++ b/bigclown-gateway/files/init @@ -0,0 +1,57 @@ +#!/bin/sh /etc/rc.common + +START=98 +STOP=1 + +USE_PROCD=1 + +PROG=/usr/bin/bcg +CONF=/tmp/etc/bigclown-gateway.conf + +append() { + local cfg="$1" + local uci_name="$2" + local out_name="$3" + local default="$4" + config_get val $cfg $uci_name $default + if [ -n "$val" ]; then + echo "$out_name $val" >> $CONF + fi +} + +start_service() { + config_load bigclown-gateway + + rm -rf $CONF + echo "Generating bigclown-gateway config file in $CONF" + + append gateway name 'name:' usb-dongle + # TODO add udev rules and use different default here + append gateway device 'device:' /dev/ttyUSB0 + append gateway automatic_rename_kit_nodes 'automatic_rename_kit_nodes:' 1 + append gateway base_topic_prefix 'base_topic_prefix:' + + echo "mqtt:" >> $CONF + append mqtt host ' host:' localhost + append mqtt port ' port:' 1883 + append mqtt cafile ' cafile:' + append mqtt certfile ' certfile:' + append mqtt keyfile ' keyfile:' + + procd_open_instance + procd_set_param respawn + procd_set_param command "$PROG" -c "$CONF" -W + procd_set_param stdout 1 + procd_set_param stderr 1 + procd_close_instance +} + +stop_service() { + service_stop "$PROG" + ps | grep "$PROG" | grep -v grep | sed -e 's/^\s*\([0-9]\+\)\s.*$/\1/' | xargs -r -- kill -9 +} + +service_triggers() +{ + procd_add_reload_trigger 'bc-gateway-usb-dongle' +} -- cgit v1.3 From ba6eb4bfe3ab05685ae1289b10b04c9bf8112e35 Mon Sep 17 00:00:00 2001 From: Karel Kočí Date: Wed, 12 Sep 2018 22:09:25 +0200 Subject: bigclown-gateway: Try to fix udev rule and change path --- bigclown-gateway/Makefile | 2 +- bigclown-gateway/files/config | 2 +- bigclown-gateway/files/init | 2 +- bigclown-gateway/files/udev | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) (limited to 'bigclown-gateway/files/init') diff --git a/bigclown-gateway/Makefile b/bigclown-gateway/Makefile index f5de297..4c41fc5 100644 --- a/bigclown-gateway/Makefile +++ b/bigclown-gateway/Makefile @@ -1,7 +1,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=bigclown-gateway -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_SOURCE_URL:=https://github.com/bigclownlabs/bch-gateway.git PKG_MAINTAINER:=Karel Kočí diff --git a/bigclown-gateway/files/config b/bigclown-gateway/files/config index 7fa3977..d880476 100644 --- a/bigclown-gateway/files/config +++ b/bigclown-gateway/files/config @@ -1,7 +1,7 @@ config config 'gateway' option name 'usb-dongle' - option device '/dev/ttyUSB0' + option device '/dev/bcUD0' option automatic_rename_kit_nodes '1' config config 'mqtt' diff --git a/bigclown-gateway/files/init b/bigclown-gateway/files/init index 090cc06..28f6e7e 100755 --- a/bigclown-gateway/files/init +++ b/bigclown-gateway/files/init @@ -27,7 +27,7 @@ start_service() { append gateway name 'name:' usb-dongle # TODO add udev rules and use different default here - append gateway device 'device:' /dev/ttyUSB0 + append gateway device 'device:' /dev/bcUD0 append gateway automatic_rename_kit_nodes 'automatic_rename_kit_nodes:' 1 append gateway base_topic_prefix 'base_topic_prefix:' diff --git a/bigclown-gateway/files/udev b/bigclown-gateway/files/udev index d7a854b..5409c56 100644 --- a/bigclown-gateway/files/udev +++ b/bigclown-gateway/files/udev @@ -1 +1 @@ -SUBSYSTEMS=="usb", ACTION=="add", KERNEL=="ttyUSB*", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6015", ATTRS{serial}=="bc-usb-dongle*", SYMLINK+="bcUD%n", TAG+="systemd", ENV{SYSTEMD_ALIAS}="/dev/bcUD%n" +SUBSYSTEMS=="usb", ACTION=="add", KERNEL=="ttyUSB*", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6015", ATTRS{serial}=="bc-usb-dongle*", SYMLINK+="bcUD%n" -- cgit v1.3 From f92e15fbe52427e51260f60fe902da18ae85fd2a Mon Sep 17 00:00:00 2001 From: Karel Kočí Date: Thu, 13 Sep 2018 00:17:08 +0200 Subject: bigclown-gateway: ok no device link It seems to not work so just drop it. --- bigclown-gateway/Makefile | 4 +--- bigclown-gateway/files/config | 2 +- bigclown-gateway/files/hotplug | 32 -------------------------------- bigclown-gateway/files/init | 2 +- 4 files changed, 3 insertions(+), 37 deletions(-) delete mode 100644 bigclown-gateway/files/hotplug (limited to 'bigclown-gateway/files/init') diff --git a/bigclown-gateway/Makefile b/bigclown-gateway/Makefile index 17bcbae..df17fd6 100644 --- a/bigclown-gateway/Makefile +++ b/bigclown-gateway/Makefile @@ -1,7 +1,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=bigclown-gateway -PKG_RELEASE:=5 +PKG_RELEASE:=1 PKG_SOURCE_URL:=https://github.com/bigclownlabs/bch-gateway.git PKG_MAINTAINER:=Karel Kočí @@ -21,8 +21,6 @@ define Py3Package/$(PKG_NAME)/install $(INSTALL_CONF) ./files/config $(1)/etc/config/bigclown-gateway $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/init $(1)/etc/init.d/bigclown-gateway - $(INSTALL_DIR) $(1)/etc/hotplug.d/usb - $(INSTALL_DATA) ./files/hotplug $(1)/etc/hotplug.d/usb/50-bigclown-usb-dongle endef define Package/$(PKG_NAME)/conffiles diff --git a/bigclown-gateway/files/config b/bigclown-gateway/files/config index d880476..7fa3977 100644 --- a/bigclown-gateway/files/config +++ b/bigclown-gateway/files/config @@ -1,7 +1,7 @@ config config 'gateway' option name 'usb-dongle' - option device '/dev/bcUD0' + option device '/dev/ttyUSB0' option automatic_rename_kit_nodes '1' config config 'mqtt' diff --git a/bigclown-gateway/files/hotplug b/bigclown-gateway/files/hotplug deleted file mode 100644 index fb1ef59..0000000 --- a/bigclown-gateway/files/hotplug +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/sh -DEVNAME="$(ls "/sys/$DEVPATH" | grep "^ttyUSB[0-9]*$")" -[ -n "$DEVNAME" ] || exit 0 -[ "$ID_VENDOR" = "0403" ] || exit 0 -[ "$ID_MODEL" = "6015" ] || exit 0 -echo "$ID_SERIAL" | grep -q ".*bc-usb-dongle.*" || exit 0 - -action_add() { - local id=0 - while [ -e "/dev/bcUD$id" ]; do - id=$(expr $id + 1) - done - ln -sf "/dev/$DEVNAME" "/dev/bcUD$id" -} - -action_remove() { - local id=0 - while [ "$(readlink "/dev/bcUD$id")" = "$DEVNAME" ]; do - [ -e "/dev/bcUD$id" ] || return 0 - id=$(expr $id + 1) - done - rm "/dev/bcUD$id" -} - -case "$ACTION" in - add) - action_add - ;; - remove) - action_remove - ;; -esac diff --git a/bigclown-gateway/files/init b/bigclown-gateway/files/init index 28f6e7e..090cc06 100755 --- a/bigclown-gateway/files/init +++ b/bigclown-gateway/files/init @@ -27,7 +27,7 @@ start_service() { append gateway name 'name:' usb-dongle # TODO add udev rules and use different default here - append gateway device 'device:' /dev/bcUD0 + append gateway device 'device:' /dev/ttyUSB0 append gateway automatic_rename_kit_nodes 'automatic_rename_kit_nodes:' 1 append gateway base_topic_prefix 'base_topic_prefix:' -- cgit v1.3 From e48d2180906f69009fc830b5a1f5696c6e6ab88e Mon Sep 17 00:00:00 2001 From: Karel Kočí Date: Sun, 30 Sep 2018 08:02:09 +0200 Subject: bigclown: configure init script respawn --- bigclown-gateway/Makefile | 2 +- bigclown-gateway/files/init | 2 +- bigclown-mqtt2influxdb/Makefile | 2 +- bigclown-mqtt2influxdb/files/init | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) (limited to 'bigclown-gateway/files/init') diff --git a/bigclown-gateway/Makefile b/bigclown-gateway/Makefile index 03b25b1..031c315 100644 --- a/bigclown-gateway/Makefile +++ b/bigclown-gateway/Makefile @@ -1,7 +1,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=bigclown-gateway -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=https://github.com/bigclownlabs/bch-gateway.git PKG_MAINTAINER:=Karel Kočí diff --git a/bigclown-gateway/files/init b/bigclown-gateway/files/init index 090cc06..02f27d1 100755 --- a/bigclown-gateway/files/init +++ b/bigclown-gateway/files/init @@ -39,7 +39,7 @@ start_service() { append mqtt keyfile ' keyfile:' procd_open_instance - procd_set_param respawn + procd_set_param respawn ${respawn_threshold:-3600} ${respawn_timeout:-5} ${respawn_retry:-5} procd_set_param command "$PROG" -c "$CONF" -W procd_set_param stdout 1 procd_set_param stderr 1 diff --git a/bigclown-mqtt2influxdb/Makefile b/bigclown-mqtt2influxdb/Makefile index fd606f0..c77bbbe 100644 --- a/bigclown-mqtt2influxdb/Makefile +++ b/bigclown-mqtt2influxdb/Makefile @@ -1,7 +1,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=bigclown-mqtt2influxdb -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE_URL:=https://github.com/bigclownlabs/bch-mqtt2influxdb.git PKG_MAINTAINER:=Karel Kočí diff --git a/bigclown-mqtt2influxdb/files/init b/bigclown-mqtt2influxdb/files/init index 76e5d2d..5218205 100644 --- a/bigclown-mqtt2influxdb/files/init +++ b/bigclown-mqtt2influxdb/files/init @@ -10,7 +10,7 @@ CONF=/etc/bc-mqtt2influxdb.yml start_service() { procd_open_instance - procd_set_param respawn + procd_set_param respawn ${respawn_threshold:-3600} ${respawn_timeout:-5} ${respawn_retry:-5} procd_set_param command "$PROG" -c "$CONF" procd_set_param stdout 1 procd_set_param stderr 1 -- cgit v1.3