Navigation

    Discussion Forum to share and further the development of home control and automation, independent of platforms.

    SmartHome Community

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    (Last Updated: June 15, 2020)
    For those who registered but didn't received the confirmation email, please send an email to support@smarthome.community with the email you used
    • FAN dimmer device

      DesT

      @akbooer

      Do you think it could be possible to have a custom device for "dimmer" that instead of having the slider from 0 to 99 will give us Off/Low/Medium/High and will send 0,30,60,90 ?

      openLuup
    • call_action SendConfig

      DesT

      @akbooer

      I'm a fan of the SendConfig call action in a couple of scene...

      Did you implement something like GetConfig ?

      I have a couple of scene that I would need to do a GetConfig to do something based on the value...

      openLuup
    • Cloning scenes in openLuup and AltUI

      A

      I was trying to change the ID of a couple of scenes and came to the conclusion you can't do this without stopping openLuup, hacking user_data.json and restarting openLuup, which is a pain. (May be this could be added to openLuup ie be able change any scene ID to a non used one.)

      So I figured I would try and clone some of the scenes with the idea that I could then manually swap their contents around. Why would I want to do this? Just to make my scene management a bit more simple as all my scenes call the one pile of Lua code. I also wanted to make use of unused scene IDs sprinkled through the scene ID list.

      My understanding was the clone would occupy the first unused scene ID. Using AltUI, it just adds the clone on to the end of the list of scene IDs. In openLuup using the console page it failed to create the clone. Hits the URL OK:

      http://openLuup:3480/console?action=clone&scene=14

      Says this in the log:

      GET /console?action=clone&scene=14 HTTP/1.1 tcp{client}: 0x2c05008

      Searched high and low and no clones to be found.

      I see that AltUI does a create when it clones:

      openLuup.server:: GET /data_request?id=scene&action=create&json=WITH_ALL_THE_SCENE_INFO_HERE

      Any ideas?

      openLuup
    • AltUI/Reactor issue?

      PerH

      I woke up to one of the lights in the hallway dimming up and down constantly.. when i tried to open reactor logic summary, there was something weird with the GUI?
      The "Tools" tab resizes so i can't reach the logic summary button:
      24f6b3f7-cfca-45ba-b568-7c6f5a31ddd7-image.png

      The Reactor instance in Altui pages was also empty, no buttons or text on them, only the icon..

      I have a virtual switch to turn on all lights using reactor, and that one worked from the tablet in the kitchen, so reactor was functioning OK..

      I reloaded luup and hard refreshed the browser, and all but the "Tools" page is now back to normal.. @toggledbits ?

      EDIT: Theres supposed to be some text in the headers on this page, isn't it?
      70159d9d-85fc-4606-b38b-49f2909dce72-image.png

      openLuup
    • luaJIT

      rafale77

      @akbooer,

      Have you ever considered running openLuup under LuaJIT instead of Lua5.1 interpreter?

      The LuaJIT Project

      For kicks, I switched my installation to the latest LuaJIT2.1 beta3 dating from 2017 and being a lua5.1 interpreter it is a drop in replacement. I had to move the lfs library from one folder to another likely because of an include path difference but I am seeing a further speed/efficiency improvement vs. lua5.1.
      My CPU load has dropped another 25% to now hover around 2.2% down from 2.8%. I have yet to make sure that everything else works but so far everything appears to be the same.
      The luajit site claims up to 5x speed increase through the interpreter and 120x improvement through the compiler vs the standard lua5.1.

      Screen Shot 2020-07-05 at 23.10.02.png

      My initial interest was from being able to access some ffi libraries to handle video streams...

      PS: Wow it is pretty impressive under load... browsing through ALTUI which used to cause spikes of CPU utilization from 2.8% to 4.8% now only go from 2.3% to 2.6%. It almost looks like noise. I am running it on a pretty fast x64 thread so it may not be that significant but this could make a big difference on ARM.

      Screen Shot 2020-07-05 at 23.11.47.png

      openLuup
    • openLuup: Windows Subsystem for Linux (WSL)

      akbooer

      Windows Subsystem for Linux (WSL) is a compatibility layer for running Linux binary executables natively on Windows 10.

      This is one way to run openLuup under Windows without having to worry whether any of your plugins require a Unix/Linux environment – this way, they actually get one.

      Many flavours of Linux are available for WSL from the Microsoft Store – my favourite, to date, is Alpine WSL, which is a tiny (~8 Mb) and lightweight WSL distro based on musl, uses busybox, and just contains the most important things to be functional.

      Here's a rough guide to getting openLuup going under Alpine WSL

      Enable WSL on via the Windows control panel Install the Alpine WSL app from the Microsoft Store Start the Alpine application Install Lua and some libraries:

      Alpine comes with a really full set of Lua libraries available for install. You need to be su to install them:

      # apk add curl # apk add lua5.1 # apk add lua5.1-md5 # apk add lua5.1-cjson # apk add lua5.1-filesystem # apk add lua5.1-bitop # apk add lua5.1-sec You need to make the file system permanent: $ cd /mnt/c/ $ mkdir cmh-ludl $ cd cmh-ludl Now get and install openLuup and AltUI: $ wget https://github.com/akbooer/openLuup/raw/master/Utilities/openLuup_install.lua $ lua5.1 openLuup_install.lua

      When finished (it won't yet return to the command prompt)

      access openLuup via the URL: IP:3480/openLuup Update to latest version (Plugins page, type development in Update box) Install VeraBridge (Device Table > Create D_VeraBridge.xml / I_VeraBridge.xml) Add IP of Vera to VeraBridge attributes Reload VeraBridge device > Actions > GetVeraFiles (wait ~2 minutes) Reload

      Simple!

      openLuup
    • openLuup: Version Log

      akbooer

      A long while ago (May, 2015) I wrote my 2000-th post on another forum: openLuup - running unmodified plugins on any machine. Here’s the gist of it:

      ...I want to work in a more open and stable [Vera] environment...

      ...All would be solved if Luup was open source and could be run on the plethora of cheap and reliable hardware available today. But it’s not. But we could get something like that effect if we engineered a sufficient subset of Luup to run on such a platform. Could it be done? What would we need?

      1. UI
      2. scheduler
      3. web server
      4. Luup compatible API
      5. Device and Implementation xml file reader
      6. Zwave bridge to Vera
      7. runs most plugins without modification

      What we wouldn’t need is UPnP.

      What have we (nearly) got already?

      We have, courtesy of @amg0, the most excellent AltUI: Alternate UI to UI7, and that, I think, is probably the hardest one to do in the above list. Items 2 - 5, and 7, I’ve prototyped, in pure Lua, and posted elsewhere: DataYours on Raspberry Pi, running selected plugins unmodified, including: DataYours, EventWatcher, Netatmo, RBLuaTest, altUI. See screenshot attached.

      Is it worth the effort? Probably not. Will I pursue this quest? Yes.

      openLuup was the result.

      DE2056BF-E548-4611-972B-40276F00BFEB.jpeg

      openLuup
    • Logging lines

      C

      Evening, all. Hope you're all well.

      Did the logging line count / rotation challenge ever get sorted? I'm needing to look back at some historical events and my oldest log is barely 3 hours ago. (Not that I can recall how to try and change the line numbers etc)

      Cheers!

      C

      openLuup
    • Breakdown?

      PerH

      I've been fiddling with the zigate plugin, as the dongle arrived.. I installed the app from appstore, and saw that the plugin files were not installed properly.
      Downloaded the zip files and put all luup files in the cmh_ludl folder. Reloaded luup, and it was in and looking ok
      I then entered the IP for it to communicate with the dongle, and reloaded luup.

      Now the openluup service is running, but i can't get into either altUI or openluup console.

      I tried rebooting, stopping and starting the service, no effect.

      the logs doesnt seem to be updated either. Now what?

      openLuup
    • Playing sounds on the Zooz Siren ZSE19

      C

      I'm trying to do this now that I have migrated the siren to Zway. Here's the thread from the Vera forums on how to do it with a Vera: https://community.getvera.com/t/playing-sounds-on-the-zooz-siren-zse19/211318

      I'm guessing something needs to change in the code since previously it was calling out the vera specifically.

      Here's what shows up in the logs when I tried to use Reactor for the SendData. Zway plugin is device 18. And my siren is device number 95 in my Zway network.

      2020-12-01 15:37:27.052 openLuup.server:: POST /data_request HTTP/1.1 tcp{client}: 0x56194138c448 2020-12-01 15:37:27.052 luup.call_action:: 18.urn:micasaverde-com:serviceId:ZWaveNetwork1.SendData 2020-12-01 15:37:27.053 openLuup.server:: request completed (151 bytes, 1 chunks, 0 ms) tcp{client}: 0x56194138c448 2020-12-01 15:37:27.079 luup_log:18: ZWay: http://127.0.0.1:8083/ZWaveAPI/Run/SendData(95,x79 8 35) 2020-12-01 15:37:27.079 luup_log:18: ZWay: SyntaxError: Unexpected number 2020-12-01 15:37:27.184 openLuup.server:: request completed (8606 bytes, 1 chunks, 5939 ms) tcp{client}: 0x561941d02fe8
      openLuup
    • Imperihome - missing devices

      PerH

      While i wait for a replacement app for my local UI devices, i want to use imperihome as long as I can.. But i'm missing a lot of devices!

      All Z-Way bridge devices, all security/smoke and motion sensors (local RFXtrx child devices)..

      Found the "include vera bridge" in imperihome.lua, what else could cause this?

      openLuup
    • LUA School

      PerH

      I downloaded ZeroBrane Studio to see if I could make sense of this lua language. @akbooer mentioned that this is what he uses for development, and i thought i could learn alot from seeing how openluup runs.

      How do I proceed in order to run openluup in zerobrane? I guess i need to do that to see how scripts like the imperihome ISS script works?

      I installed on a windows machine, will I have to run it in linux for it to work?

      openLuup
    • Imperihome - question

      K

      Hi @mrFarmer,

      I also have a question about ImperiHome:
      I'm trying to configure imperihome with openluup.
      Imperihome recognizes the new system, with all devices, status feedback is perfect.
      If I turn on something on imperihome, it will seem to be temporarily turned on and then turn off. Device does not actually change.
      Can you help me with what could be the problem?
      Thanks.
      Krisztian

      openLuup
    • Delay in luup requests

      Elcid

      Hi,

      I have a couple of luup request, one is a request to VeraAlexa pluging to make alexa speak, the other updating a variable in reactor. They all seem to have a 10-20 second delay
      example request
      http://192.168.1.134:3480/data_request?id=action&DeviceNum=44&serviceId=urn:toggledbits-com:serviceId:ReactorSensor&action=SetVariable&VariableName=A_home&NewValue=1

      I can not figure out what is causing the delay, does anyone have any ideas?

      openLuup
    • [openLuup] Multiple lines in variables

      therealdb

      Hey @akboer I'm working on a new feature for the virtual HTTP device plug-in and I noticed that variables are cut in UI if very long and multi-line values are not supported.

      Plus, RGB are missing a dedicated way to set color and temperature.

      openLuup
    • Push notifications

      R

      Hi guys,

      I was wondering what you guys use for push notifications on openluup. I still use VeraAlerts on my vera, but am searching for an alternative that runs on openluup.

      Thanks!

      openLuup
    • Converting RulesEngine to openLuup...

      DesT

      I'm using RulesEngine plugin for a while, couple of years, and of course, the plugin is not getting any update as @vosmont stop to update/upgrade this plugin!

      I attached one rule, if, by any chance, I would like to convert all my rules to something "native" in openLuup...

      is it something possible ?
      In the PDF you can see what a rule looks...ALTUI.pdf

      openLuup
    • "attempt to call a string value" error on Vera luup engine

      therealdb

      I have some code failing on Vera from time to time. All I got is:

      attempt to call a string value

      and usually a luup.reload will fix it. It should be something related to startup and scene collision.

      Is there a way to really trace lua calls? I'm a DIY regarding LUA and I'm sure there should be a better way to trace and debug errors.

      I'll try to code something in order to detect this situation and reload luup, because it's blocking my scenes.

      Yes, I know I should migrate all my logic to openLuup, but I can't at the moment.

      openLuup
    • Geolocation

      R

      Hi guys,

      I’m researching the move away from Vera and z-way has the most chance at this point. However, I came across the geolocation aspect of my setup.

      I now use Vera Proximity. It works, but is not the most ideal solution. This won’t be an option anymore after I’ve migrated, so I was wondering what you guys use for geolocation.

      openLuup
    • Vera Decoupled from the cloud services

      therealdb

      so, @rigpapa did it: https://github.com/toggledbits/Vera-Decouple

      It's completely decoupling Vera from the cloud. Very cool stuff. /cc @rafale77 @akbooer

      openLuup

    openLuup Hangs

    openLuup
    3
    21
    146
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • rafale77
      rafale77 last edited by

      This is a rare hang/crash of openLuup but I was able to reproduce it pretty consistently now:

      I get close to house, and open homewave, it starts a poll to openLuup.
      Before the poll completes, my phone drops from the VPN for one reason or another and causes openLuup to hang.
      Most of the time, it is because the phone switches to wifi as I am at home. Sometimes, it is because the signal is weak and the VPN tunnel gets dropped.

      It order to alleviate this, I have to wait until I am on wifi before opening wifi when I get home.

      @akbooer , Any way to fix this problem?

      1 Reply Last reply Reply Quote 0
      • akbooer
        akbooer last edited by

        We’ve talked about this elsewhere before... usually related to a network problem or bridged Vera reload.

        I’m pretty sure it’s somewhere in the LuaSocket library, which, TBH, doesn’t handle timeouts very well. I tried to code around this in several places, but must be missing something. Very hard to isolate the issue.

        1 Reply Last reply Reply Quote 0
        • rafale77
          rafale77 last edited by

          Indeed, I just wasn't quite sure before but I ran a couple of tests to reproduce today and it is pretty consistent. I am also confident that it is the only way openLuup has crashed for me...

          It is when a json is being sent to a client asking for it but the file transfer never gets completed as the client gets disconnected. If I try to kill openLuup on linux under this situation it actually goes through a 90s timeout before killing the process.
          Knowing what I know of openLuup, yeah I would think it is in the luasocket but I was wondering if there was a workaround possible.

          akbooer 1 Reply Last reply Reply Quote 0
          • akbooer
            akbooer @rafale77 last edited by

            @rafale77 said in openLuup Hangs:

            under this situation it actually goes through a 90s timeout

            Now that's interesting. There is a default 90 seconds timeout on the HTTP server. It has to be greater than 60 seconds, because that is the interval in which a status request will respond in the event of no other state changes.

            1 Reply Last reply Reply Quote 0
            • akbooer
              akbooer last edited by akbooer

              From the LuaSocket docs at http://w3.impa.br/~diego/software/luasocket/tcp.html

              master:settimeout(value [, mode])
              client:settimeout(value [, mode])
              server:settimeout(value [, mode])

              Changes the timeout values for the object. By default, all I/O operations are blocking. That is, any call to the methods send, receive, and accept will block indefinitely, until the operation completes. The settimeout method defines a limit on the amount of time the I/O methods can block. When a timeout is set and the specified amount of time has elapsed, the affected methods give up and fail with an error code.

              The amount of time to wait is specified as the value parameter, in seconds. There are two timeout modes and both can be used together for fine tuning:

              'b': block timeout. Specifies the upper limit on the amount of time LuaSocket can be blocked by the operating system while waiting for completion of any single I/O operation. This is the default mode;

              't': total timeout. Specifies the upper limit on the amount of time LuaSocket can block a Lua script before returning from a call.

              The problem, if this is the solution to the problem, is that the HTTP module wrapper makes this level of control unreachable.

              I had briefly looked at alternative HTTP / TCP implementation libraries, but honestly, Luasocket is so deeply embedded in Vera that this is hardly feasible.

              1 Reply Last reply Reply Quote 1
              • rafale77
                rafale77 last edited by

                I came to the same potential solution but was wondering if these timeouts could be set somewhere in the openLuup code. Not knowing which function is actually sending the user_data in response to the Homewave call, I did not know where to attempt inserting these timeouts... in the server.lua file maybe?

                1 Reply Last reply Reply Quote 0
                • rafale77
                  rafale77 last edited by rafale77

                  Sorry for reviving this @akbooer but I wanted to give a quick update on lua socket.
                  I realized that the library used by luarocks is very old (3.0 RC1 from 2013) and that the apt debian/ubuntu version is a little newer (March 2015). The library has since gone through 5 years of development and I just installed the latest github version using this command:

                  luarocks install luasocket --server https://luarocks.org/dev
                  

                  It compiles the library from the current GitHub master. I am not sure it will help but so far it has not hurt. Will test further...

                  1 Reply Last reply Reply Quote 2
                  • akbooer
                    akbooer last edited by

                    No need to apologise... this issue needs to be fixed!

                    1 Reply Last reply Reply Quote 0
                    • rafale77
                      rafale77 last edited by rafale77

                      Well first problem after updating the lua socket:
                      I had some lua code sending an url with spaces which I did not have to url encode. Now I have to. luckily it is pretty straightforward to do with "url.escape(content)":

                      LuaSocket: URL support
                      .

                      On the other hand... somehow I feel that the response is a lot faster... I may be dreaming and will need to test this more but homewave seems to have no lag on polling. I don't remember seeing this before.

                      1 Reply Last reply Reply Quote 0
                      • rafale77
                        rafale77 last edited by

                        Well with the communication being seemingly faster, I am now having a hard time reproducing the problem. I will post back if I am able to but so far, no hanging occurring. Even ALTUI seems to be updating its data from openLuup faster.

                        1 Reply Last reply Reply Quote 0
                        • rafale77
                          rafale77 last edited by rafale77

                          Update: I can't seem to reproduce the problem anymore in spite of trying hard even in manners which would frequently create this problem before so I think the luasocket update is potentially a fix for these openluup lockups (really lua socket lockup to be accurate).

                          Edit: Nope... I really can't reproduce the lock up anymore. I tried at least 20x the same scenario which would cause a lockup every 3rd time: Opening Homewave on my iPhone and have it poll openLuup while the phone is in the middle of switching between VPN through LTE and wifi. Granted I don't know whether it is because the poll completes much faster or if it is that lua no longer locks up. This may really be fixed. Can anybody else who has run into this problem confirm?

                          1 Reply Last reply Reply Quote 0
                          • rafale77
                            rafale77 last edited by

                            @akbooer, I am now fairly positive that the updated luasocket fixes the lockups. Been running for two days with full intent to lock it up trying all kinds to interruptions and I haven't been able to get it to hang. Maybe it could be part of the installation recommendations?

                            1 Reply Last reply Reply Quote 1
                            • akbooer
                              akbooer last edited by

                              Excellent!

                              Have you checked that async HTTP is, in particular, OK?

                              I ask, because it delves deep into the LuaSocket library, so it’s not unlikely that something changed.

                              Does the update instruction you gave above work on a RPi? I need to give this a go!

                              I’ll be pleased to confirm that it’s not due to any openLuup-specific code!

                              1 Reply Last reply Reply Quote 0
                              • rafale77
                                rafale77 last edited by

                                Yes it works very well with the async http calls as well as I have a lot of my code making use of it.

                                The update method works, it asks luarocks to pull from the dev repo and should build and install version "scm2". It should be platform agnostic. (the command actually rebuilds the library).

                                The only thing I had to do is the url encode for spaces which makes use of the http_async module for which I had to change the url input by encoding the space in the url(%20).

                                1 Reply Last reply Reply Quote 0
                                • M
                                  mrFarmer last edited by

                                  Hi AK, please let me know if you have a version that works with the new lua socket. I have an other websocket problem and would be nice to see if this helps.

                                  Cheers Rene

                                  rafale77 1 Reply Last reply Reply Quote 0
                                  • rafale77
                                    rafale77 @mrFarmer last edited by

                                    @mrFarmer

                                    There is no update needed to openLuup itself. You only need to update the luasocket library...

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      mrFarmer last edited by

                                      Did the update openLuup still works. Did not help for my websocket issue though. If openLuup starts it connects just fine, but if connection is lost and I close and reconnect no data is received. Need to dig some more.

                                      rafale77 1 Reply Last reply Reply Quote 0
                                      • rafale77
                                        rafale77 @mrFarmer last edited by

                                        @mrFarmer

                                        Maybe explain what module you are using? I had a similar issue with one of my plugins and I ended up slightly modifying the io module in openLuup. Maybe try my branch on GitHub?

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          mrFarmer last edited by

                                          I'm using the websocket module rigpapa created (with some fixes) https://github.com/reneboer/LuWS/blob/master/luws.lua to talk to the new Ezlo ws API. This is part of the EzloBridge i am making based on your VeraBridge as we spoke about. Just put that on GitHub https://github.com/reneboer/EzloBridge.

                                          It is working except when the websocket gets interrupted. Also needs some better error handling etc.

                                          1 Reply Last reply Reply Quote 0
                                          • rafale77
                                            rafale77 last edited by rafale77

                                            Maybe a problem with the web socket itself? What is the source of the interruption?
                                            As I said above, I have been desperately trying to reproduce my old problem with interrupting either the io connection or an http request response which used to make openluup or rather luasocket hang and I have no longer able to do so with the updated luasocket version.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Powered by NodeBB | Contributors
                                            Hosted freely by PointPub Media Communications Inc. | Contact us