summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2020-12-08 21:41:33 +0100
committermakefu <github@syntax-fehler.de>2020-12-08 21:41:33 +0100
commitdeb3343d1eff747f37d08730d187574677540bf7 (patch)
tree617a5005a1399d38cfd91cc46d9abfa8c0a298ed
parent9d32c9731b90afe0f2227979185364efbe6e0ef4 (diff)
shack/powerraw: pin usb device and use new powerraw release to set the appropriate device instead of guessing /dev/ttyUSB0
-rw-r--r--krebs/2configs/shack/powerraw.nix11
1 files changed, 8 insertions, 3 deletions
diff --git a/krebs/2configs/shack/powerraw.nix b/krebs/2configs/shack/powerraw.nix
index 3cf6beb28..cc3692e85 100644
--- a/krebs/2configs/shack/powerraw.nix
+++ b/krebs/2configs/shack/powerraw.nix
@@ -8,20 +8,25 @@ let
pkg = pkgs.python3.pkgs.callPackage (
pkgs.fetchgit {
url = "https://git.shackspace.de/rz/powermeter.git";
- rev = "96609f0d632e0732afa768ddd7b3f8841ca37c1b";
- sha256 = "sha256:0wfpm3ik5r081qv2crmpjwylgg2v8ximq347qh0fzq1rwv0dqbnn";
+ rev = "438b08f";
+ sha256 = "0c5czmrwlw985b7ia6077mfrvbf2fq51iajb481pgqbywgxqis5m";
}) {};
in {
# receive response from light.shack / standby.shack
networking.firewall.allowedUDPPorts = [ 11111 ];
users.users.powermeter.extraGroups = [ "dialout" ];
+ # we make sure that usb-ttl has the correct permissions
+ # creates /dev/powerraw
+ services.udev.extraRules = ''
+ SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", SYMLINK+="powerraw", MODE="0660", GROUP="dialout"
+ '';
systemd.services.powermeter-serial2mqtt = {
description = "powerraw Serial -> mqtt";
wantedBy = [ "multi-user.target" ];
serviceConfig = {
User = "powermeter";
- ExecStart = "${pkg}/bin/powermeter-serial2mqtt";
+ ExecStart = "${pkg}/bin/powermeter-serial2mqtt /dev/powerraw";
PrivateTmp = true;
Restart = "always";
RestartSec = "15";