[RELEASE] HousePanel Dashboard for SmartThings and Hubitat

I don’t see how a mode you can never get out of makes any sense personally. My dashboard is never going to be static. There are always going to be changes to it.

It was just a bug Ryan. That mode is for people who set up the panel for others to use without giving them the ability to muck with it. It is now working to get out of that mode if you are the person setting up the panel. End users will not be able to get the the options screen using the panel - it must be accessed from a computer.

If you are referring to edits not sticking, check the permissions on your server. They must allow the web page to write to it.

sudo chmod 777 hmoptions.cfg
sudo chmod 777 customtiles.css
sudo chmod 777 skin-housepanel/customtiles.css

Should do the trick.

If you are referring to the status on things then I don’t know why. It should update once a minute. Polling can’t really be faster than that.

Weather tiles are broken for now as a result of ST’s move from using the Weather Underground.

More here;

I will update the app to use a modern method soon.

[RELEASE] Version 1.951 with multiple bug fixes and enhancements

I proceeded with merging the custom2 branch into the master and am releasing an interim version. The GUI is still a work in progress and not usable, but I’m releasing this now anyway because I have found and fixed in the process a number of very important bugs and issues and implemented a number of other enhancements that are ready to use. So here it is. Just grab the files as usual from the main repo. The main updates include:

  • kiosk mode error fix
  • added numbers when reordering tiles
  • controller tile to place anywhere
  • a bunch of other updates and bug fixes… doc coming soon

By the way…
When in edit mode with this version, a new blue dot will show up. When clicked this will open the tile customizer dialog box which is not yet done, but look and feel feedback is welcome.

1 Like

[RELEASE] HousePanel Version 1.952 with Customizer GUI

Well folks, this update is a big one… it introduces a functioning GUI that allows ANY tile in HousePanel to be fully customized by adding or removing new fields. Those fields can be text, web links, POST web service calls, or links to other fields in other tiles. The GUI is self explanatory with a built in information guide. This turns HP into a general purpose command center for just about any purpose. Here is a screen shot of the customizer GUI with the Link type selected.

In this example it shows the two custom fields that exist marked with a *. Only those fields can be deleted.

I’m off to CES this week so this will be a good time to give this a try and send feedback about your experiences.

Have fun with this folks!

2 Likes

New version is working well. Nice work. I was having some issues getting new devices to stick on my pages, but a reauth of ST seems to have solved that for me. My setup is really coming around now.

Question: I would like to deploy different versions of HP for my kids, which would just be a subset of the room pages I have on the main version. Is there a way to do that by just creating different versions of the php file, instead of separate full folders of everything?

Anyway, keep up the great work and have fun at CES!

Glad you have it working. Your idea is a good one and it could be done with some code mods. The screen setup is fully governed by the hmoptions file so each unique client would have to point to different ones. This isn’t supported today. To do this you would need separate folders. However I like the idea and could implement it in a future update using either command line or cookies. You could hack up a unique version by editing the readOptions and writeOptions functions but there may be tails somewhere else that would need to be addressed so I wouldn’t recommend it.

Another option is to make a tab for each child and then set the system into Kiosk mode with the tabs bar hidden. With the new version you can add a Controller tile to just your page to go in and out of Tab mode or to make edits. The tricky part is setting the units to their tabs. Do that first and then select Hide Tabs on each client, then on your master unit go into kiosk mode. Then back on the kids units, reload the page. Kiosk mode is a server setting that applies to all clients while Tabs mode is client specific. So this means your kids tablets can be in kiosk mode with just their tab showing while your master tablet will be also in kiosk mode but with Tabs showing. Even in Kiosk mode the controller tile will show up and function. This might meet your use case needs.

So I think I have found a bug in the GUI that is messing with my configuration. I duplicated the folder to create one of my kid’s HP layouts. I removed several tabs and it seems to have messed up one of the rooms as a result. All the items on the last tab were removed. When I opened the Options, the matrix of tabs/devices looks like this:

Looks like there is a mismatch between the tabs and number of columns allowed for the devices for those tabs. Any ideas?

FWIW, I manually added a component back to the tab that got zeroed out, then looked at the hmoptions.cfg file. The section for that tab looked like this, which was the very end of the file:

“Sophie”:[[1,0,0,1,
“”],[115,0,0,1,
“”]]}}

The tab looks like this, until I go into options (and Save) or switch to kiosk mode, then it zeros everything out again (except for the clock):

I should add that I double checked the permissions and they were okay.

Ugh… clearly a bug in here somewhere.

Let me investigate- stay tuned.

First - thanks so much for flagging this bug and documenting how it shows up so clearly. I got home today and took a look and quickly found and fixed the problem. In the process I did a few other cleanup tasks. Updated version is posted in the usual place. Three files modified are:

  • housepanel.php
  • customize.js
  • tileeditor.js

So just update these three on your rPI and reload and you’ll be good to go. Thanks again for finding this bug and documenting it.

By the way… for you “coder types” I thought I would share what the bug was. In the GetOptionsPage function I looped through the rooms. For the header row I did it properly using:

foreach ($roomoptions as $roomname => $k) {

But for the content of the table I was using older legacy code that assumed linear room numbers:

for ($k=0; $k < count($roomoptions); $k++) {

When you remove rooms that assumption breaks. The fix was replacing that line with the correct line above. To make matters worse, I didn’t notice this before because at various times depending on conditions, I was automatically renumbering and sorting the room numbers. This was all cleaned up.

1 Like

Ken - first let me say thank you for all the great work on this. I’m new to Housepanel and this is exactly what I was looking for to improve the WAF of my setup. I used your easy install script on my rPi and was up and running in a matter of minutes. I’m on Jessie and the php7 install option didn’t work but php5 did w/o issue. As I’ve been setting up my tabs I’ve run into a few things I was hoping you might be able to help me with:

  1. I’ve read that smart things deprecated “lights”. Is there a reason you are still using that type?
  2. all my dimmer switches work great using switchlevel but I have found a good number of my devices that are implemented as switches (toggle switches, outlets, etc) are very inconsistent and don’t work more than they do. I click the tile and nothing happens. Is there a log file or way I can try to determine what is happening?
  3. I tried to use the material skin for the simple design but couldn’t get to the configuration because clicking the settings button didn’t do anything. I don’t know if this is related to the issue in #2 item (nothing happens on click) so again looking for how to diagnose.

Thanks for any help you can provide.

Dj

I just never removed them. You can ignore and use switches.

Logging is in the standard browser console where other JavaScript notices are made. Logs in the groovy api are also there if you enable them in your phone. Dimmers should be added as switchlevel but either should work.

This skin needs work to be compatible with the current version. Sorry about that. I didn’t write that skin so editing it isn’t on my todo list. Maybe @vervallsweg is still around to help.

1 Like

Folks … I’m working on a version that adds usernames that have unique hmoptions files tied to them so you can deploy different behavior per tablet. Should be ready for testing tomorrow.

1 Like

[RELEASE] HousePanel V 1.960 with username feature

Several people have requested that multiple users be able to have different configurations. Well that feature is now available. You access it from the revamped re-auth page. On that page, enter your username and select a password. Then click the Done button at the bottom. This will take you to a login page where you log in as that user. Then you can alter the room configurations however you want and it applies only to that user. When done, switch back to “admin” or create another user. You can have as many users as you like. Each user shares the things from your hubs, but each user has a unique set of rooms that contain those things. The username is used to make a subset of the hmoptions file named hm_xxx.cfg where xxx is the username. I haven’t put any error checking in yet for the usernames so please take care to only use sensible names - start with letters and avoid spaces and other special characters to avoid breaking this file naming convention. The name will be case sensitive too. Here is what the new auth page looks like:

Hi all faithful HousePanel users. Today I have an apology and an important bugfix to report. The apology is somewhere along the way over the last month or so I managed to break the proper operation of switch tiles and locks. I didn’t notice because most of my lights are dimmers and those were not broken. And I don’t use my panel to operate my locks often. Anyway, long story short… what was broken was the GUI used to use the “toggle” command. I removed this in the main code but didn’t adjust the groovy ST smartapp accordingly. Tonight I fixed this so you probably should upgrade to this latest release. If all your lights are either dimmers, bulbs, or light types then you would not have seen this bug.

[EDIT - made Hubitat fixes too]
A similar fix was done on the Hubitat side and a few minor bugs fixed in the process. Anyway, please update your files with this latest release if you are experiencing funny behavior with switches or valves or locks.

NOTE This update will require you to upload the updated HousePanel.groovy code to your SmartThings account.

Thanks @jensen18 for reporting this… the bug noted above is what you were experiencing with your switches. Your report clued me into the fact that something was wrong here. After you update per above, the erroneous behavior you noticed will go away. Thanks again.

@kewashi no need to apologize, all your great work is why we are here. Thanks for looking into the switch implementation, as I wasn’t sure what to do next. I just updated the smart app based on your fix and now everything is working perfectly. Now I can work on finishing my tab config and figuring out how I am going to mount my tablets.

2 Likes