…an open source emulation of the Luup environment.
openLuup is an environment which supports the running of some MiOS (Vera) plugins on generic Unix systems (or, indeed, Windows systems.) Processors such as Raspberry Pi and BeagleBone Black are ideal for running this environment, although it can also run on Apple Mac, Microsoft Windows PCs, anything, in fact, which can run Lua code (most things can.) The intention is to offload processing (cpu and memory use) from a running Vera to a remote machine to increase system reliability.
Running on non-specific hardware means that there is no native support for Z-wave, although some plugins to handle Z-wave USB sticks exist to support this. The full range of MySensors (http://www.mysensors.org/) Arduino devices are supported through the Ethernet Bridge plugin available on that site. A plugin to provide a bi-directional ‘bridge’ (monitoring / control) to remote MiOS (Vera) systems is provided in the openLuup installation.
openLuup is extremely fast, has very low cpu load, and has a very compact memory footprint. The user interface uses @amg0’s AltUI: Alternate UI to UI7. A built-in utility is provided to transfer a complete set of uncompressed device files and icons from any Vera on your network to the openLuup target machine.
What openLuup does:
- runs the ALTUI plugin to give a great UI experience
- runs the MySensors Arduino plugin (ethernet connection to gateway only) which is really the main goal - to have a Vera-like machine built entirely from third-party bits (open source)
- includes a bridge app to link to remote Veras (which can be running UI5 or UI7 and require no additional software.)
- runs many plugins unmodified - particularly those which just create virtual devices (eg. Netatmo, …)
- uses a tiny amount of memory and boots up very quickly (a few seconds)
- supports scenes with timers and ALTUI-style triggers
- has its own port 3480 HTTP server supporting multiple asynchronous client requests
- has a fairly complete implementation of the Luup API and the HTTP requests
- has a simple to understand log structure - written to LuaUPnP.log in the current directory - most events generate just one entry each in the log.
What it doesn’t do:
- Some less-used HTML requests are not yet implemented.
- Doesn’t directly support local serial I/O hardware (there are work-arounds.)
- Doesn’t run encrypted, or licensed, plugins.
- Doesn’t use lots of memory.
- Doesn’t use lots of cpu.
- Doesn’t constantly reload
- Doesn’t do UPnP (and never will.)
Latest release (including documentation) available on GitHub: https://github.com/akbooer/openLuup