[RELEASE] HousePanel Dashboard for SmartThings and Hubitat

[RELEASE] HousePanel V 1.996 with new Rule Engine feature

If anyone grabbed V1.995, please update to V1.996. This fixes a multihub bug in housepanel-push.

This version also implements a simple “rule engine” in that any motion detector or contact added to another tile using the customize feature will trigger that tile if it is a switch. Motion turns the switch on but inactive doesn’t turn if off. Open and close turn it on and off. Also, second switches added to a tile turn it on and off too. The trigger items can be hidden using the editor so you get a pure rule feature. By default they are shown after you add them in the cusomizer.

If you haven’t played with the tile customizer yet, this new rule engine feature is a good reason to try it out. Using this I added my office motion sensor to my office light and now it turns on instantly when I walk into the room. Because this uses the hub push feature it is quite fast. Faster than cloud based rules but slower than a local lighting rule.

The framework is there for more complex rules, so expect that to come in the future. For now only lighting rules are supported triggered by motion, contact, or other switches.

As a reminder, here is a screen shot of the tile customizer dialog box. In this box you see where I added both my door and a motion sensor to light up my office.

Perfect thank you it worked. Now I will try to start back from scratch hopefully I get it to work using the new script you have below

I have followed the instruction to install the script and I can get to the first page where I input the client id and client secret but I can’t get passed that page even after hitting done authorizing. I’m not sure what I’m doing wrong, anyone knows what I’m doing wrong?

Also when i click on authorizing hub, I get to the authentication page where I can select the devices I want once I hit authorize I just get a blank page

Refresh your browser

I did refresh my browser but still get a blank page and if I use the http://192.168.1.50/housepanel/housepanel.php then I get back to the first authorizing page

First - thanks for being so patient in trying to get HousePanel installed and running. Trust me it is worth it so hang in there. Let me try to help by walking you through some of the troubleshooting that has worked for others. If you have tried any of these just ignore them.

  • First, confirm that your rPI has PHP installed and can open a standard php webpage. The file phpinfo.php is included with the install so open in any browser the file phpinfo.php referenced to your main HP install folder. For you that would be at: http://192.168.1.50/housepanel/phpinfo.php

  • look at the results returned by the above and search for a section on cURL. If that is not there then you need to install cURL. The installer should have done this for you but it is good to double check.

  • on your rPI confirm that all files in the housepanel folder are owned by the www-data user and the permisions are all set to 777. If not, enter:
    cd /var/www/html
    sudo chown -R www-data:www-data housepanel
    sudo chmod -r 777 housepanel

  • next, log into the ST IDE at the usual graph.api.smartthings.com or account.smartthings.com URL. After logging in, navigate over to the “My SmartApps” tab and confirm that you have HousePanel installed. Double check your ClientID and ClientSecret values. The best way to get these right is to copy and paste them into the HousePanel auth page.

  • Make sure you save and “publish for me” the HousePanel application here.

  • Next go to your smart phone and make sure you have an instance of the HousePanel app installed there. Only here can you set the prefix option, webcore option, and debug logging level option - so it is a good idea to do this before trying to authorize from the main HousePanel web app page. You can also select your devices here and they will be selected by default later in the HousePanel web app if you do. Set the debug logging level to “Info” or “Trace”.

  • Save your selections and open a Live Logging window. place this somewhere you can see it. Then open a separate window on your computer and launch your browser and load HousePanel at the main address. For you this will be http://192.168.1.50/housepanel/housepanel.php

  • While in this window go to the auth page and enter your credentials. You should also enter a username and password just to be sure. Remember the password. Make sure you enter valid port numbers on this screen. You can leave the hub name and hub ID both blank and HousePanel will populate them automatically.

  • After you enter “Authorize Hub #0” the code should redirect you to the auth flow on the SmartThings servers. There you select your hub and devices. If you did the steps above the previously selected devices will be pre selected. Click Authorize.

  • The above should return you to the Auth page and report back to you how many devices it authorized.

  • Look at the Live Logging window. Click on HousePanel in the row marked with All in blue. This will filter out all logging except the messages from HousePanel. You should see some log entries indicating the items authorized. Let me know if this looks normal or not.

  • After you return to the main Auth page you should see a report of how many things were authorized. If it returns 0 or an error message, please note that in a reply here.

  • One you have this, make sure the parameters up top are correct and then select “Done Authorizing”. This should return you to the main display at which time you will be able to use your dashboard. You may need to refresh your browser screen for things to show up.

  • If the page is still blank, try clicking on Options in the lower left corner and then selecting a few things in the default first room. Then click Save and you will be returned back to the main display. This should show you the things you selected. Repeat this procedure to lay out your dashboard.

Sorry about the long winded reply but these are the basic steps to getting things working and troubleshooting.

[RELEASE] HousePanel V1.997

This version contains tweaks to the customizer rule engine that invokes the rule only from the last client because only one client needs to do the rule.

I also updated the documentation screen shots to the latest version.

As usual this version also includes a number of minor bug fixes

The code stability is finally settling down and I’m happy with the performance of the main features and the relatively new hub push feature. It still takes effort to install if you are a newbie but its totally worth it. Hang in there and ask for help.

I will be releasing V2.0 later this week and it will be the last release for some time because I’m heading into a few weeks of marathon travel for work, so if you want some new feature or have some bug to squash please let me know asap.

Thanks again for your efforts. Things are coming along nicely with my setup. Just a couple of other minor things I have noticed while customizing things with the GUI:

  • Most attributes will apply to all tiles if I select all tiles or all tiles of a certain type, however it does not seem to work for the background colors on the “Head Title” part of the tile. I was doing some transparency on those and had to do them individually.
  • My pages have tiles in certain locations, but if I remove a tile, it moves several of my tiles to new locations – sometimes completely off the page.
    Minor issues again, but I thought you should be aware.

Next step is to read up on how to create tiles that stream my Arlo cameras. After that, I want to try my hand at a custom tile that will give the charge status of my Tesla, pulled from the web app. Think that’s possible?

Oh yeah. One other thing…

I switched to the modern skin and the bottom gear reverted back to the old buttons and the options seem to be the older version. Not sure if I did something wrong or not.

Oh not a problem at all, thank you for the a great app you have create and for being patient with me while I try to get it working.

  1. This PHP is working correctly
  2. cURL is also showing up under module, so I’m assuming it is working?
  3. I’m not sure how to verify if all the files are owned by the www-data user, so I did proceed with the command lines you provided the last sudo chmod -r 777 housepanel is returning this error chmod: cannot access ‘777’: No such file or directory
  4. This step was done and I made sure to copy the clientID and Client secret , saved and publised the Housepanel smartapp
  5. I do have the instance of the HP app on ST mobile app, I have selected the devices I wanted and selected Trace on the logging level. Now quick question should the port remain 19324? . Also for some reason the IP address keeps reverting back to 192.168.11.20 which is not the IP for my Rpi
  6. Once I’m http://192.168.1.50/housepanel/housepanel.php what should I have for “websocket port” and “listen to port” ?
  7. Once I enter “Authorize Hub #0” all the devices selected previously in ST app are already populated after i click Authorize that’s when I get a blanc page, refreshing doesn’t seem to help. Only thing I can do it just open again http://192.168.1.50/housepanel/housepanel.php which then just gets me back to the inital page to Authorize a hub. if I tried Done Authorizing nothing happens
  8. The Live Log seems normal, it seems to show registring the type of devices I have selected

I’m not sure if this helps you with troubleshooting, or let me know if there is anything I can screenshot and send.

Man. You are really close. When ST returns from the page where you picked devices it should send housepanel back to the auth page and report how many. This is failing for some reason. Only thing I can think of is your PHP sessions are not being set properly or cookies aren’t working.

When you get the blank page back, turn on the debug panel (F12 in Chrome) and snap that screen.

Okay I got it finally working. I just removed and started from scratch again. I’m not sure if that was my issue or if it is even related but I turned off ipv6 from my router as I was having an issue with that for my Assistant relay maybe ipv6 was my issue?

A few question if you can help with it. How do I create/add more rooms than the default ones?

And how do I get my arlo cams to feed the recorded clips or snapshots?

Glad you got it going!!! Yipeee.

Rooms are added by selecting the Edit option using the radio button in the bottom and by then clicking on Add in the upper right corner. You can then add tiles to it on the Options page or using Edit drag and drop from the catalog shown on the right.

Arlo cameras need an external script to grab the video using Python and save it in a file named video1.mpg up through 4. A sample is included or do a google search as there are several good user libraries out there for doing this. You will then need to put that script in a crontab to run every few minutes. One catch is the script will log you out of the app so don’t run it too often in the cron settings.

Got it thank I was able to find how to add rooms with your direction.

Okay thanks I will search on google see what i can find.
As far as adding media tile for like a ip cam using url or even for weather forecast is it something that is possible?

I have been looking to get the modern skin but I don’t see where to change that any pointers please?

Yes media tiles and forecast are all possible using the Frame tile. Take a look at the forecast.html and accuweather.html files provided.

The skin is changed on the Options page. Click Options in the lower left corner and you will see skin listed on the top of the page. Change skin-housepanel to skin-modern and select Save at the bottom.

Macro Rules are now supported in the Tile Customizer. This is done with a new custom field type called “RULE” selected in the drop down box. Pick a unique field name and then in the text field enter any number of macros separated by a comma. A macro is a tile number followed by an equal sign followed by a field name, another equal sign, and then a command such as on or off. For example:

38=switch=on, 12=switch=on, 17=level=30, 9=switch=off

If you enter this string above as a macro rule, it will turn on switches 38 and 12, set the level of switch 17, and turn off switch 9 all with a single click. You can then style this macro rule custom field with the Tile Editor to have whatever icon you want.

Here is a screen shot of my test case that turns on tiles 38 and 9 with a single click. I put this into a custom tile that also captures the weather feels like temperature using the LINK function. This showcases the massive flexibility of HousePanel.

The only catch is using this feature requires you to know your tile numbers. Eventually I will make a nice GUI for this, but for now power users can use this by finding their tile numbers on the Show Info page.

I still consider this a beta feature so feedback appreciated as always.

Thank you I will take a look at that.

one last question is it possible to remove whats circled on the screen shot?

Yes - use the Tile Editor by clicking on Edit radio button and then the green dot of the tile to edit. In the editor select the field by clicking on it or using the drop down box. Then select Hide on the left side. Repeat for each field you want to hide.

Many other customizations are available on this same page. Enjoy.

1 Like

You can also edit the housepanel.css file in your skin folder to hide these items for all tiles by adding text as follows:

div.overlay.setTransitionTime {
display: none;
}
div.overlay.alert {
display: none;
}
div.overlay.colorloopOn, div.overlay.colorloopOff {
display: none;
}

… and so on

1 Like

[RELEASE] HousePanel 2.0

This version fine tunes the new macro feature. This is a powerful feature. I hope people enjoy it.