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.
  1. Home
  2. openLuup
  3. Zway Bridge
  4. full devices reset
full devices reset
DesTD

@akbooer

Since a couple of weeks/months, we are in the process to redo 5 rooms @ home (kids are moving from room to another room) and of course, I would need to redo a bunch of device name and room name in Zway..

Is there an easy way to tell openLuup to completely start over fresh without having to delete/rename them one by one in openLuup ?

Zway Bridge
Help with Z-Way plugin
J

I hope this is the correct forum – apologies if not!

I have a Raspberry Pi3 with a Razberry Z-Wave card installed. I have installed the Z-Way software and have successfully included a Fibaro Z-Wave switch on the Z-Wave network. I can toggle the switch on and off successfully from my laptop through port 8083 of the Raspberry Pi3.

On the same Raspberry Pi3 I have installed openLuup on which I have installed the Z-Way plugin. I can access this through port 3480 on the Raspberry Pi3 from my laptop.

Here is where I have come to a dead stop. How do I get access to the Fibaro Z-Wave switch from the openLuup application? I can find no documentation that tells me specifically how to do this.

Any help would be greatly appreciated.

_John.

Zway Bridge
openLuup Z-Way bridge: Version Log
akbooerA

Master Branch: 2020 Release 4.5

Roll-up of recent changes in development branch.

Zway Bridge
Fibaro Wall plug power metering
PerHP

I have an odd issue which seems to be only for Fibaro wall plugs. They come in to Z-Way with two "electric meter" entrys, one "Power" meter and a couple of alarm entrys. In addition to the switch that is.

One of the "electric meters" is KWh and the other one is seemingly Watts, but it stays at 0/-1w. The "Power" meter shows the Watts used right now.

When these come into openluup, the wrong electric meter is selected for displaying the Watts, is there any way to manipulate which one openLuup uses? I see that the sub channel for power also is transferred, but it isn't in the data Veraflux is transmitting to my influxdb..

Haven't used the watts reading for anything before now, now i want to estimate when my dryer is done based on power usage. 🙂

Zway Bridge
Renaming device name...
DesTD

@akbooer

What's the "logic" behind zway plugin about renaming ? Are you always renaming when starting openLuup ?

Zway Bridge
Fibaro TRV on ZWay/OpenLuup?
I

Having some trouble getting the Fibaro TRV device working with the ZWay bridge. The device works in the ZWay (Zwave.Me) Smart Home GUI, and creates a number of devices in OpenLuup, some of which appear to have the right variables in it. Changing the XML and JSON files makes no difference.

I also tried creating a separate child device for Parameter 67 (using the gui for the ZWay bridge, see below), and setting the XML/JSON types for that device (like I've havd to do for a few other devices). This results in a device that correctly displays the TRV setpoint, but chaning the setpoint in the OpenLuup gui does not result in anything being transmitted to/by ZWay.

20490 49-0 D_ComboDevice1.xml zNode #49-0
49-0-113-8-12-A
49-0-113-8-13-A
49-0-113-8-14-A
49-0-113-8-15-A
49-0-113-9-3-A
49-0-64
49-0-67-1
20491 49-1 D_ComboDevice1.xml zNode #49-1
49-1-113-8-12-A
49-1-113-8-13-A
49-1-113-8-14-A
49-1-113-8-15-A
49-1-113-9-3-A
49-1-64
25031 49-1-67-1 D_Heater1.xml Radiator Bedroom
20492 49-2 D_ComboDevice1.xml multi #49-2
49-2-113-8-10-A
49-2-113-8-11-A
25030 49-2-49-1 D_TemperatureSensor1.xml Radiator Bedroom

Zway Bridge
Z-way token Expiration
rafale77R

@akbooer, I just woke up to a z-way bridge token expiration again forcing me to login again and reload openluup. It appears to happen once a week. It doesn't appear that the auto renewal of the token is working?

Zway Bridge
Why Migrate to Z-way from vera and how?
rafale77R

I expect this document to be dynamic based on inputs from people who try but did not want to completely rewrite it here:

Z-Way/README.md at master · rafale77/Z-Way Z-Way/README.md at master · rafale77/Z-Way

Zway plugin for openLuup . Contribute to rafale77/Z-Way development by creating an account on GitHub.

Zway Bridge
XMLs & jsons without vera
P

Nearly there with the migration ..

Is it ok to use older device files or do they get updated from time to time?

Now that a fresh openLuup is up and running and connected to Zway where's the best place to source device files without vera? I probably have them on another openLuup install but not 100% which ones to copy over.

Zway Bridge
Error after device delete
PerHP

One of my wall plugs died yesterday, so i had to delete it without exclusion. When I did this, the openluup device switched to this:
7d1a5d39-cfdd-4c25-b2a2-79311736615f-image.png

And some .js issues arrived at the bottom of the screen:
1935b845-ea64-4576-8d40-04489ae10fb8-image.png

What to do?

Zway Bridge
Device setup - organization strategy
PerHP

I've finally gotten the stuff to work together. Now - before I migrate all the vera devices, how do i use this?

How does the variables NameDevices and CloneRooms work? (is there a manual or description of the plugin?)
CloneRooms seems obvious, but is that the best way to go when I have more bridges?

Set up rooms and names in Z-way? No rooms in z-way, and distribute them in openluup?
Zway Bridge
Changing device type for wall controller
A

I have an old Z-wave.me wall controller that I still use for turning the espresso machine on and off. The controller controls an Aeotec Micro Switch that for the moment is still on my Vera.

The wall controller has always been a bit tricky to work with on Vera. On my old UI5 VeraLite I managed to get it associated to the switch.
On the UI7 Vera I never got that to work, instead I could use it as a trigger in Reactor to detect when sl_SceneActivated was 1 or 0.

I have moved the wall controller to Z-way and there it is included as it should.
a30b06dd-1f3c-4ca6-9966-b0a6f183de04-image.png Compared to when it was connected to the Vera it has proper on/off buttons so that it can be controlled from the Z-way GUI.

The command classes are the following:
68a54e6b-b240-40b2-95bb-9696bf7789cf-image.png In OpenLuup it still shows up as it did in the Vera, i.e. only showing battery.
985acfb7-6af9-4cf0-a426-79d4358baf6e-image.png Is it possible to change device type so that it get the right properties in OpenLuup?

At the moment it does not have any useful properties except for battery level. It e.g. lacks the sl_SceneActivated variable.

Another step would then be to move the Aeotec switch to Z-way and to then associate the wall controller to the switch in Z-way. It seems as if this can be done in the ExpertUI.

//ArcherS

Zway Bridge
Recreate Zway device in Openluup
R

If a zway device have been manually deleted in openluup, What would be the right way to recreate it, or re-sync with the z-way-server?

Zway Bridge
Changing Device type from dimmer to Shutter
R

Just finished migrating to Zway, Although there are some devices that are being detected as a dimmer when in fact are Shutters.

What would be the best route to properly change how this devices are being detected by the ZWay plugin on openluup?

2f2566ba-1bb8-436e-a107-363bb66a7436-image.png

1a188194-faed-4d5c-8dc8-7a21914209fb-image.png

55a457fe-101e-4cb7-bced-3693d9f280c4-image.png

e9deae5c-79f1-407b-adb7-718663ab0149-image.png

Zway Bridge
Child device undo failure
rafale77R

Hi AK,

I must be missing something but I am having now some devices fail on the bridge due to them running out of battery. Upon battery replacement, they function properly on z-way-server but the failure remains over the bridge. The failure shows up on the parent device and it says that a specific command class has failed. Looking at the return API json, it should not return any command class level failure however so I am not sure where the bridge gets its failed state from...

edit: Nevermind, I figured it out. It is a gap in data alignment between the different z-way APIs. The zwave and JS API got the update that the device recovered but not the smarthome API. Pausing and restarting the zwave app on z-way fixed it.

Zway Bridge
All Z-way devices "disabled" attribute is set to 1
K

I noticed the change when I switched from the RaZberry to UZB (During the switch all devices moved to the Room 101 briefly, maybe that had something to do with it). Any idea why this would have happened? Can I easily change them all back to enabled? Also, what exactly does this attribute do? I only noticed because none of my z-wave devices were showing up in Imperihome and when I set the "disabled" attribute back to 0, the device shows up. Thanks.

Zway Bridge
Z-Way electric meter devices not in openLuup
I

So I started experimenting by moving some of my wallplugs and power switch zwave devices over from VeraPlus to Z-Way.

In Z-Way this results in different elements for switching, Watts and kWh. Some even have Volts which I never saw on Vera.

But using the Z-Way plugin in openLuup only the Switch element is visible and all other elements of the zwave node are not.

I don't really know to much about Z-Way or the plugin, but am trying to learn on the run.

Maybe someone can give me some pointers what and where to look for to solve this?

Zway Bridge
z-way with home assistant
S

Just wanted to point out and start the topic of the following:

We are working on a project that will allow to use Z-Way library as the core of Z-Wave in Home Assistant. First releases will be around June/July I believe

Additionally there are ways to support Z-Way from HAss via HTTP requests. This is a community project and we have no deep knowledge about it.

С уважением,
Полторак Сергей
Z-Wave.Me

Apr 19, 2020 Official Z-way integration request Official Z-way integration request

Why would that make you reluctant? It doesn’t seem to be any different from any other local startup supporting funds in other countries.

Zway Bridge

full devices reset

Scheduled Pinned Locked Moved Zway Bridge
77 Posts 2 Posters 11.2k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • akbooerA Offline
    akbooerA Offline
    akbooer
    wrote on last edited by
    #21

    Yes please. You have my email, I think?

    1 Reply Last reply
    0
    • DesTD Offline
      DesTD Offline
      DesT
      wrote on last edited by
      #22

      @akbooer You should have them in private message here

      1 Reply Last reply
      0
      • akbooerA Offline
        akbooerA Offline
        akbooer
        wrote on last edited by
        #23

        This is slightly tricky, partly because it's at least three years since I looked at this, and also because some of the ZWay devices are subsumed into single Luup devices and others are split into separate children.

        My philosophy, currently, is not to change the plugin (since I can't easily test it) but to provide a script to run which will make the changes.

        You also have a ZWay "global room" which doesn't get uniquely mapped into any single openLuup room...

        1 Reply Last reply
        0
        • DesTD Offline
          DesTD Offline
          DesT
          wrote on last edited by
          #24

          That's fine if it's a script instead of having a new plugin version 😉

          1 Reply Last reply
          0
          • akbooerA Offline
            akbooerA Offline
            akbooer
            wrote on last edited by
            #25
            This post is deleted!
            1 Reply Last reply
            0
            • DesTD Offline
              DesTD Offline
              DesT
              wrote on last edited by
              #26

              Just for fun, am I able to execute the script myself when I'm doing changes ?

              1 Reply Last reply
              0
              • akbooerA Offline
                akbooerA Offline
                akbooer
                wrote on last edited by akbooer
                #27

                Oh yes, it just runs in the openLuup LuaTest window.

                Before I let you loose on it, there are a couple of tweaks needed. I’ve used the ZWay devices file you sent, obviously, and put it into the cmh-ludl folder so that the script can find it. Is that a reasonable mode of working?

                Otherwise, I could get it to pick up the info from the bridge itself, but then I’d need to make some changes to that, and an update to openLuup too. Not a huge deal, I hope, but, again, I’m not able to test it.

                Either way, you’d need to ensure that you had a backup of your latest user_data.json, in case of emergencies.

                1 Reply Last reply
                0
                • akbooerA Offline
                  akbooerA Offline
                  akbooer
                  wrote on last edited by
                  #28

                  OK, so I decided to update the bridge to make this a bit easier.

                  Please update to the latest development versions of both openLuup and ZWay.

                  Then I'll provide a test script to see if this pulls the relevant data correctly.

                  1 Reply Last reply
                  0
                  • DesTD Offline
                    DesTD Offline
                    DesT
                    wrote on last edited by
                    #29

                    Done. I'm not on both dev version 😉

                    1 Reply Last reply
                    0
                    • akbooerA Offline
                      akbooerA Offline
                      akbooer
                      wrote on last edited by
                      #30

                      OK, so running this in LuaTest should (if I modified the bridge correctly) provide the same listing as I sent previously. It should NOT make any changes to the system.

                      -- script to rename ZWay devices in openLuup
                      local json = require "openLuup.json"
                      local zway = luup.openLuup.find_device {device_type = "ZWay"}
                      local DEVS = luup.devices[zway].environment.DEVS
                      local Offset = luup.variable_get("urn:akbooer-com:serviceId:ZWay1", "Offset", zway)
                      
                      -- lookup table for existing Luup rooms
                      local function room_index()
                        local idx = {}
                        for i,n in pairs(luup.rooms) do
                          idx[i] = n
                          idx[n] = i
                        end
                        return idx
                      end
                      
                      -- Luup device numbers in running system, indexed by altid
                      local function luup_devNos(block)  
                        block = tonumber(block)
                        local devs = {}
                        for i,d in pairs(luup.devices) do
                          if i > block then
                            local id = d.id
                            devs[id] = i
                          end
                        end
                        return devs
                      end
                      
                      -- ZWay devices: ids, names, locations
                      local function zDevs(devices) 
                        local devs = {}
                        for i, d in ipairs(devices) do
                          local id = d.id: match "ZWayVDev_zway_(.+)" or '?'
                          local shortId = id: match "^%d+%-%d+"
                          local shortId = id: match "^(%d+%-%d)%-%d+$"
                      --    print(id, shortId)
                          devs[i] = {id = id, shortId = shortId, roomName = d.locationName, name = d.metrics.title}
                        end
                        return devs
                      end
                      
                      -- Start here
                      
                      local D = DEVS
                      
                      local rename = "[%d] %45s  ->  %-s"
                      local placename = "%s / '%s'"
                      
                      local devNos = luup_devNos(Offset)
                      local zdevs = zDevs(D) 
                      local rooms = room_index()
                      
                      for i, d in ipairs(zdevs) do
                        local id = d.id
                        local name = d.name
                        local shortId = d.shortId
                        local roomName = d.roomName
                      
                        local dno = devNos[shortId] or devNos[id]
                        if (dno) then 
                          local dev = luup.devices[dno]
                          local oldName = dev.description
                          local oldRoom = rooms[tonumber(dev.attributes.room)]
                          roomName = rooms[roomName] and roomName or oldRoom    -- leave in place if new room not found
                      
                          newRoom = roomName ~= oldRoom
                          newName = name ~= oldName
                          if newRoom or newName then
                            print(rename:format(dno or 0, placename:format(oldRoom, oldName) , placename:format(roomName, name)))
                          end
                        end
                      end
                      
                      
                      1 Reply Last reply
                      0
                      • DesTD Offline
                        DesTD Offline
                        DesT
                        wrote on last edited by
                        #31

                        image.png

                        1 Reply Last reply
                        0
                        • akbooerA Offline
                          akbooerA Offline
                          akbooer
                          wrote on last edited by
                          #32

                          👎

                          OK, I thought we should probably build up slowly, but went for broke.

                          Try just this in the LuaTest:

                          local zway = luup.openLuup.find_device {device_type = "ZWay"}
                          local DEVS = luup.devices[zway].environment.DEVS
                          
                          print(pretty(DEVS))
                          
                          1 Reply Last reply
                          0
                          • DesTD Offline
                            DesTD Offline
                            DesT
                            wrote on last edited by
                            #33

                            image.png

                            1 Reply Last reply
                            0
                            • akbooerA Offline
                              akbooerA Offline
                              akbooer
                              wrote on last edited by
                              #34

                              Ah, I feared that would be the case…
                              ..and ZWay is up and running OK?

                              1 Reply Last reply
                              0
                              • DesTD Offline
                                DesTD Offline
                                DesT
                                wrote on last edited by
                                #35

                                yeah of course

                                1 Reply Last reply
                                0
                                • akbooerA Offline
                                  akbooerA Offline
                                  akbooer
                                  wrote on last edited by
                                  #36

                                  We could revert to reading the file, but if you’re not too much in a rush, then I’ll try to fix this.

                                  1 Reply Last reply
                                  0
                                  • DesTD Offline
                                    DesTD Offline
                                    DesT
                                    wrote on last edited by
                                    #37

                                    nah no worries, I can copy the file... zway and openLuup is on the same machine, so it's pretty easy to copy the file

                                    1 Reply Last reply
                                    0
                                    • DesTD Offline
                                      DesTD Offline
                                      DesT
                                      wrote on last edited by
                                      #38

                                      I can even make a symbolic link 😉

                                      1 Reply Last reply
                                      0
                                      • akbooerA Offline
                                        akbooerA Offline
                                        akbooer
                                        wrote on last edited by
                                        #39

                                        OK, here the modified script.
                                        Change the file name and folder to your chosen place in line 3.
                                        Again, this should just produce the listing, not make changes.

                                        -- script to rename ZWay devices in openLuup
                                        
                                        filename = "Des/DES_ZWay.json"  -- change this to the right place
                                        
                                        local json = require "openLuup.json"
                                        local zway = luup.openLuup.find_device {device_type = "ZWay"}
                                        local DEVS = luup.devices[zway].environment.DEVS
                                        local Offset = luup.variable_get("urn:akbooer-com:serviceId:ZWay1", "Offset", zway)
                                        
                                        local function read_ZWay_data(filename)
                                          local f = io.open (filename)
                                          if not f then error "file not found" end
                                          local j = f: read "*a"
                                          f: close()
                                          local D = json.decode (j)
                                          return D.data.devices
                                        end
                                        
                                        -- lookup table for existing Luup rooms
                                        local function room_index()
                                          local idx = {}
                                          for i,n in pairs(luup.rooms) do
                                            idx[i] = n
                                            idx[n] = i
                                          end
                                          return idx
                                        end
                                        
                                        -- Luup device numbers in running system, indexed by altid
                                        local function luup_devNos(block)  
                                          block = tonumber(block)
                                          local devs = {}
                                          for i,d in pairs(luup.devices) do
                                            if i > block then
                                              local id = d.id
                                              devs[id] = i
                                            end
                                          end
                                          return devs
                                        end
                                        
                                        -- ZWay devices: ids, names, locations
                                        local function zDevs(devices) 
                                          local devs = {}
                                          for i, d in ipairs(devices) do
                                            local id = d.id: match "ZWayVDev_zway_(.+)" or '?'
                                            local shortId = id: match "^(%d+%-%d)%-%d+$"
                                            devs[i] = {id = id, shortId = shortId, roomName = d.locationName, name = d.metrics.title}
                                          end
                                          return devs
                                        end
                                        
                                        -- Start here
                                        
                                        local D = read_ZWay_data (filename)
                                        
                                        local rename = "[%d] %45s  ->  %-s"
                                        local placename = "%s / '%s'"
                                        
                                        local devNos = luup_devNos(Offset)
                                        local zdevs = zDevs(D) 
                                        local rooms = room_index()
                                        
                                        for i, d in ipairs(zdevs) do
                                          local id = d.id
                                          local name = d.name
                                          local shortId = d.shortId
                                          local roomName = d.roomName
                                        
                                          local dno = devNos[shortId] or devNos[id]
                                          if (dno) then 
                                            local dev = luup.devices[dno]
                                            local oldName = dev.description
                                            local oldRoom = rooms[tonumber(dev.attributes.room)]
                                            roomName = rooms[roomName] and roomName or oldRoom    -- leave in place if new room not found
                                        
                                            newRoom = roomName ~= oldRoom
                                            newName = name ~= oldName
                                            if newRoom or newName then
                                              print(rename:format(dno or 0, placename:format(oldRoom, oldName) , placename:format(roomName, name)))
                                            end
                                          end
                                        end
                                        
                                        
                                        1 Reply Last reply
                                        0
                                        • DesTD Offline
                                          DesTD Offline
                                          DesT
                                          wrote on last edited by
                                          #40

                                          it's working

                                          1 Reply Last reply
                                          0

                                          Recent Topics

                                          • Disaster recovery and virtualisation
                                            CatmanV2C
                                            CatmanV2
                                            0
                                            5
                                            540

                                          • Remote access of Zwave stick from Z-wave server
                                            CatmanV2C
                                            CatmanV2
                                            0
                                            3
                                            244

                                          • Organizing/ structuring rule sets and rules
                                            G
                                            gwp1
                                            0
                                            5
                                            317

                                          • Moving MSR from a QNAP container to RP 5 - some issues
                                            G
                                            gwp1
                                            0
                                            5
                                            277

                                          • Widget deletion does not work and landing page (status) is empy
                                            G
                                            gwp1
                                            0
                                            4
                                            251

                                          • Need help reducing false positive notifications
                                            T
                                            tamorgen
                                            0
                                            7
                                            438

                                          • Reactor (Multi-System/Multi-Hub) Announcements
                                            toggledbitsT
                                            toggledbits
                                            5
                                            120
                                            35.1k

                                          • Deleting widgets
                                            toggledbitsT
                                            toggledbits
                                            0
                                            4
                                            426

                                          • MQTT configuration question
                                            tunnusT
                                            tunnus
                                            0
                                            11
                                            574

                                          • System Configuration Check - time is offset
                                            G
                                            gwp1
                                            0
                                            8
                                            550
                                          Powered by NodeBB | Contributors
                                          Hosted freely by 10RUPTiV - Solutions Technologiques | Contact us
                                          • Login

                                          • Don't have an account? Register

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