HomeGenie

HomeGenie, the programmable automation intelligence

GPL-3.0 License

Stars
386
Committers
26

Bot releases are hidden (Show)

HomeGenie - HomeGenie 1.4-alpha.10

Published by genemars over 3 years ago

Alpha preview for the new upcoming HomeGenie.

Notes on installing and testing netcore version

Beside the standard HG distribution files that can be installed following the usual instructions from the documentation site, there is a netcore release (homegenie-netcore-all-1.4-alpha.10.zip) that can be installed as described below.

Uncompress the netcore app to a new folder (eg. homegenie).

Install netcore runtime version 3.1 or later:

https://docs.microsoft.com/en-us/dotnet/core/install/linux-debian

Then a couple of netcore fixes are required to get the app running:

  • fix libusb driver not found issue (affects CM15 or CM19 for X10)
sudo ln -s /lib/x86_64-linux-gnu/libusb-1.0.so.0 /usr/share/dotnet/shared/Microsoft.NETCore.App/3.1.13/libusb-1.0.dll

The above paths might be different depending on the target platform. For RPi the paths are different for sure but I didn't looked for them yet.

  • fix 'libnserial.so.1' issue (affects ZWaveLib and SerialPortLib)
apt install cmake
git clone https://github.com/jcurl/serialportstream.git
cd serialportstream/
cd dll/serialunix/
./build.sh

Then copy generated files libnserial.so* to the app folder and lauch the app with LD_LIBRARY_PATH set to the current directory:

cp ./serialportstream/dll/serialunix/build/libnserial/libnserial.so* ./path_to/homegenie_folder/
cd ./path_to/homegenie_folder/
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./HomeGenie

Notes on installing from debian package (.net version)

HG does not run as root by default anymore and the new .deb package will automatically create a standard homegenie user and it will use that for running the service. In order to make this possible, special permission must be granted to the user that runs HG in order to access serial ports and other devices such as USB. This is done automatically by the install script, but can be also done manually.
On most debian system this can be done by:

  • adding the user (homegenie) to the dialout group (gives access to serial and usb)
  • fixing GPIO permissions by granting access to the dialout group
sudo chgrp -R dialout /sys/class/gpio
sudo chmod -R g+rw /sys/class/gpio

If this is too much bother, it is still possible to run HG as root manually and skip these permissions fix steps.

New UI address

The old UI address is http://<hg_address>:<port>/, while the new one is:

http://<hg_address>:<port>/app/

The default HTTP service <port> is 8080.

HomeGenie - v1.4-alpha.9

Published by genemars over 3 years ago

Alpha preview for the new upcoming HomeGenie (going beta soon!).

  • Automation program editor (wip)

Notes on installing and testing netcore version

Beside the standard HG distribution files that can be installed following the usual instructions from the documentation site, there is a netcore release (homegenie-netcore-all-1.4-alpha.7.zip) that can be installed as described below.

Uncompress the netcore app to a new folder (eg. homegenie).

Install netcore runtime version 3.1 or later:

https://docs.microsoft.com/it-it/dotnet/core/install/linux-debian

Then a couple of netcore fixes are required to get the app running:

  • fix libusb driver not found issue (affects CM15 or CM19 for X10)
sudo ln -s /lib/x86_64-linux-gnu/libusb-1.0.so.0 /usr/share/dotnet/shared/Microsoft.NETCore.App/3.1.13/libusb-1.0.dll

The above paths might be different depending on the target platform. For RPi the paths are different for sure but I didn't looked for them yet.

  • fix 'libnserial.so.1' issue (affects ZWaveLib and SerialPortLib)
apt install cmake
git clone https://github.com/jcurl/serialportstream.git
cd serialportstream/
cd dll/serialunix/
./build.sh

Then copy generated files libnserial.so* to the app folder and lauch the app with LD_LIBRARY_PATH set to the current directory:

cp ./serialportstream/dll/serialunix/build/libnserial/libnserial.so* ./path_to/homegenie_folder/
cd ./path_to/homegenie_folder/
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./HomeGenie

IMPORTANT:

HG does not run as root by default anymore and the new .deb package (not released at this time) will automatically create a standard homegenie user and it will use that for running the service. In order to make this possible, special permission must be granted to the user that runs HG in order to access serial ports and other devices such as USB. This is done automatically by the install script, but can be also done manually.
On most debian system this can be done by:

  • adding the user (homegenie) to the dialout group (gives access to serial and usb)
  • fixing GPIO permissions by granting access to the dialout group
sudo chgrp -R dialout /sys/class/gpio
sudo chmod -R g+rw /sys/class/gpio

If this is too much bother, it is still possible to run HG as root manually and skip these permissions fix steps.

New UI address

Same address for the old UI http://<hg_address>/, while the new one is:

http://<hg_address>/app/

HomeGenie - v1.3-stable.19

Published by genemars about 4 years ago

  • Fix widgets editor rendering bug
  • Fix backup download issue #418
  • Added API method for updating module parameters via JSON payload
  • Added ActionMessageCode as option to make the KNX connection, (#415)
  • Added 'System.Security.Cryptography' reference to CSharpAppFactory.cs generated programs
  • Fix occasional bug (Collection modified exception) occurring during JSON serialization of modules list
  • Module parameters can now hold any kind of object value through the new SetData method. Internally, the value of this method is directly bound to the ModuleParameter.Value property. ModuleParameter.Value will return the string representation of the object stored by the SetData method, JSON serializing it when needed (see updated docs).
  • Fixed reporting of line numbers of runtime errors for csharp programs
  • Program apps can now exchange any data object instance via ModuleHelper.RaiseEvent and Program.ApiCall methods (see updated docs).
HomeGenie - v1.3-beta.17

Published by genemars over 4 years ago

HomeGenie v1.3-beta.17

  • new project structure
  • now building both as netcore 3.0 and net461 app
  • added new homegenie-ui-app Angular project (wip)
  • closes #416
HomeGenie - v1.3-beta.16

Published by genemars over 4 years ago

  • Fixes #413
HomeGenie - v1.3-beta.15

Published by genemars over 4 years ago

  • Module parameters can now hold any kind of object value through the new SetData method. Internally, the value of this method is directly bound to the ModuleParameter.Value property. ModuleParameter.Value will return the string representation of the object stored by the SetData method, JSON serializing it when needed (see updated docs).
  • Fixed reporting of line numbers of runtime errors for csharp programs
  • Program apps can now exchange any data object instance via ModuleHelper.RaiseEvent and Program.ApiCall methods (see updated docs).
HomeGenie - v1.3-stable.14

Published by genemars over 4 years ago

  • Fixes bug in scheduler calendar view (was not showing 'modules' button on certain conditions)
  • Fixes error during last step of a backup restore (install progress bar would not update)
  • Fixes OpenWeatherMap location autocomplete in widget options popup
HomeGenie - v1.3-stable.13

Published by genemars over 4 years ago

  • Added support in GPIO drivers for latest Raspberry Pi models (Pi4 e CM3+)
HomeGenie - v1.3-stable.11

Published by genemars over 4 years ago

  • Updated ZWaveLib (fixes node addding functionality bug on first node added)
  • Fixed MqttClientHelper.cs connect/disconnect handling issues
  • Added WithTls option to MqttClientHelper.cs
  • Added MqttClientOptionsBuilder action callback to Connect method to allow specifying of advanced client options
  • Made MQTTnet library directly available to C# programs
  • Updated Interconnection/ MQTT network app
  • Other minor UI fixes
HomeGenie - v1.3-stable.10

Published by genemars over 4 years ago

Improved Scheduler UI.

HomeGenie - v1.3-stable.9

Published by genemars over 4 years ago

Fixes #408 - drag and sorting issues on mobile devices; updated LiteDB

HomeGenie - v1.3-stable.8

Published by genemars over 4 years ago

  • Control page: added "Widgets Manager" option to Actions menu to arrange widgets by dragging them
  • Programs list: added options menu with quick shortcuts to manage programs
  • A file "serviceaddress.txt" is now being generated each time the service starts and it will contain current web service address and port
  • UpdateChecker will now only propose "stable" releases (with -stable suffix in the name)
HomeGenie - v1.3-stable.7

Published by genemars over 4 years ago

HomeGenie v1.3-stable.7

HomeGenie - v1.3-stable.5

Published by genemars over 5 years ago

Fixes #385: "Update notification flag still displaying after successful update"

HomeGenie - v1.3-stable.4

Published by genemars over 5 years ago

  • Fix #384 - email sending bug
HomeGenie - v1.3-stable.3

Published by genemars over 5 years ago

  • Added automation program to control Belkin WeMo #327
  • Fix MQTT client bug #381
  • Fix html/cli.html event stream debug page
HomeGenie - v1.3-beta.2

Published by genemars over 5 years ago

Fix issue #373 (update manager asking to update even already up-to-date)

HomeGenie - v1.3-beta.1

Published by genemars over 5 years ago

IMPORTANT NOTE BEFORE UPGRADING

Since the authentication and encryption methods have been changed, if you're upgrading from a previous version of HG:

  • disable any password protection (you can re-enable it after upgrading)
  • create a new backup of HG configuration (without the password protection enabled)
  • if you start from a fresh install, restore your backup file
  • re-enable password protection
  • create a new backup

CHANGE LOG

  • added HTTP Digest authentication
  • added WebSocketGateway with token authorization; is now possible to control HG and listen to events using the integrated websocket channel
  • deprecated 'event forwarding' automation programs
  • deprecated HTTP Basic authentication
  • added /api/HomeAutomation.HomeGenie/Config/WebSocket.GetToken API method to obtain authorization token required to connect to the WebSocketGateway (default port 8188)
  • added simple interactive API CLI /hg/html/cli.html for debugging event stream and testing API commands (based on websocket connection)
HomeGenie - v1.2-stable.39

Published by genemars over 5 years ago

  • deprecated Automatic Turn Off app
  • replaced Weather Underground with OpenWeatherMap
  • added generic Weather widget
  • deprecated automation program binaries, programs are now compiled after installation process
  • other minor fixes and improvements
HomeGenie - v1.2-stable.38

Published by genemars over 5 years ago

HomeGenie v1.2-stable.38