brians Posted December 28, 2022 Posted December 28, 2022 (edited) Played around a bit and ended up with this. Still need to add a few more rooms. Spent a while in the alarm page. I use EnvisaLink-DSC Node Server. I can see status and can easily bypass zones arm and disarm. It is a bit time consuming editing and would be nice to remember last position in tree when in edit mode and adding new devices, and have tree reset when exit edit mode maybe? Also a color picker also with standard colors in a pulldown or something instead of hex code - which would be nice so I can easily change some of those icons. Edited December 28, 2022 by brians 1
brians Posted December 28, 2022 Author Posted December 28, 2022 Regarding colors, found this site. https://www.w3schools.com/colors/colors_picker.asp Gonna make some more button changes now
brians Posted December 28, 2022 Author Posted December 28, 2022 (edited) @JaviI see that I can display a node on a folder, and have changed my Alarm folder to show status of alarm now by displaying its node. Is there a way to make a folder show a different color, status, icon etc. if ANY of the devices within the folder are on? What I want to do is be able to glance at main screen and see if any of the Kitchen lights, Family Room etc. are on within that folder just by its folder icon - seems like I can only display one node, and would be nice to not make it a button when displaying the node in a folder (eg. not be able to turn on/off a light by pressing folder) - thinking maybe a favorite type "folder with status" and ability to add multiple display nodes using logical OR, and add mapped values to change icon...I know there are several ways to do this, some more complex than the other so you would probably figure out the best way. Edited December 28, 2022 by brians
Javi Posted December 28, 2022 Posted December 28, 2022 44 minutes ago, brians said: @JaviI see that I can display a node on a folder, and have changed my Alarm folder to show status of alarm now by displaying its node. Is there a way to make a folder show a different color, status, icon etc. if ANY of the devices within the folder are on? What I want to do is be able to glance at main screen and see if any of the Kitchen lights, Family Room etc. are on within that folder just by its folder icon - seems like I can only display one node, and would be nice to not make it a button when displaying the node in a folder (eg. not be able to turn on/off a light by pressing folder) - thinking maybe a favorite type "folder with status" and ability to add multiple display nodes using logical OR, and add mapped values to change icon...I know there are several ways to do this, some more complex than the other so you would probably figure out the best way. A "Status only Folder" would be a good addition and it is on my list. However it does not solve the root issue of folder status. In the past I have recommended using a scene as the Folder Display node and having all lights in the folder as part of a scene. In this example all devices are responders so the scene will not trigger other lights when a physical switch is touched at the same time allowing UD Mobile to toggle on/off. In my observations of the Status folder, it was usually used much as you describe, to see if anything is ON. So having the ability to toggle the scene OFF makes it easy to turn everything off without opening the folder. The app tries to avoid calculations/groupings which can be done by IoX. This saves us time in mobile development and saves time/processing resources (database insertion, value calculations) in UD Mobile when the app first connects to ISY. With that said, it is currently possible to have IoX do these calculations/groupings to achieve what you desire without the modifications to UD Mobile. (A) A folder with a scene as the display node will have a toggle. (B) A folder with a variable as the display node will not have a toggle. Finally you can use the custom mappings to change colors/value-names for both scenes and variables. With regards to option (B) a variable can be used to track status of devices in ISY using a program to make the calculation, variables do not have a toggle option in UD Mobile so only variable status will be shown. IoX program would be if any light is on set variable is 1 else set variable is 0. Then map the value 1 to "On" and value 0 to "Off". Geek out: As an example of time/processing resources: Scenes do not have a status, so every time the app receives a status value it needs to query the scene relationship table, then calculate a new percentage of all related scenes, then insert the new scene value. On my main system scene calculations doubled the time it takes for the app to display all initial status values on cold start. This is mostly due to the SQL queue having many insertions queued. So scene relationship queries must wait in queue, thus delaying the next value insertion. Last time I ran a test with/without scene calculations without was ~2.5 seconds and with was ~5 seconds until the last value was displayed.
brians Posted December 28, 2022 Author Posted December 28, 2022 4 minutes ago, Javi said: A "Status only Folder" would be a good addition and it is on my list. However it does not solve the root issue of folder status. In the past I have recommended using a scene as the Folder Display node and having all lights in the folder as part of a scene. In this example all devices are responders so the scene will not trigger other lights when a physical switch is touched at the same time allowing UD Mobile to toggle on/off. In my observations of the Status folder, it was usually used much as you describe, to see if anything is ON. So having the ability to toggle the scene OFF makes it easy to turn everything off without opening the folder. The app tries to avoid calculations/groupings which can be done by IoX. This saves us time in mobile development and saves time/processing resources (database insertion, value calculations) in UD Mobile when the app first connects to ISY. With that said, it is currently possible to have IoX do these calculations/groupings to achieve what you desire without the modifications to UD Mobile. (A) A folder with a scene as the display node will have a toggle. (B) A folder with a variable as the display node will not have a toggle. Finally you can use the custom mappings to change colors/value-names for both scenes and variables. With regards to option (B) a variable can be used to track status of devices in ISY using a program to make the calculation, variables do not have a toggle option in UD Mobile so only variable status will be shown. IoX program would be if any light is on set variable is 1 else set variable is 0. Then map the value 1 to "On" and value 0 to "Off". Geek out: As an example of time/processing resources: Scenes do not have a status, so every time the app receives a status value it needs to query the scene relationship table, then calculate a new percentage of all related scenes, then insert the new scene value. On my main system scene calculations doubled the time it takes for the app to display all initial status values on cold start. This is mostly due to the SQL queue having many insertions queued. So scene relationship queries must wait in queue, thus delaying the next value insertion. Last time I ran a test with/without scene calculations without was ~2.5 seconds and with was ~5 seconds until the last value was displayed. Thanks, that makes sense and I understand now how UD Mobile would have to spend too much time checking all the devices in folder... I never thought to do this in IoX so I will try it using the variable method since I don't want to accidentally press the wrong spot on icon and shut all the lights off - maybe a combination of variable set based on scene. My issue is this is sorta complicated to do on my iPhone and using a PC would be much quicker... maybe one day there will be a PC/Mac app that just organizes favorites read/write from a backup - could call it something like UD Studio. I realize can run Android/iOS versions also.
Javi Posted December 28, 2022 Posted December 28, 2022 2 minutes ago, brians said: Thanks, that makes sense and I understand now how UD Mobile would have to spend too much time checking all the devices in folder... I never thought to do this in IoX so I will try it using the variable method since I don't want to accidentally press the wrong spot on icon and shut all the lights off - maybe a combination of variable set based on scene. My issue is this is sorta complicated to do on my iPhone and using a PC would be much quicker... maybe one day there will be a PC/Mac app that just organizes favorites read/write from a backup - could call it something like UD Studio. I realize can run Android/iOS versions also. Hopefully soon, I'll have to look into why M1 is not exporting changed values...based on your post in the other thread.
asbril Posted December 28, 2022 Posted December 28, 2022 (edited) 52 minutes ago, Javi said: In the past I have recommended using a scene as the Folder Display node and having all lights in the folder as part of a scene. I use this as I find it easy to see if any devices are ON in one of the rooms (scenes). I have the folder set as Default instead of Folder. The issue that I have is that the "scene members" appear in a different order than the order I have these in the Administrative Console and I have not found a way to change the order in UD Mobile. Edited December 28, 2022 by asbril
brians Posted December 28, 2022 Author Posted December 28, 2022 (edited) Ok I used a program as follows for all my devices in Family Room and set integer variable either 1 for on, 0 for off. Family Room Lights - [ID 0097][Parent 007E] If 'Family Room / Family Room Ceiling' Status is not Off Or 'Family Room / Family Room Lamp' Status is not Off Or 'Family Room / Family Room Tree' Status is On Or 'Family Room / Bird Lamp' Status is On Then $Family_Room_Lights = 1 Else $Family_Room_Lights = 0 I then adjusted the folder to display and it works, but it always tries to display the value and in this screenshot I have it displaying the value which currently is 1. Is there any way have it not display the 1 or 0? Edited December 28, 2022 by brians
Javi Posted December 28, 2022 Posted December 28, 2022 31 minutes ago, asbril said: I use this as I find it easy to see if any devices are ON in one of the rooms (scenes). I have the folder set as Default instead of Folder. The issue that I have is that the "scene members" appear in a different order than the order I have these in the Administrative Console and I have not found a way to change the order in UD Mobile. Fixed scene order in next release for iOS, was already sorted in Android. 6 minutes ago, brians said: Ok I used a program as follows for all my devices in Family Room and set integer variable either 1 for on, 0 for off. Family Room Lights - [ID 0097][Parent 007E] If 'Family Room / Family Room Ceiling' Status is not Off Or 'Family Room / Family Room Lamp' Status is not Off Or 'Family Room / Family Room Tree' Status is On Or 'Family Room / Bird Lamp' Status is On Then $Family_Room_Lights = 1 Else $Family_Room_Lights = 0 I then adjusted the folder to display and it works, but it always tries to display the value and in this screenshot I have it displaying the value which currently is 1. In the mapped value "Set Formatted Value" change to the word "On" or if you don't want it to display a value set it to an empty space " ". 😊
asbril Posted December 28, 2022 Posted December 28, 2022 1 minute ago, Javi said: Fixed scene order in next release for iOS, was already sorted in Android. Thanks Javi
brians Posted December 28, 2022 Author Posted December 28, 2022 (edited) 7 minutes ago, Javi said: Fixed scene order in next release for iOS, was already sorted in Android. In the mapped value "Set Formatted Value" change to the word "On" or if you don't want it to display a value set it to an empty space " ". 😊 OH haha I missed that. However, it doesn't seem to read the variable status when I relaunch UD mobile. only updates when UD Mobile is running and changes made on ISY. I also tried a state variable and did not make a difference. Edited December 28, 2022 by brians
Javi Posted December 28, 2022 Posted December 28, 2022 1 minute ago, brians said: OH haha I missed that. However, it doesn't seem to read the variable status when I relaunch UD mobile. only updates when UD Mobile is running and changes made on ISY. Maybe a state variable would work better? Variable values are not requested at startup by default. See Settings-Tab > Systems > Your System > Program and variable settings. Also I use android and just noticed iOS favorites variables have a bug. Let me know if does not work and I'll get it fixed in the next release.
brians Posted December 28, 2022 Author Posted December 28, 2022 1 minute ago, Javi said: Variable values are not requested at startup by default. See Settings-Tab > Systems > Your System > Program and variable settings. Also I use android and just noticed iOS favorites variables have a bug. Let me know if does not work and I'll get it fixed in the next release. Ok, maybe I will go read the manual LOL... seems like you thought of everything
Javi Posted December 28, 2022 Posted December 28, 2022 Confirmed the empty space is not saved in iOS, will try to fix in the next version
Javi Posted December 29, 2022 Posted December 29, 2022 Fixed in 1.0.6 Apple shows this as live in production, not yet in beta 🤷♂️
brians Posted December 29, 2022 Author Posted December 29, 2022 Got it mostly working fine now. The variable/program method works good on IoX for changing colors of folder icons. Only thing I have left to do is make a toggle for my door lock.
brians Posted January 8, 2023 Author Posted January 8, 2023 (edited) @JaviI had an idea that I could just use the program status true or false to determine the status and color of a folder icon for on/off instead of having a variable eg. 1 and 0 for on/off. However, when I set the status of a folder to display a program node, the top half does not operate as a folder and clicking on it runs the program instead, clicking bottom half opens the folder. Is this expected operation? Seems like a bug to me. Edited January 8, 2023 by brians
Javi Posted January 9, 2023 Posted January 9, 2023 16 hours ago, brians said: @JaviI had an idea that I could just use the program status true or false to determine the status and color of a folder icon for on/off instead of having a variable eg. 1 and 0 for on/off. However, when I set the status of a folder to display a program node, the top half does not operate as a folder and clicking on it runs the program instead, clicking bottom half opens the folder. Is this expected operation? Seems like a bug to me. That is the default as folders display status inherit node toggle values. This is the same as setting a scene as the folder display node. Variables do not have a toggle value. Maybe we can add a non-toggle folder in the future, but it may be some time before I get to this.
dbwarner5 Posted January 9, 2023 Posted January 9, 2023 (edited) @brians see this post. I was able to somehow "trick" UD mobile into being a toggle switch. Read down a few posts to my final solution that is working perfectly Edited January 9, 2023 by dbwarner5
brians Posted January 9, 2023 Author Posted January 9, 2023 3 hours ago, dbwarner5 said: @brians see this post. I was able to somehow "trick" UD mobile into being a toggle switch. Read down a few posts to my final solution that is working perfectly In my case I just want the folder to display status of a program (Idle true, Idle false etc.) and I would use those values to change the color indicating a light is on/off in that folder/room, instead of the program setting a variable. The behavior of a folder when changing the display node to a program is not desirable in this case because selecting the icon does not take me into the folder. Not an issue since I currently use variables, was just thinking it as a shortcut without having to make a variable. 1
Recommended Posts