-
Posts
3125 -
Joined
-
Last visited
bpwwer's Achievements
-
My fault, I added a syntax error which causes it to crash on start. Version 2.0.5 should fix that.
-
The log helped. I think I understand what's happening and I made another change to better detect the dropped connection and attempt to re-connect automatically. This change is in version 2.0.4
-
I had left a comment in the code wondering if it needed to perform a discovery after the reconnect. So maybe the answer to that is yes. I did add a log message that says it's trying to re-connect and it should log that every 30 seconds while disconnected. Do either of you know if that's happening?
-
Did you make changes to blue-iris-poly.py file at some point? The update process is failing because it sees that someone changed that file and it doesn't want to nuke those changes. There's a couple of things you can do - 1) revert the file back to it's original using 'git' commands. git checkout blue-iris-poly.py or rm blue-iris-poly.py; git checkout and then do the re-install via the GUI 2) delete the node server and then re-install 3) install the new version to a different slot 4) force git to update the files - git fetch origin master; git reset --hard origin/master The safest way is delete and re-install. Running git commands manually could end up causing problems for future updates unless you also make sure all the permissions/file ownership is correct.
-
First off, my comments and reasons for not wanting to allow for automated restarts of node servers/PG3 are really because that tends to be used as a band-aid to handle poorly behaving node servers. The right way to do things is to get the node servers to not behave badly. In this case, the node server isn't really behaving badly, it's behaving mostly as intended. When it can't communicate with Blue Iris, it goes into a disconnected state and waits for someone to take action to resolve the issue. Now it could and should handle this better. It should try to re-connect, the code is mostly there, just not the logic to attempt that. In cases like this, where the author has pretty much abandoned the node server, I'll typically take a look if I have time. Unfortunately, I don't always have time to dig into someone else code to figure out how it works and what can be done to resolve any issues. You happened to ask at a time when I'm not real busy so I'm going to try and make some changes. Version 2.0.3 should try to re-connect when it fails to query the Blue Iris server. I have no way to test this.
-
Yes, for plug-in's it doesn't display historical information, just real-time. The PG3x log itself does display historical information (back to midnight of the current day). Each daily log is saved for 2 weeks, I believe, but there's no way to view those daily logs via the GUI. debug would show the most information, critical shows the least. Typically you'd want to have this set to error or warnings. Those will show (as you might expect) error messages and warning messages. The plug-in developer determines what messages are shows at each level and there isn't any standard for what messages get shown at what level. So how useful each level is, depends on the developer. The log messages are supposed to be just human readable text. Some additional information is included in them by default: date/time, the log level, the module where the message was generated from. For the most part, you can ignore all of that. Here's a breakdown of a log message: DATE TIME Thread Name Module LOGLEVEL MESSAGE 2024-10-27 00:00:35.500 Thread-3 (run_forever) udi_interface DEBUG picos:btn_callback: Button on was Press
-
From the log, it appears to be working. Successfully set {UID} :: CLIFRS to 0 UOM 25 Successfully set {UID} :: CLIFRS to 1 UOM 25 Successfully set {UID} :: CLIFRS to 2 UOM 25 Successfully set {UID} :: CLIFRS to 3 UOM 25 That shows it setting the fan value to low, medium, high, auto There's nothing in that log that shows it setting the level to 'Not Supported' Based on what I see, the plug-in is working correctly. Have you restarted the Admin Console? If not, try that.
-
You can set the log level to debug and change the fan level. It looks like the debug log might show what the device sends which would help.
-
Your device isn't reporting any fan level so that value is correct. That's what was causing the failures after the first fix I added. The code was expecting a fan level and crashed if it didn't see one. It's possible that the code has the field name wrong and that's why it doesn't see it, but there's no documentation on what the field names are so I have no way to check that.
-
Actually, it's not the same error. It's now failing on 'fanLevel' not 'auto' like it was before. It looks like the code tried to handle the missing key 'fanLevel' but didn't do it right. I've corrected it and released as 2.0.5
-
I can see what the problem is from the log, but I'm not sure what to do to fix it since I don't know anything about the sensibo devices. It's failing to create a node because when it tries to update the node drivers initially (specifically the CLIMD (mode) node driver, it encounters an error. It's trying to set the mode to 'auto' but 'auto' isn't defined as a valid mode for it to set. The node defines 'cool', 'heat', 'fan', 'dry', and 'auto' as modes that can be sent to the sensibo to control it, but then it defines 'cool', 'heat', and 'fan' as modes that the sensibo can return as the current set mode. However, the sensibo is apparently returning the current mode as 'auto' which crashes the plug-in. I would say the fix is to simply add 'auto' to the list of valid modes the sensibo can return. But the control defines the modes as cool=0, heat=1, fan=2, dry=3, auto=4. While the sensibo mode status is defined as cool=2, heat=1, fan=6(?). So I think that things break if the sensibo ever sends a mode status of 'fan' since 6 isn't defined as a valid mode either. I don't know if the mode status values should match the mode control values or if they really are different. And if they're different, what should the mode status 'auto' be? The API documentation is of no help as it doesn't define what's returned by the calls at all. So I made a guess and changed the mode status to match the mode control values. I just pushed this change out as version 2.0.4 to the production store. See if works.
-
Yes. They should be running the same version of all OS components. However, the eisy does run a Linux VM specifically to control the wireless network card in the eisy. I believe that is because that specific network card is not supported by FreeBSD.
-
Seconds. And you can't slow down data from the local hub. The local hub doesn't accept queries, it pushes the data to the plug-in at the interval defined in the hub firmware.
-
The log doesn't show anything wrong other than loudness being misspelled. I've fixed that in the code. There's no difference between starting up from a PG3x restart and restarting the plug-in manually. In both cases the plug-in is doing the same thing, in the same order. However, when PG3x is restarting, it is doing a lot to startup all the PI's and it's possible that it's dropping update data if too much gets sent at roughly the same time. I don't really know much about how UDM gets connected to IoX, at what stage in the PG3x restart does it connect, or how it gets the initial data for each node. Possibly it's querying IoX before the plug-in has fully started and then doesn't get any updates unless something changes. I was going to suggest trying to query the zone node(s) and see if that populates everything but I don't see a way to query the node from UDM.
- 1 reply
-
- 1