-
This plugin was updated by @vosmont to run under openLuup (and possibly UI7.)
@DesT recently asked for a slight addition to its functionality, so I'm adding this thread to discuss the changes.
-
-
Not quite a plugin but just the addition of a barometer device to be used for various integrations (Domoticz or Home Assistant)
Intructions:
Drop the content of this zip file in a folder openLuup has access to (I put mine into the cmh-ludl/files to pretend these were downloaded from a vera)
then create a device and use D_BarometerSensor1.xml as the device file and I_GenericSensor1.xml for the execution file or anything else actually depending on what your integration is. -
While i wait for MSR to arrive, i'm trying to get better control over my zigbee devices. Looked over the fence to Domoticz, and they have a really good plugin for Zigate, and as there was a domoticz bridge here, i thought i'd use that instead..
This plugin have bben abandoned for some years though, and when I installed it, it won't start properly.. looking at the startup log, it looks like OpenLuup might have had some changes that needs to be handled in the plugin? (@akbooer ?)
2021-01-26 22:31:37.457 luup.create_device:: [833] D_DomoticzBridge.xml / I_DomoticzBridge.xml / D_DomoticzBridge.json (DomoticzBridge) 2021-01-26 22:31:37.457 openLuup.chdev:: [string "L_DomoticzBridge.lua"]:59: module 'openLuup.rooms' not found: no field package.preload['openLuup.rooms'] no file './openLuup/rooms.lua' no file '/usr/local/share/lua/5.1/openLuup/rooms.lua' no file '/usr/local/share/lua/5.1/openLuup/rooms/init.lua' no file '/usr/local/lib/lua/5.1/openLuup/rooms.lua' no file '/usr/local/lib/lua/5.1/openLuup/rooms/init.lua' no file '/usr/share/lua/5.1/openLuup/rooms.lua' no file '/usr/share/lua/5.1/openLuup/rooms/init.lua' no file '../cmh-lu/openLuup/rooms.lua' no file 'files/openLuup/rooms.lua' no file 'openLuup/openLuup/rooms.lua' no file './openLuup/rooms.so' no file '/usr/local/lib/lua/5.1/openLuup/rooms.so' no file '/usr/lib/x86_64-linux-gnu/lua/5.1/openLuup/rooms.so' no file '/usr/lib/lua/5.1/openLuup/rooms.so' no file '/usr/local/lib/lua/5.1/loadall.so' no file './openLuup.so' no file '/usr/local/lib/lua/5.1/openLuup.so' no file '/usr/lib/x86_64-linux-gnu/lua/5.1/openLuup.so' no file '/usr/lib/lua/5.1/openLuup.so' no file '/usr/local/lib/lua/5.1/loadall.so' -
I am looking at making openLuup to act as an MQTT client for a variety of applications. I may write a plugin for it myself based on either of these two libraries:
xHasKx/luamqtt xHasKx/luamqtt
luamqtt - Pure-lua MQTT v3.1.1 and v5.0 client. Contribute to xHasKx/luamqtt development by creating an account on GitHub.
Yongke/luamqttc Yongke/luamqttcA lua mqtt client which support MQTT version 3.1.1 - Yongke/luamqttc
Still have to learn the details of how it would work. If people have ideas, feel free to post here!
-
rafale77/Amcrest-Dahua-Openluup rafale77/Amcrest-Dahua-Openluup
Plugin for Amcrest/Dahua Cameras on openLuup. Contribute to rafale77/Amcrest-Dahua-Openluup development by creating an account on GitHub.
-
-
So, I was bored to see all those "device not responding" banners in the Alexa app and I created a new plug-in:
dbochicchio/Vera-HABridge dbochicchio/Vera-HABridgeLuup plugin to syncronize Vera/openLuup status to HA-Bridge and Alexa. - dbochicchio/Vera-HABridge
This will update your devices' status to HA-Bridge and Alexa will finally reflect the correct status!
Just install, insert the HA-Bridge IP and port and you're done. It will work with lights and scenes (scene just to update the status and remove the "device not responding" banner). Colors are not supported, because
It will work with Vera bridged on openLuup, but HA-Bridge accessing the Vera's device directly (there's a special variable, look at the logs).
Very beta, feedback appreciated as always 🙂
I hope they'll add a way to query the status via voice soon 😉
-
The latest/working version of OpenSprinkler for openLuup, is it the one from @therealdb ?
-
Well, I disappeared down a rabbit hole on a different mission and resurfaced with this monstrosity.
What does it do?
It translates button functions for various (certainly not all) IRP protocols to Pronto codes. These can then be sent by a plugin that sends Pronto Codes to IR transmitters - such as the BroadLink Plugin or the GC100 Plugin (or similar).
The IRP protocol "Device", "Subdevice" and "Function" numbers are stored in a json file as buttons for "virtual remotes".
So you could have say three physical IR transmitters and want to command different AV devices (ie TVs, AVR, Xmas tree, etc) in the vicinity of those various IR emitters.
The button codes are far less cumbersome than heaps of pronto codes. You can set up a virtual remote for each AV device in the json file. Each physical emitter can be assigned to any virtual remote. And away you go!
Well - you already have a pile of pronto codes already running just fine? However, as the plugin "manufacturers" pronto codes, you could also use it to scan/search for functions for any AV device you may have. GitHub has an example for Pioneer: SearchForButtonCodes.lua
Find "Device", "Subdevice" and "Function" codes:
Plugin details in:
Install via AltUI:
Version 0.51
Initial release.Version 0.52
Add RC6 format: includes Windows Media Center based items eg Intel NUCs, Xboxes, Kodi, etc -
So, Amazon recently released the ability to execute spoken commands.
dbochicchio/VeraAlexa: Alexa plug-in for Vera and openLuup. (github.com)
Using my plug-in, you could just do something like this:
luup.call_action("urn:bochicchio-com:serviceId:VeraAlexa1", "RunCommand", {Command="-e textcommand:'Alexa, I’m leaving' -d 'Bedroom'"}, 666)Or any spoken command that's not directly accesible via routines. Something like
"Play music everywhere"
"TV volume to 32"
"Pause TV"and much more 🙂
Give it a try!
-
As another one asked for it on the other forum, I finally created a new plug-in for Telegram notifications: https://github.com/dbochicchio/vera-Telegram/
You can:
send text messages send (still) images send videos (gif or mp4) send silent notificationsI remember @CatmanV2 was searching for something similar (maybe?).
I'm using it to send push notifications to me and my wife, using a group. I have my own code streaming my cameras and sending a video as gif based on certain events (ie motion sensors or door/entryways left open). While this part is not included into the plug-in, if you're able to get a video yourself (by pointing to a URL), you'd good to go. Still images from cams (or, let's say, your favorite weather map, or any video/gif/image on the Interner ot local) are supported as well.
100% compatible with bot Vera and openLuup (where it was developed, anyway).
Feel free to ask questions or suggest new features.
-
Anyone using the Yamaha plugin currently? I installed it from the AltAppStore and put in the IP in the Attribute field but it never connects to it. This was working fine on the Vera side.
-
Currently there's no beginners guide to installing RFX plugin on OpenLuup without Vera that i could find, so i'd thought i'd make one.
This is made on Debian 10.6 (Buster).
First: Download the files. The thread on the Vera forum is the place to find the newest version (Currently 1.96), but i found it to have several issues in Openluup.
Auto create makes multiple instances of sensors, and I had a couple of "all sensors disappeared" instances!I use 1.41, which works perfectly as long as you can use Type1/Type2/ext/ext2 FW.
Download from this threadOnce you got the files into /cmh-ludl/ you can proceed to create the device in OpenLuup. In devices - click "Create".
2fd93a27-c760-49bd-b984-9443a905837e-image.png
Sometimes its nessecary to move the RFX..Png file to /cmh-ludl/icons/ to get the correct icon in OpenLuup.
Next is to get the RFX up and running, for that you need ser2net. Installation instructions
Ser2net needs to find the USB, and to fint the address, do this:
user@device:~$ cd /dev/serial/by-id/ user@device:/dev/serial/by-id$ ls usb-0658_0200-if00 usb-RFXCOM_RFXtrx433_A118TU8K-if00-port0 user@device:/dev/serial/by-id$this ID can be used in the /etc/ser2net.conf, at the end of the file:
# found in /usr/share/doc/ser2net/examples BANNER:banner:\r\nser2net port \p device \d [\s] (Debian GNU/Linux)\r\n\r\n 2000:telnet:600:/dev/ttyS0:9600 8DATABITS NONE 1STOPBIT banner ... 3001:telnet:600:/dev/ttyS1:19200 8DATABITS NONE 1STOPBIT banner 3485:raw:0:/dev/serial/by-id/usb-RFXCOM_RFXtrx433_A118TU8K-if00-port0:38400 8DATABITS NONE 1STOPBITThe port can be whatever you want (almost), the default in the RFX plugin is 10000
Save and restart ser2net.Back in OpenLuup, go to the "Attributes" tab of the RFX Plugin,and ensure that the IP address is correct:
6391e20b-6f4c-4101-8633-6ee1e01fb905-image.png I'm using a local USB, but this might as well be on a different device on your network.Now, go to the "Variables", and insert the correct port number in "IPPort" variable.
If all goes well, the plugin should be good to go after a Luup Reload!
-
I just published an update to my Virtual Devices Plug-in.
What's new in version 1.5:
support for async HTTP (out of the box on openluup, just download https://github.com/akbooer/openLuup/blob/master/openLuup/http_async.lua and copy with the plug-in files on Vera) experimental support for setpoints management in Virtual Heaters (you know, the device will turn itself off if temperature is reached, and automatically on when temperature is not beyond the setpoint) external device for temperature in Virtual Heaters (just set urn:bochicchio-com:serviceId:VirtualHeater1/TemperatureDevice variable) small fixes, stabilizationGrab your copy from https://github.com/dbochicchio/vera/tree/master/VirtualDevices
As always, 100% local, 100% apps friendly, 100% supported by Alexa (and Google Home, I guess).
-
Anyone any idea what this might mean? We have two iPhones. Mrs C's and mine. Mine is totally fine. Mrs C's says 'forceRefresh error, check logs / 300 s' and refuses to tell me where she is 😉
Same settings in both instances (in fact I have created a second instance for Mrs C and that does the same). I know the username / password are correct, and the iCloud list populates in the right manner.
The log has this:
2020-07-05 11:58:55.866 luup_log:25: IPhoneLocator: loop: an error occurred during execution of forceRefresh():[string "L_IPhone.lua"]:639: attempt to index local 'obj' (a nil value) 2020-07-05 11:58:55.866 luup.variable_set:: 25.urn:upnp-org:serviceId:IPhoneLocator1.MsgText was: 2020-07-05 11:58 now: forceRefresh error, check logs / 300 s #hooks:0Any ideas?
Cheers
C
-
Replacing Google Map with
Bing Map
rafale77/IPhoneLocator rafale77/IPhoneLocatorIPhone Locator plugin for Micasaverde VERA and openLuup - rafale77/IPhoneLocator
Here Map
rafale77/IPhoneLocator rafale77/IPhoneLocatorIPhone Locator plugin for Micasaverde VERA and openLuup - rafale77/IPhoneLocator
Both tested on openLuup
-
So, I want to expand my Virtual Devices Plugin, and add support for alarms.
I recently reverse engineered my own alarm panel (it exposes an HTTP server, so I just watched their app and rebuilt the login), so I want to expose its event better. Right now, I just added a new security sensor in order to understand when alarm is active, and a couple of notifications to send via Telegram who activated/deactivated the alarm.
It will probably be cool to provide something representing an alarm panel, or an alarm partition, or a security key (to log/show who activated/deactivated the alarm, in which mode and when). Right now I'm tracking this thing via various zwave/wifi sensors, but I wanted to improve and maybe benefit others.
I searched a bit and I founded S_AlarmPartition2.xml and a plethora of very old forum posts, very old plug-ins and I'm not sure where to start. Thanks!
-
I've made some mods to Futzle's upnp event proxy and placed it in the AltApp store (with her permission). ie it's here in GitHub.
Now it seems some people say it works with openLuup already. However the version released by Futzle required two things in order to function:
the file L_UPnPProxy1.lua was expected to be compressed, as it would be on a Vera eg: L_UPnPProxy1.lua.lzo
the hardware needs to be running OpenWrt; ie as per Vera does.
I modified the code to fix point 1) (see the script below) but I would like to see point 2) resolved, so a RasPi can be used. That is modify the script to allow a deamon to be run on a RasPi without fiddling around with say "/etc/rc.local".
So has any one got the proxy going on any hardware that is NOT using OpenWrt ? I'm unsure how to do it.
Basically this script and/or the script it includes needs to be modified or even merged to suit. You'll note that after the shebang, it requires the file "etc/rc.common" (reproduced further below). The latter appears to be some sort of template file that is overriden as required by the first script. It cites "$IPKG_INSTROOT", whatever that is. However it may be possible to make use of it somehow on a RasPi?
#!/bin/sh /etc/rc.common # Copyright (C) 2007 OpenWrt.org START=80 PID_FILE=/var/run/upnp-event-proxy.pid PROXY_DAEMON=/tmp/upnp-event-proxy.lua start() { if [ -f "$PID_FILE" ]; then # May already be running. PID=$(cat "$PID_FILE") if [ -d "/proc/$PID" ]; then COMMAND=$(readlink "/proc/$PID/exe") if [ "$COMMAND" = "/usr/bin/lua" ]; then echo "Daemon is already running" return 1 fi fi fi # openLuup: Look for the uncompressed proxy daemon Lua source. if [ -f /etc/cmh-ludl/L_UPnPProxyDaemon.lua ]; then PROXY_DAEMON_UC=/etc/cmh-ludl/L_UPnPProxyDaemon.lua elif [ -f /etc/cmh-ludl/files/L_UPnPProxyDaemon.lua ]; then PROXY_DAEMON_UC=/etc/cmh-ludl/files/L_UPnPProxyDaemon.lua # Vera 3: Else look for the compressed proxy daemon Lua source. elif [ -f /etc/cmh-ludl/L_UPnPProxyDaemon.lua.lzo ]; then PROXY_DAEMON_LZO=/etc/cmh-ludl/L_UPnPProxyDaemon.lua.lzo elif [ -f /etc/cmh-lu/L_UPnPProxyDaemon.lua.lzo ]; then PROXY_DAEMON_LZO=/etc/cmh-lu/L_UPnPProxyDaemon.lua.lzo fi if [ -n "$PROXY_DAEMON_UC" ]; then cp "$PROXY_DAEMON_UC" "$PROXY_DAEMON" elif [ -n "$PROXY_DAEMON_LZO" ]; then /usr/bin/pluto-lzo d "$PROXY_DAEMON_LZO" "$PROXY_DAEMON" fi # Close file descriptors. for fd in /proc/self/fd/*; do fd=${fd##*/} case $fd in 0|1|2) ;; *) eval "exec $fd<&-" esac done # Run daemon. /usr/bin/lua "$PROXY_DAEMON" </dev/null >/dev/null 2>&1 & echo "$!" > "$PID_FILE" } stop() { if [ -f "$PID_FILE" ]; then PID=$(cat "$PID_FILE") if [ -d "/proc/$PID" ]; then COMMAND=$(readlink "/proc/$PID/exe") if [ "$COMMAND" = "/usr/bin/lua" ]; then /bin/kill -KILL "$PID" && /bin/rm "$PID_FILE" return 0 fi fi fi echo "Daemon is not running" return 1 }And here is "etc/rc.common" as found in OpenWrt initscripts. Note the command actions it implements - in particular disable & enable, which set up Sxxy (start) & Kxxy (stop) files in the directory "etc/rc.d", which is not found in the RasPi directory structure:
#!/bin/sh # Copyright (C) 2006-2009 OpenWrt.org . $IPKG_INSTROOT/etc/functions.sh initscript=$1 action=${2:-help} shift 2 start() { return 0 } stop() { return 0 } reload() { return 1 } restart() { trap '' TERM stop "$@" start "$@" } boot() { start "$@" } shutdown() { stop } disable() { name="$(basename "${initscript}")" rm -f "$IPKG_INSTROOT"/etc/rc.d/S??$name rm -f "$IPKG_INSTROOT"/etc/rc.d/K??$name } enable() { name="$(basename "${initscript}")" disable [ "$START" ] && ln -s "../init.d/$name" "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}" [ "$STOP" ] && ln -s "../init.d/$name" "$IPKG_INSTROOT/etc/rc.d/K${STOP}${name##K[0-9][0-9]}" } enabled() { name="$(basename "${initscript}")" [ -x "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}" ] } depends() { return 0 } help() { cat <<EOF Syntax: $initscript [command] Available commands: start Start the service stop Stop the service restart Restart the service reload Reload configuration files (or restart if that fails) enable Enable service autostart disable Disable service autostart $EXTRA_HELP EOF } . "$initscript" ALL_COMMANDS="start stop reload restart boot shutdown enable disable enabled depends ${EXTRA_COMMANDS}" list_contains ALL_COMMANDS "$action" || action=help [ "$action" = "reload" ] && action='eval reload "$@" || restart "$@" && :' $action "$@" -
On my VeraPlus I use the Countdown timer plugin. If I click on details via my apps, I can create multiple timers. Now I want to switch to openluup and have installed the Countdown timer plugin via appstore. Only 1 timer is visible. Is it possible to create more timers
upnp event proxy
-
I've made some mods to Futzle's upnp event proxy and placed it in the AltApp store (with her permission). ie it's here in GitHub.
Now it seems some people say it works with openLuup already. However the version released by Futzle required two things in order to function:
-
the file L_UPnPProxy1.lua was expected to be compressed, as it would be on a Vera eg: L_UPnPProxy1.lua.lzo
-
the hardware needs to be running OpenWrt; ie as per Vera does.
I modified the code to fix point 1) (see the script below) but I would like to see point 2) resolved, so a RasPi can be used. That is modify the script to allow a deamon to be run on a RasPi without fiddling around with say "/etc/rc.local".
So has any one got the proxy going on any hardware that is NOT using OpenWrt ? I'm unsure how to do it.
Basically this script and/or the script it includes needs to be modified or even merged to suit. You'll note that after the shebang, it requires the file "etc/rc.common" (reproduced further below). The latter appears to be some sort of template file that is overriden as required by the first script. It cites "$IPKG_INSTROOT", whatever that is. However it may be possible to make use of it somehow on a RasPi?
#!/bin/sh /etc/rc.common # Copyright (C) 2007 OpenWrt.org START=80 PID_FILE=/var/run/upnp-event-proxy.pid PROXY_DAEMON=/tmp/upnp-event-proxy.lua start() { if [ -f "$PID_FILE" ]; then # May already be running. PID=$(cat "$PID_FILE") if [ -d "/proc/$PID" ]; then COMMAND=$(readlink "/proc/$PID/exe") if [ "$COMMAND" = "/usr/bin/lua" ]; then echo "Daemon is already running" return 1 fi fi fi # openLuup: Look for the uncompressed proxy daemon Lua source. if [ -f /etc/cmh-ludl/L_UPnPProxyDaemon.lua ]; then PROXY_DAEMON_UC=/etc/cmh-ludl/L_UPnPProxyDaemon.lua elif [ -f /etc/cmh-ludl/files/L_UPnPProxyDaemon.lua ]; then PROXY_DAEMON_UC=/etc/cmh-ludl/files/L_UPnPProxyDaemon.lua # Vera 3: Else look for the compressed proxy daemon Lua source. elif [ -f /etc/cmh-ludl/L_UPnPProxyDaemon.lua.lzo ]; then PROXY_DAEMON_LZO=/etc/cmh-ludl/L_UPnPProxyDaemon.lua.lzo elif [ -f /etc/cmh-lu/L_UPnPProxyDaemon.lua.lzo ]; then PROXY_DAEMON_LZO=/etc/cmh-lu/L_UPnPProxyDaemon.lua.lzo fi if [ -n "$PROXY_DAEMON_UC" ]; then cp "$PROXY_DAEMON_UC" "$PROXY_DAEMON" elif [ -n "$PROXY_DAEMON_LZO" ]; then /usr/bin/pluto-lzo d "$PROXY_DAEMON_LZO" "$PROXY_DAEMON" fi # Close file descriptors. for fd in /proc/self/fd/*; do fd=${fd##*/} case $fd in 0|1|2) ;; *) eval "exec $fd<&-" esac done # Run daemon. /usr/bin/lua "$PROXY_DAEMON" </dev/null >/dev/null 2>&1 & echo "$!" > "$PID_FILE" } stop() { if [ -f "$PID_FILE" ]; then PID=$(cat "$PID_FILE") if [ -d "/proc/$PID" ]; then COMMAND=$(readlink "/proc/$PID/exe") if [ "$COMMAND" = "/usr/bin/lua" ]; then /bin/kill -KILL "$PID" && /bin/rm "$PID_FILE" return 0 fi fi fi echo "Daemon is not running" return 1 }
And here is "etc/rc.common" as found in OpenWrt initscripts. Note the command actions it implements - in particular disable & enable, which set up Sxxy (start) & Kxxy (stop) files in the directory "etc/rc.d", which is not found in the RasPi directory structure:
#!/bin/sh # Copyright (C) 2006-2009 OpenWrt.org . $IPKG_INSTROOT/etc/functions.sh initscript=$1 action=${2:-help} shift 2 start() { return 0 } stop() { return 0 } reload() { return 1 } restart() { trap '' TERM stop "$@" start "$@" } boot() { start "$@" } shutdown() { stop } disable() { name="$(basename "${initscript}")" rm -f "$IPKG_INSTROOT"/etc/rc.d/S??$name rm -f "$IPKG_INSTROOT"/etc/rc.d/K??$name } enable() { name="$(basename "${initscript}")" disable [ "$START" ] && ln -s "../init.d/$name" "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}" [ "$STOP" ] && ln -s "../init.d/$name" "$IPKG_INSTROOT/etc/rc.d/K${STOP}${name##K[0-9][0-9]}" } enabled() { name="$(basename "${initscript}")" [ -x "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}" ] } depends() { return 0 } help() { cat <<EOF Syntax: $initscript [command] Available commands: start Start the service stop Stop the service restart Restart the service reload Reload configuration files (or restart if that fails) enable Enable service autostart disable Disable service autostart $EXTRA_HELP EOF } . "$initscript" ALL_COMMANDS="start stop reload restart boot shutdown enable disable enabled depends ${EXTRA_COMMANDS}" list_contains ALL_COMMANDS "$action" || action=help [ "$action" = "reload" ] && action='eval reload "$@" || restart "$@" && :' $action "$@"
-
-
Can’t you just install ubuntu (it’s easy with windows subsystem for Linux , if you’re a windows user) and try it?
I will just remove this part completely and give instructions to manually install the daemon. People using openluup are usually able to do it and I’ll prefer this any day over a script messing with my config files.
-
For this sort of thing (also like mounting file systems) I do this in Lua Startup. Should be easy enough to check whether it’s already running (eg. Is the socket in use.)
-
@therealdb said in upnp event proxy:
prefer this any day over a script messing with my config files
Totally in agreement as per:
..run on a RasPi without fiddling around with say "/etc/rc.local"
This makes some sense also:
... I do this in Lua Startup
Well it would obviously require a major rework of some of the code but some users do find installing stuff manually not so easy - including me at times! Something to perhaps think about.I really want my Sonos stuff running under openLuup.
-
You don’t need the proxy in order to run the Sonos plugin...?
-
No you don't need it but it helps makes the Sonos plugin more responsive. Speaking of which, it would be good to see the Sonos plugin in GitHub and in the AltApp store.
-
Isn't rigpapa new version already on Github?
-
Yep - you're right - it's in GitHub. My memory is playing tricks on me again. I read that rigpapa had it available in the AltApp store but I can't see it there - that's the bit that's missing.
-
Ping him, it's been very critical about Ezlo lately, so maybe it's willing to fix it, if necessary.
-
@a-lurker said in upnp event proxy:
Well it would obviously require a major rework of some of the code but some users do find installing stuff manually not so easy - including me at times!
Speaking of this, you can just detect openluup and stop doing the magical thing. Remember openluup can run on windows and Macos too and I'm not sure daemon could be so generalized.