hobbyquaker / homematic-manager

Homematic Device Configuration and Administration
GNU General Public License v3.0
187 stars 27 forks source link

Homematic Manager, Ladevorgang endlos #121

Open github6043 opened 4 years ago

github6043 commented 4 years ago

Hi all

Habe mir eben den Homematic Manager 2.5.0 installiert. Die Verbindung zur Debmatic steht. Jedoch werden keine devices importiert, Manager steht bei Ladevorgang ... und list ist leer.

Kennt jemand Abhilfe ?

github6043 commented 4 years ago

Kriege da mit der Version 2.6.2 Javascript Errors

Unhandled Error TypeError: Cannot convert undefined or null to object at Function.keys () at ipcRpc.send (C:/Users/juerg/AppData/Local/Programs/homematic-manager/resources/app.asar/www/js/homematic-manager.js:411:20) at EventEmitter.Rpc.ipc.on (C:/Users/juerg/AppData/Local/Programs/homematic-manager/resources/app.asar/node_modules/electron-ipc-rpc/index.js:26:17)

github6043 commented 4 years ago

2019-11-20 13_31_59-Window 2019-11-20 13_36_21-Window

harabeck commented 4 years ago

Auch bei mir ist der Ladevorgang endlos, obwohl eine Verbindung zu BidCos mit grünem Hakeb erfolgreich ist. Habe Windos 10 Defender Firewall deaktiviert, auch der App entsprechende Rechte vergeben. Keine Änderung. Zu Java Script Errors kann ich nichts sagen, sehe keine, wo wäre das Logfile zu finden?

Ab Homemativ Manager Version 2.3.0 kommt der Ladevorgang nicht zum Ende. Deinstallieren und Version 2.2.0 funktioniert sofort einwandfrei.

Woran kan das liegen?

dasFelix commented 4 years ago

Hallo Hatte ich auch mit win10. Ebenfalls dass 2.2.0 gleich lief, nachdem ich es hier gesehen habe. Hatte allerdings ein JavaUpdate pending und dies installiert. Nun läuft auch die V2.6.2 ohne Probleme.

dasFelix commented 4 years ago

Sorry... kommando zurück. Beim nächsten Start war das Problem leider wieder da :(

harabeck commented 4 years ago

Auch bei mir war der Ladevorgang endlos. Die Lösung war die alte Version zunächst deinstallieren und anschliessend die aktuelle installieren. Ich hatte bisher einfach die neue Version drüber installiert, das hat das Problem verursacht.

Sickboy78 commented 4 years ago

Auch bei mir war der Ladevorgang endlos (mit 2.5.0 und 2.6.2). Bisher leider keine der genannten Lösungen geholfen, weder Java Update, noch FW deaktivieren, noch deinstallieren/neuinstallieren. Einzige Abhilfe, weiterhin alte Version 2.2.0 verwenden.

m-hund commented 4 years ago

Bei mir leider auch: Unendlicher Ladevorgang - nichts kommt. Die Verbindung zur CCU scheint aber zu funktionieren; im Fenster wird oben angezeigt, dass BidCos, HmIP verbunden sind. Änderungen an Firewall, Neuinstallation verschiedener Versionen hat nichts gebracht. Gibt es hierzu einen Tipp?

widmann-it commented 4 years ago

Leider bei mir auch unter der 2.7.0, gibt es ein logfile wo ich sehen kann was passiert ?

real-fakeuser commented 3 years ago

Hello there, i got the same issue where Homematic Manager starts up and tries to load data into gui. In the Geräte tab the blue Ladevorgang... box disappears when clicking on the reload button but still doesn't show any devices. However it shows a successfull connection with a green arrow at the right side of BidCos-RF I already tried reinstalling, updating Java 64 bit, run as administrator, disable firewall, disable virus real time scanner. When trying version 2.2.1 i also got java errors msgbox. Between tests i deleted Files in Roaming and local/Programs o.ä. In my case i first installed manager version 1.5 before i saw that there is a newer version available which kind of worked. My System running is homegear paspberry image on a raspberry pi3+ and iobroker in VM on different system which i also disconnected for testing. My client is running windows 10 pro 64 Bit. I've read something about editing a config file for propper functioning. Thanks for this awesome software. I hope there's an easy fix. Best regards

KenkiCK commented 3 years ago

Hi all, I have after install 2.7 the same issue - looks like virtual devices makes a problem. Sometimes it never end, sometimes I get the Java error like described. I hope too that this will be fixed. Bests, Christian

f00f commented 3 years ago

Same here. I tried 2.7.0 standalone, 2.6.1 standalone and 2.7.0 setup. Win 10, Firewall turned off. CCU3.

Loading never finishes, list is empty. Green check-marks at the top do appear (BidCos-RF, HmIP, Virtual Devices).

I tried all kinds of settings (Auth on/off, TLS on/off, unhandled exceptions on/off)

Any way of debugging this issue?

Edit: woah, after reading @real-fakeuser's post I found 3(!) HMM folders in AppData/Roaming. And there are devices_, names_ and paramsets_ files with plausible content for my CCU IP in the hm-manager folder.

mnemo70 commented 3 years ago

I figured out what is happening: The UI is requesting the application's internal configuration data from the main process so quickly that it hasn't finished initializing it yet.

In the source code file www/js/homematic-manager.js, at line 174, change getConfig(); to:

setTimeout(() => {
    getConfig();
}, 1000);

This will delay the getConfig call by a second, giving the main process time to initialize. If the application still hangs, try increasing the value from 1000 to 1500, 2000 or even higher.

Sadly, I cannot provide a new binary to y'all.

BTW, updating your Java installation has NOTHING to do with this app. It's written in JavaScript and does not need Java at all.

mnemo70 commented 3 years ago

Workaround (for Windows):

  1. Download and INSTALL "homematic-manager-setup-2.7.0.exe".

  2. Download and install Node.JS if you haven't.

  3. Install asar: npm install -g asar

  4. Open a command prompt, then:

    cd %localappdata%
    cd programs\homematic-manager\resources
    asar e app.asar app
    ren app.asar app.asar.bak

    (Adapt the path in the CD commands if you installed Homematic Manager to a different directory.)

  5. Open the file app\www\js\homematic-manager.js in an editor.

  6. Search for "getConfig"

  7. Replace the line "getConfig();" with:

    setTimeout(() => {
    getConfig();
    }, 1000);
  8. Save the file and exit the editor.

  9. Run Homematic Manager. The application should work now.

  10. If you want, you can re-package the app in the resources directory with: asar p app app.asar

  11. Delete the directory "app".

This hack can surely be adopted to the Mac and Linux releases. You just need to find the app.asar file after installation.

mnemo70 commented 3 years ago

Sorry, another update.

This fix didn't work for a friend who had the "Ladevorgang" problem in macOS.

The difference is that in his Homematic Manager the various device types like Bidcos-RF, HMIP, etc. are NOT displayed below the IP of his CCU. On my machine, the device types are displayed. So he's having another problem...

Seestern93 commented 3 years ago

Workaround (for Windows):

1. Download and INSTALL "homematic-manager-setup-2.7.0.exe".

2. Download and install Node.JS if you haven't.

3. Install asar: `npm install -g asar`

4. Open a command prompt, then:
cd %localappdata%
cd programs\homematic-manager\resources
asar e app.asar app
ren app.asar app.asar.bak

(Adapt the path in the CD commands if you installed Homematic Manager to a different directory.)

  1. Open the file app\www\js\homematic-manager.js in an editor.
  2. Search for "getConfig"
  3. Replace the line "getConfig();" with:
setTimeout(() => {
    getConfig();
}, 1000);
1. Save the file and exit the editor.

2. Run Homematic Manager. The application should work now.

3. If you want, you can re-package the app in the resources directory with:
   `asar p app app.asar`

4. Delete the directory "app".

This hack can surely be adopted to the Mac and Linux releases. You just need to find the app.asar file after installation.

Thank you for that detailed step-by-step explanation! Worked for me on Windows 10 machine after having problems to connect Homematic-Manager with my RaspberryPi where homegear is running with a nanoCUL stick. Already connected devices are now shown up as expected, and pairing new devices is now also working :-)

f00f commented 3 years ago

Thanks for the detailed instructions, @mnemo70. However, they don't work for me on Win10. I added an alert() to verify that the updated .js file was being used.

jonaswre commented 3 years ago

I had the same error. The issue is that there might not be enough time to "findInterfaces()" this results in config.daemons to be undefined.

There is one simple workaround:

Workaround (for Windows):

  1. Download and INSTALL "homematic-manager-setup-2.7.0.exe".
  2. Download and install Node.JS if you haven't.
  3. Install asar: npm install -g asar
  4. Open a command prompt, then:
cd %localappdata%
cd programs\homematic-manager\resources
asar e app.asar app
ren app.asar app.asar.bak

(Adapt the path in the CD commands if you installed Homematic Manager to a different directory.)

  1. Open the file app\www\js\homematic-manager.js in an editor.
  2. Search for "getConfig"
  3. Replace the line "getConfig();" with:
setTimeout(() => {
    getConfig();
}, 1000);
  1. Save the file and exit the editor.
  2. Run Homematic Manager. The application should work now.
  3. If you want, you can re-package the app in the resources directory with: asar p app app.asar
  4. Delete the directory "app".

This hack can surely be adopted to the Mac and Linux releases. You just need to find the app.asar file after installation.

But increase setTimeout to something over 5000 since findInterfaces() times out after 5000ms I choose 6000. This means there is 6000ms delay when starting but this is ok for me.

Another option would be to only responde with the correct config once its correctly loaded.

f00f commented 3 years ago

If I set the timeout to 5000 I get the empty user interface. If I set the timeout to 6000 homematic manager is stuck at the "Loading Homematic Manager" screen. So, this didn't work for me either :-(

jonaswre commented 3 years ago

Have you tried to increase it further? I've testet with 10000ms

ghost commented 3 years ago

I have the same problem CCU3 / Win10 blue 'Loading' on the screen and not more.. I try with big timeout , same effort. With 'show unhandled error' in Config i get Info: Unhandled Error TypeError: Cannot convert undefined or null to object at Function.keys () at ipcRpc.send (C:/Users/Andy/AppData/Local/Programs/homematic-manager/resources/app/www/js/homematic-manager.js:454:20) at EventEmitter.Rpc.ipc.on (C:/Users/Andy/AppData/Local/Programs/homematic-manager/resources/app/node_modules/electron-ipc-rpc/index.js:26:17)

Andreas

mschlenstedt commented 3 years ago

Same Problem with my installation. https://github.com/hobbyquaker/homematic-manager/issues/121#issuecomment-749725958 helps. Now Homematic Manager starts fine.

36grad commented 3 years ago

Same issue on my Win10 machine, also here https://github.com/hobbyquaker/homematic-manager/issues/121#issuecomment-749725958 helped, but I had to set the timeout to 20000 (i.e. 20s) - I wonder what's wrong on my machine.

But then I'm glad that I could get this rather nice tool to work with the described hack.

corgan2222 commented 2 years ago

Workaround (for Windows):

1. Download and INSTALL "homematic-manager-setup-2.7.0.exe".

2. Download and install Node.JS if you haven't.

3. Install asar: `npm install -g asar`

4. Open a command prompt, then:
cd %localappdata%
cd programs\homematic-manager\resources
asar e app.asar app
ren app.asar app.asar.bak

(Adapt the path in the CD commands if you installed Homematic Manager to a different directory.) 5. Open the file app\www\js\homematic-manager.js in an editor. 6. Search for "getConfig" 7. Replace the line "getConfig();" with:

setTimeout(() => {
    getConfig();
}, 1000);
8. Save the file and exit the editor.

9. Run Homematic Manager. The application should work now.

10. If you want, you can re-package the app in the resources directory with:
    `asar p app app.asar`

11. Delete the directory "app".

This hack can surely be adopted to the Mac and Linux releases. You just need to find the app.asar file after installation.

still works fine! Thanks!

MichaelKetting commented 2 years ago

Same issue. Tried the workaround and didn't resolve my problem. Did someone already identify where the problem is originating? Is it a configuration mistake that must be fixed manually or something else. I didn't go into the source code yet to find out what exactly is going on during the load.

mnemo70 commented 2 years ago

Same issue. Tried the workaround and didn't resolve my problem. Did someone already identify where the problem is originating? Is it a configuration mistake that must be fixed manually or something else. I didn't go into the source code yet to find out what exactly is going on during the load.

Did you try increasing the timeout to 10000 ms in the workaround? Is the correct CCU IP address displayed in the top bar on the right (right next to "Ereignisse" or "Events")? Are there daemon names displayed below that, like "BidCos-RF", "HmIP" or "VirtualDevices"?

MichaelKetting commented 2 years ago

@mnemo70 Yeah, tried 20.000 ms. Tried the IP address and the hostname that's resolvable via the browser. No daemon names are displayed below the IP-address/hostname

mnemo70 commented 2 years ago

@mnemo70 Yeah, tried 20.000 ms. Tried the IP address and the hostname that's resolvable via the browser. No daemon names are displayed below the IP-address/hostname

OK... Are you running the app on Windows, Mac or Linux? Is "Auth" configured for the connection and are the user and password really correct? Which files are in %appdata%\hm-manager (if you're on Windows)?

MichaelKetting commented 2 years ago

@mnemo70 Oh, yes. Windows 10. I configured Auth + TLS. edit: the password was copy&pasted and matches the config file.

hm-manager the 'config' file with the following content (sanitized as needed)

{
  "ccuAddress": "myccu3",
  "ccuAddressSelect": [],
  "clearCache": false,
  "hideNameCols": false,
  "language": "de",
  "pass": "mypassword",
  "rpcDelay": 3000,
  "rpcInitIp": "192.168.200.11",
  "rpcInitIpSelect": [
    "192.168.200.11",
    "192.168.201.10",
    "10.0.0.48"
  ],
  "rpcListenIp": "0.0.0.0",
  "rpcListenPort": 2000,
  "rpcListenPortBin": 2001,
  "rpcLogFolder": "",
  "showUnhandled": true,
  "useAuth": true,
  "useTLS": true,
  "user": "myadmin",
  "version": "2.7.0"
}

myccu3 resolves in the 192.168.200.0 subnet.

MichaelKetting commented 2 years ago

@mnemo70 I figured out what the problem was:

My ccu3 still had the firewall turned up to 11, which was intentional but is kind of embarressing, considering...

mnemo70 commented 2 years ago

@mnemo70 I figured out what the problem was:

My ccu3 still had the firewall turned up to 11, which was intentional but is kind of embarressing, considering...

I was suspecting something like that. :) Good that it's working now!

emufan commented 2 years ago

Bei mir klappt es auch nicht. Obiges Modifizieren haben ich gemacht. IP und rotokolle werden im Fernster angezeigt. Ansonsten n nur "Ladevorgang...". Ewig. Nur halt abhängig vom Timeout oben, d.h. 1000, 5000, 10000, usw. (alles probiert) nur später. Firewall auch zur Probe ganz aufgemacht. Hat noch jemand eine Idee?

hardliner76 commented 1 year ago

Mit Windows 11 nicht ans laufen bekommen. Die Executable auf Windows 8 Kombatibilitätsmodus setzen und die Firewall ist für Privat und Öffentlich aktiv. Es funktioniert ohne etwaiges modifizieren von Dateien