Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Unsolved
Collapse
Discussion Forum to share and further the development of home control and automation, independent of platforms.
propheadP

prophead

@prophead
Errors after updating to MQTTController build 25139
tunnusT
I'm running MSR build 25139 on Docker, using MQTT controller 24293, and everything working as expected. But if I try to upgrade to MQTTController build 25139, I'm getting the following errors on MSR UI: An Entity Attribute condition in "Lay-Z-Spa auto heating off" (Terrace) failed because the referenced entity "Lay-Z-Spa States" (mqtt>layzspa_states) does not have attribute value_sensor.god Last 11:20:37 An Entity Attribute condition in "Lay-Z-Spa auto heating off" (Terrace) failed because the referenced entity "Lay-Z-Spa States" (mqtt>layzspa_states) does not have attribute temperature_sensor.green Last 11:20:37 An Entity Attribute condition in "Lay-Z-Spa filter pump auto off" (Terrace) failed because the referenced entity "Lay-Z-Spa States" (mqtt>layzspa_states) does not have attribute temperature_sensor.red Last 11:20:37 An Entity Attribute condition in "Lay-Z-Spa filter pump auto run" (Terrace) failed because the referenced entity "Lay-Z-Spa States" (mqtt>layzspa_states) does not have attribute value_sensor.pump Last 11:20:37 An Entity Attribute condition in "Lay-Z-Spa watchdog" (Terrace) failed because the referenced entity "Lay-Z-Spa States" (mqtt>layzspa_states) does not have attribute value_sensor.status Last 11:20:37 My MQTT configuration (local_mqtt_devices.yaml) for the related entity is: layzspa_message: type: ValueSensor capabilities: ["temperature_sensor", "value_sensor", "power_sensor"] primary_attribute: power_sensor.value events: "layzspa/message": "power_sensor.value": json_payload: true if_expr: '! isnull( payload?.PWR )' expr: "float(payload.PWR)" "value_sensor.air": json_payload: true if_expr: '! isnull( payload?.AIR )' expr: "float(payload.AIR)" "value_sensor.pump": json_payload: true if_expr: '! isnull( payload?.FLT )' expr: "float(payload.FLT)" "value_sensor.god": json_payload: true if_expr: '! isnull( payload?.GOD )' expr: "float(payload.GOD)" "value_sensor.lock": json_payload: true if_expr: '! isnull( payload?.LCK )' expr: "float(payload.LCK)" "value_sensor.unit": json_payload: true if_expr: '! isnull( payload?.UNT )' expr: "float(payload.UNT)" "value_sensor.error": json_payload: true if_expr: '! isnull( payload?.ERR )' expr: "float(payload.ERR)" "temperature_sensor.green": json_payload: true if_expr: '! isnull( payload?.GRN )' expr: "float(payload.GRN)" "temperature_sensor.red": json_payload: true if_expr: '! isnull( payload?.RED )' expr: "float(payload.RED)" "temperature_sensor.target": json_payload: true if_expr: '! isnull( payload?.TGT )' expr: "float(payload.TGT)" "temperature_sensor.value": json_payload: true if_expr: '! isnull( payload?.TMP )' expr: "float(payload.TMP)" "temperature_sensor.virtual": json_payload: true if_expr: '! isnull( payload?.VTM )' expr: "round(float(payload.VTM), 1)" "temperature_sensor.ambient": json_payload: true if_expr: '! isnull( payload?.AMB )' expr: "float(payload.AMB)" "layzspa/Status": "value_sensor.status": if_expr: '! isnull( payload )' expr: "payload" "layzspa/button": "value_sensor.button": if_expr: '! isnull( payload )' expr: "payload" and in reactor.yaml I have: "layzspa_states": name: "Lay-Z-Spa States" friendly_name: 'Lay-Z-Spa States' include: layzspa_message I realize my MQTT configuration might be a bit unorthodox, but could there still be something unintentional in the latest MQTTController build? If needed, I can provide detailed logs.
Multi-System Reactor
🎉 My very first MSR controller: OpenSprinkler
therealdbT
Since today is my birthday - and I still pretend to be unconventional - I'm giving away a present to this wonderful community and I'm releasing my first OpenSprinkler controller for MSR. It was real fun to code it - and while it's still WIP, it seems to work OK for me. It's polling-based at the moment, but I'll add support for updates via MQTT very soon (it's already partially coded). Get it at (install is similar to MQTTController and such): https://github.com/dbochicchio/reactor-opensprinkler Feel free to try it. It's beta software, but it's stable. I'll update it weekly until all the tasks from my todo list are empty. Since I've learnt a lot from this controller, I'll explore new controllers soon.
Multi-System Reactor
Set Reaction > Script Action
wmarcolinW
Topic thumbnail image
Multi-System Reactor
Wiring Samotech SM308-S into light fitting
F
Hi Smart Home Community. I have used a Sonos inline WiFi switch to make one of my light fittings smart, but it requires a hard reset for WiFi changes, plus it isn't zigbee compatible, which means I can't use the Hue app to control it with the rest of the lights. To that end I bought a Samotech SM308-S as it is recommended as the better than the Sonos equivalent. I am however not exactly sure how to wire it in. The manual is available here Can anyone help me by clarifying which ports I need to use, and whether I should be using the live or switched live line for live etc. I will be keeping using standard switches for a while, although hope to upgrade to tap dials once I have all the fittings upgraded. Thanks
Hardware
Advice reqeusted to migrate MSR from Bare Metal to Container
T
Good day all, I'm in the process of trying to shut down my 10 year old Linux home server that served many purposes, but primarily it's what I used for my NAS/Plex Media server. I migrated the NAS aspect of the server in November of last year to a true NAS solution (Ubiquti UNAS Pro), which is rack mount and much more efficient than my old tower, which it's only side benefit was heating my home office during the winter. Unfortunately it also means heating my home office during the summer, which were about to be in full swing. I have two things running on this 10 year old server at this point. MSR and pi-hole. I'm running Plex Media Server on Fedora Workstation in Podman on mini PC, which is much more energy efficient than my old tower. My next step is to migrate MSR. I know there are images of MSR out there, and creating it is well documented. I'm going to be using Podman instead of Docker for various reasons, but they work very similar. What I don't know, is what I need to do to migrate my existing Bare Metal installation over to a container. Has anyone done this? Any advice?
Multi-System Reactor
Reactor (Multi-System/Multi-Hub) Announcements
toggledbitsT
Build 21228 has been released. Docker images available from DockerHub as usual, and bare-metal packages here. Home Assistant up to version 2021.8.6 supported; the online version of the manual will now state the current supported versions; Fix an error in OWMWeatherController that could cause it to stop updating; Unify the approach to entity filtering on all hub interface classes (controllers); this works for device entities only; it may be extended to other entities later; Improve error detail in messages for EzloController during auth phase; Add isRuleSet() and isRuleEnabled() functions to expressions extensions; Implement set action for lock and passage capabilities (makes them more easily scriptable in some cases); Fix a place in the UI where 24-hour time was not being displayed.
Multi-System Reactor
Z-Wave Future....
DesTD
https://forum.z-wave.me/viewtopic.php?f=3417&t=36140 That's not a good thing I think Time to switch again?
Z-Wave.me
Can´t restart or upgrade/deploy MSR
F
Topic thumbnail image
Multi-System Reactor
[Solved] Limit HA Entity in MSR
wmarcolinW
Topic thumbnail image
Multi-System Reactor
Disaster recovery and virtualisation
CatmanV2C
Following on from my last thread, some progress has been made over the weekend. With 18G of spanky RAM in my Synology DS224+. I've jumped into the murky world of virtualisation and already eliminated the need for two Raspberry Pi's from my system. Home Assistant: In theory they provide an OVA file which is supported by the Synology. I couldn't get it to work, however, so grabbed a copy of the .img file they supply, renamed it .iso and imported it as a VM. Restored from my full back up and that all seems fantastic. Minidnla Music server: Trivial. Grabbed a Debian .iso for Bookworm and copied that onto the NAS. Created a new machine which mirrored the specs of the Raspberry Pi, booted from the ISO then did an expert install. Once that was all stable with a basic core of stuff and networking, I've made a copy of that as a good base system. Then fired up minidnla on it, mounted my media and that's also woking. Not bad for a short weekend's work. Still not sure about the main NUC though. I'm thinking of buying a new USB stick so I can mess around getting it working on the Synology before I do anything drastic. Once that hurdle is sorted I'm torn between: Using a brand new install of Bookworm, re-installing Z-way server, OpenLuup, AltUI, MSR and HA bridge, then restoring across or Making an ISO of the current system, importing that and upgrading in place (which will be pretty risk free since I can snapshot everything before I make any changes.) Decisions, decisions. C
General Discussion
Remote access of Zwave stick from Z-wave server
CatmanV2C
Topic thumbnail image
Software
Organizing/ structuring rule sets and rules
R
Hi guys, Just wondering how you guys organize your rule sets and rules. I wish I had an extra layer to have some more granularity, but my feature request was not popular. Maybe there are better ways to organize my rule sets. I use the rule sets now primarily for rooms. So a rule set per room. But maybe grouping by functionality works better. Any examples/ suggestions would be appreciated.
Multi-System Reactor
Moving MSR from a QNAP container to RP 5 - some issues
Tom_DT
Topic thumbnail image
Multi-System Reactor
Widget deletion does not work and landing page (status) is empy
M
Topic thumbnail image
Multi-System Reactor
Need help reducing false positive notifications
T
Topic thumbnail image
Multi-System Reactor
Deleting widgets
tunnusT
Hopefully a trivial question, but how do you delete widgets in a status page? Using build 22266
Multi-System Reactor
MQTT configuration question
tunnusT
I have the following yaml configuration in local_mqtt_devices file x_mqtt_device: set_speed: arguments: speed: type: str topic: "command/%friendly_name%" payload: type: json expr: '{ "fan": parameters.speed }' While this works fine, I'm wondering how this could be changed to "fixed" parameters, as in this case "fan" only accepts "A", "Q" or a numeric value of 1-5?
Multi-System Reactor
System Configuration Check - time is offset
F
Hi! I get this message when I'm on the status tab: System Configuration Check The time on this system and on the Reactor host are significantly different. This may be due to incorrect system configuration on either or both. Please check the configuration of both systems. The host reports 2025-04-01T15:29:29.252Z; browser reports 2025-04-01T15:29:40.528Z; difference 11.276 seconds. I have MSR installed as a docker on my Home Assistant Blue / Hardkernel ODROID-N2/N2+. MSR version is latest-25082-3c348de6. HA versions are: Core 2025.3.4 Supervisor 2025.03.4 Operating System 15.1 I have restarted HA as well as MSR multiple times. This message didn´t show two weeks ago. Don´t know if it have anything to do with the latest MSR version. Do anyone know what I can try? Thanks in advance! Let's Be Careful Out There (Hill Street reference...) /Fanan
Multi-System Reactor
Programmatically capture HTTP Request action status code or error
therealdbT
I have a very strange situation, where if InfluxDB restarts, other containers may fail when restarting at the same time (under not easy to understand circumstances), and InfluxDB remains unreachable (and these containers crashes). I need to reboot these containers in an exact order, after rebooting InfluxDB. While I understand what's going on, I need a way to reliable determine that InfluxDB is not reachable and these containers are not reachable, in order to identify this situation and manually check what's going on - and, maybe, in the future, automatically restart them if needed. So, I was looking at HTTP Request action, but I need to capture the HTTP response code, instead of the response (becase if ping is OK, InfluxDB will reply with a 204), and, potentially, a way to programmatically detect that it's failing to get the response. While I could write a custom HTTP controller for this or a custom HTTP virtual device, I was wondering if this is somewhat on you roadmap @toggledbits Thanks!
Multi-System Reactor
ZwaveJSUI - RGBWW BULB - Warm/Cold White interfered with RGB settings - Bulb doesn't change color if in WarmWhite state.
N
Hi , I'm on -Reactor (Multi-hub) latest-25067-62e21a2d -Docker on Synology NAS -ZWaveJSUI 9.31.0.6c80945 Problem with ZwaveJSUI: When I try to change color to a bulb RGBWW, it doesn't change to the RGB color and the bulb remains warm or cold white. I tryed with Zipato RGBW Bulb V2 RGBWE2, Hank Bulb HKZW-RGB01, Aentec 6 A-ZWA002, so seems that it happens with all RGBWW bulb with reactor/zwavejsui. I'm using from reator the entity action: "rgb_color.set" and "rgb_color.set_rgb". After I send the reactor command, It changes in zwavejsui the rgb settings but doesn't put the white channel to "0", so the prevalent channel remains warm/cold White and the bulb doesn't change into the rgb color. This is the status of the bulb in zwavejsui after "rgb_color.set" (235,33,33,) and the bulb is still warmWhite. x_zwave_values.Color_Switch_currentColor={"warmWhite":204,"coldWhite":0,"red":235,"green":33,"blue":33} The "cold white" and "warm white" settings interfer with the rgb color settings. Reactor can change bulb colors with rgb_color set — (value, ui8, 0x000000 to 0xffffff) or rgb_color set_rgb — (red, green, blue, all ui1, 0 to 255) but if warm or cold white are not to "0", zwavejsui doesn't change them and I can't find a way to change into rgb or from rgb back to warm white. So if I use from reactor: rgb_color set_rgb — (235,33,33) in zwavejsui I have x_zwave_values.Color_Switch_targetColor={"red":235,"green":33,"blue":33} 14/03/2025, 16:43:57 - value updated Arg 0: └─commandClassName: Color Switch └─commandClass: 51 └─property: targetColor └─endpoint: 0 └─newValue └──red: 235 └──green: 33 └──blue: 33 └─prevValue └──red: 235 └──green: 33 └──blue: 33 └─propertyName: targetColor 14/03/2025, 16:43:57 - value updated Arg 0: └─commandClassName: Color Switch └─commandClass: 51 └─property: currentColor └─endpoint: 0 └─newValue └──warmWhite: 204 └──coldWhite: 0 └──red: 235 └──green: 33 └──blue: 33 └─prevValue └──warmWhite: 204 └──coldWhite: 0 └──red: 235 └──green: 33 └──blue: 33 └─propertyName: currentColor In zwavejsui, the bulb changes rgb set but warm White remains to "204" and the bulb remais on warm White channel bacause is prevalent on rgb set. x_zwave_values.Color_Switch_currentColor_0=204 x_zwave_values.Color_Switch_currentColor_1=0 x_zwave_values.Color_Switch_currentColor_2=235 x_zwave_values.Color_Switch_currentColor_3=33 x_zwave_values.Color_Switch_currentColor_4=33 Is it possible to targetColor also for "warmWhite" and "coldWhite" and have something similar to this? x_zwave_values.Color_Switch_targetColor={"warmWhite":0,"coldWhite":0,"red":235,"green":33,"blue":33} Thanks in advance.
Multi-System Reactor
About
Posts
124
Topics
15
Shares
0
Groups
0
Followers
0
Following
0

Posts

Recent Best Controversial

  • SNMP - Is anyone leveraging info via the Simple Network Management Protocol ?
    propheadP prophead

    @parkerc sounds like a permissions issue. Debug on command line before trying to script. I would also avoid use of the public access to snmp as it’s a potential security issue. I always setup private domain the proceedure differs by manufacturers. You can use snmpwalk for debugging then move to snmpget once you’re ready to drill down. Good luck.

    General Discussion

  • SNMP - Is anyone leveraging info via the Simple Network Management Protocol ?
    propheadP prophead

    @parkerc as you can see it's virtually same because SNMP is pretty standardized. Yes, this is the ubiquity edgerouter, a great $60 piece of kit. I use it for ISP failover and firewall.

    General Discussion

  • SNMP - Is anyone leveraging info via the Simple Network Management Protocol ?
    propheadP prophead

    @parkerc

    -- SNMP BWmon
    -- read stored in/out values
    local files = ""
    local f = io.open("/tmp/INO.txt")
    if not f then os.execute("touch /tmp/INO.txt") end
       for line in f:lines() do
          files = line
       end
    f:close()
    
    local OINO = files
    
    local f = io.open("/tmp/OUTO.txt")
    if not f then os.execute("touch /tmp/OUTO.txt") end
       for line in f:lines() do
          files = line
       end
    f:close()
    if not files then files = "Counter32: (0)" end
    local OOUTO = files
    
    -- parse values
    local ROINO = string.match(OINO, ".*Counter32: (%d+)")
    local ROOUTO = string.match(OOUTO, ".*Counter32: (%d+)")
    
    -- read snmp
    os.execute("/usr/bin/snmpget -r 1 -v1 -c PASSWORD 172.16.0.1 iso.3.6.1.2.1.2.2.1.10.4 >/tmp/INO.txt")
    local f = io.open("/tmp/INO.txt")
       if not f then return end  
       for line in f:lines() do
          files = line
       end
    f:close()
    local INO = files
    
    --print (INO)
    
    files = ""  
     os.execute("/usr/bin/snmpget -r 1 -v1 -c PASSWORD 172.16.0.1 iso.3.6.1.2.1.2.2.1.16.4 >/tmp/OUTO.txt")
     local f = io.open("/tmp/OUTO.txt")
        if not f then return end
        for line in f:lines() do
            files = line
        end
    f:close()
    local OUTO = files
    
    --print (OUTO)
    
    --parse
    local RINO = 0 
    RINO = string.match(INO, ".*Counter32: (%d+)")
    local ROUTO = 0
    ROUTO = string.match(OUTO, ".*Counter32: (%d+)")
    
    --print (RINO)
    --print (ROUTO)
    
    --maths
    local RINB = 0
    RINB = RINO --* 8
    local ROINB = 0
    ROINB = ROINO --* 8
    local ROUTB = 0
    ROUTB = ROUTO --* 8
    local ROOUTB = 0
    ROOUTB = ROOUTO --* 8
    
    --deltas
    local INt = 0
    INt = RINB - ROINB
    local OUTt = 0
    OUTt = ROUTB - ROOUTB
    
    local max32 = 4294966864
    
    --debug
    --luup.log ('RINB ='..RINB..', ROINB ='..ROINB)
    --luup.log ('ROUTB ='..ROUTB..', ROOUTB ='..ROOUTB)
    
    -- handle rotation
    if RINB < ROINB then INt = max32 - ROINB + RINB end
    if ROUTB < ROOUTB then OUTt = max32 - ROOUTB + ROUTB end
    if INt > max32 or INt<0 then INt = max(RINB,ROINB) end
    if OUTt > max32 or OUTt<0 then OUTt = max(ROUTB,ROOUTB) end
    
    --luup.log ('INt ='..INt..', OUTt ='..OUTt)
    
    -- 60 is 1 min interval and 1024 makes kBps
    local kbpsINt = ((INt/60)/1024)
    local kbpsOUTt = ((OUTt/60)/1024)
    local total = kbpsINt + kbpsOUTt
    
    luup.variable_set("urn:upnp-org:serviceId:altui1", "ComcastKBps", total, 11)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "ComcastInKBps", kbpsINt, 11)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "ComcastOutKBps", kbpsOUTt, 11)
    
    General Discussion

  • SNMP - Is anyone leveraging info via the Simple Network Management Protocol ?
    propheadP prophead

    @parkerc
    FC4656C3-8DD1-4493-9E74-5DC71923C335.jpeg F2329C8D-3B50-4C93-914B-8BA3FF49656C.jpeg

    General Discussion

  • SNMP - Is anyone leveraging info via the Simple Network Management Protocol ?
    propheadP prophead

    @parkerc I’m going to point you here:

    GitHub - jertel/vuegraf: Populate metrics from your Emporia Vue energy monitoring devices into an InfluxDB

    GitHub - jertel/vuegraf: Populate metrics from your Emporia Vue energy monitoring devices into an InfluxDB

    Populate metrics from your Emporia Vue energy monitoring devices into an InfluxDB - jertel/vuegraf

    For more energy centric metrics then snmp. I love the vue devices and the grafana integration with this link is stellar for really understanding your energy use.

    General Discussion

  • SNMP - Is anyone leveraging info via the Simple Network Management Protocol ?
    propheadP prophead

    @parkerc then I use grafana to graph
    F6CFFAB5-D8A7-42D2-A1B2-2C5299DC5CB6.jpeg

    General Discussion

  • SNMP - Is anyone leveraging info via the Simple Network Management Protocol ?
    propheadP prophead

    Altui on a pi

    General Discussion

  • SNMP - Is anyone leveraging info via the Simple Network Management Protocol ?
    propheadP prophead

    @parkerc this is the Dlink 8 port SNMP switch lua:

    -- SNMP 8 port BWmon
    -- read stored in/out values
    local lines = ""
    local Din = {}
    local Dout = {}
    local Oin = {}
    local Oout = {}
    local Nin = {}
    local Nout = {}
    local T = {}
    local i,j
    
    --check for switch
    local ping = os.execute("ping -c 1 192.168.1.11")
    if ping ~= 0 then
      luup.log("Dlink 8: Switch down. Aborted.")
      do return end
    end
    
    for i = 1,8 do
    -- read stored values
       local f = io.open("/tmp/8"..i.."I.txt")
       if f then
       for line in f:lines() do
         lines = line
       end -- for each line
      f:close()
      else os.execute("touch /tmp/8"..i.."I.txt")
      end
    
      if not lines then lines = "0" end
      Oin[i] = lines
      --print (Oin[i])
      
       local f = io.open("/tmp/8"..i.."O.txt")
       if f then
         for line in f:lines() do
           lines = line
         end -- for each line
       f:close()
       else os.execute("touch /tmp/8"..i.."O.txt")
       end
    
      if not lines then lines = "0" end
      Oout[i] = lines
      --print (Oout[i])
    
    end -- for each port read
    
    -- parse values
    for j = 1,8 do
    
    Oin[j] = string.match(Oin[j], ".*Counter32: (%d+)")
    if Oin[j] == "" or Oin[j] == nil then Oin[j] = 0 end
    Oout[j] = string.match(Oout[j], ".*Counter32: (%d+)")
    if Oout[j] == "" or Oout[j] == nil then Oout[j] = 0 end
    
    -- read snmp
    lines = ""
    os.execute("/usr/bin/snmpget -r 1 -v1 -c PASSWORD 192.168.1.11 iso.3.6.1.2.1.2.2.1.10."..j.." >/tmp/8"..j.."I.txt")
    local f = io.open("/tmp/8"..j.."I.txt")
       if not f then return end  
       for line in f:lines() do
          lines = line
       end
    f:close()
    Nin[j] = lines
    --print (Nin[j])
    
    lines = ""
    os.execute("/usr/bin/snmpget -r 1 -v1 -c PASSWORD 192.168.1.11 iso.3.6.1.2.1.2.2.1.16."..j.." >/tmp/8"..j.."O.txt")
    local f = io.open("/tmp/8"..j.."O.txt")
       if not f then return end  
       for line in f:lines() do
          lines = line
       end
    f:close()
    Nout[j] = lines
    --print (Nout[j])
    
    --parse
    Nin[j] = string.match(Nin[j], ".*Counter32: (%d+)")
    if Nin[j] == "" or Nin[j] == nil then Nin[j] = 0 end
    Nout[j] = string.match(Nout[j], ".*Counter32: (%d+)")
    if Nout[j] == "" or Nout[j] == nil then Nout[j] = 0 end
    
    --print (Nin[j])
    --print (Nout[j])
    
    --deltas
    Din[j] = Nin[j] - Oin[j]
    Dout[j] = Nout[j] - Oout[j]
    
    local max32 = 4294967295
    --local max32 = 4294966864
    
    -- handle rotation
    if Nin[j] < Oin[j] then Din[j] = max32 - Oin[j] + Nin[j] end
    if Nout[j] < Oout[j] then Dout[j] = max32 - Oout[j] + Nout[j] end
    if Din[j] > max32 or Din[j]<0 then Din[j] = 0 end --math.max(Oin[j],Nin[j]) end
    if Dout[j] > max32 or Dout[j]<0 then Dout[j] = 0 end --math.max(Oout[j],Nout[j]) end
    
    end -- end for each port write
    
    -- add real time interval tracking
    -- read old time
    lines = ""
    local ot = ""
    local f = io.open("/tmp/lastDlink8run.txt")
        if not f then os.execute("touch /tmp/lastDlink8run.txt") return end
        for line in f:lines() do
            ot = line
        end
    f:close()
    if not ot then ot = "300" end -- default to five minutes
    
    -- write new time
    local nt = tonumber(os.time())
    local t = assert(io.open("/tmp/lastDlink8run.txt", "w"), "Failed to open lastDlink8run.txt")
    t:write(nt)
    io.close(t)
    
    -- delta seconds
    local nds = nt - ot
    
    -- bounds
    if nds < 24 then nds = 24 end
    if nds > 900 then nds = 900 end
    
    -- debugging
    local t = assert(io.open("/tmp/Dlink8nds.txt", "w"), "Failed to open Dlink8nds.txt")
    t:write(nds)
    io.close(t)
    
    -- maths
    for k = 1,8 do
    Din[k] = ((Din[k]/nds)/1024)
    if Din[k] > 1500000 then Din[k] = 0 end
    Dout[k] = ((Dout[k]/nds)/1024)
    if Dout[k] > 1500000 then Dout[k] = 0 end
    T[k] = Din[k]+Dout[k]
    end -- end for each K conversion
    
    -- set luup device variables for device 12, LAN
    luup.variable_set("urn:upnp-org:serviceId:altui1", "DoorBirdINKBps", Din[1] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "DoorBirdOUTKBps", Dout[1] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "DoorBirdKBps", T[1] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "RoomHubINKBps", Din[2] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "RoomHubOUTKBps", Dout[2] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "RoomHubKBps", T[2] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "BedroomINKBps", Din[3] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "BedroomOUTKBps", Dout[3] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "BedroomKBps", T[3] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "DownstairsINKBps", Din[4] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "DownstairsOUTKBps", Dout[4] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "DownstairsKBps", T[4] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "LivingRoomINKBps", Din[5] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "LivingRoomOUTKBps", Dout[5] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "LivingRoomKBps", T[5] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "KitchenINKBps", Din[6] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "KitchenOUTKBps", Dout[6] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "KitchenKBps", T[6] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "UpstairsINKBps", Din[7] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "UpstairsOUTKBps", Dout[7] , 12)
    luup.variable_set("urn:upnp-org:serviceId:altui1", "UpstairsKBps", T[7] , 12)
    
    General Discussion

  • SNMP - Is anyone leveraging info via the Simple Network Management Protocol ?
    propheadP prophead

    @parkerc Yes, I have 3 lua scenes, one for each switch for LAN monitoring and one for my Edgerouter for WAN monitoring. Each uses the same basic snmp framework with device specific tweaks and then saves results to an empty device and then I graph those device variables. I'm happy to share my code below:

    General Discussion

  • Semantics
    propheadP prophead

    When I stopped calling it a smart home and started calling it a home automation system my waf went up significantly. Go figure.

    General Discussion

  • SNMP - Is anyone leveraging info via the Simple Network Management Protocol ?
    propheadP prophead

    I use a lua scene to read snmp network usage from my switches. Working great for a couple of years now.

    General Discussion

  • Facial recognition triggering automation
    propheadP prophead

    Thats very impressive. Well done mate.

    IPCam

  • Vera-openLuup Ecobee Plugin
    propheadP prophead

    Donno but my dehang script recorded the ecobee plugin as the last log line before hang every single time. Either getting updates or revisions found

    Plugins

  • Vera-openLuup Ecobee Plugin
    propheadP prophead

    This strategy has proved fruitful. 48 hours with no hangs.

    Plugins

  • Vera-openLuup Ecobee Plugin
    propheadP prophead

    Got sick of ecobee plugin hanging my openluup box so I built a new pi just for the ecobee plugin and a scene which pushes values onto my main openluup box.

    Plugins

  • Water level sensor
    propheadP prophead

    How do you intend to mount your sensor?

    Hardware

  • Water level sensor
    propheadP prophead

    Keep us posted. I’m very interested in this.

    Hardware

  • Water level sensor
    propheadP prophead

    Float valves fail. Regularly. Pressure switch has no moving parts and has been significantly more reliable for me.

    Hardware

  • Water level sensor
    propheadP prophead

    Two (high and low)of these(bare wire):

    270 CAD

    The Parrot ATO System

    The Parrot ATO System

    The Parrot ATO system Intelligent, observant, long lived, colorful and always repetitive, the Parrot will be the companion you won't know how you lived without. Along with the fun new name comes the pedigree of a proven winner. How do you make improvements to the ATO with an unrivaled reputation...

    And two of these:
    Ecolink Intelligent Technology Z-Wave Easy Install, Battery Operated, Door/Window Sensor, White & Brown (DWZWAVE2-ECO) https://www.amazon.com/dp/B00HPIYJWU/ref=cm_sw_r_cp_api_i_3Je6Eb7ECMY2V

    And bob’s your uncle
    |-<:)

    Hardware
  • Login

  • Don't have an account? Register

  • Login or register to search.
  • First post
    Last post
0
  • Categories
  • Recent
  • Tags
  • Popular
  • Unsolved