[RELEASE] HD+ - Android Dashboard

Color scheme looks familiar

100% - I included a little section about the UI but since the whole document was becoming too long it's in the Google Docs version that's linked above (under the backstory/why section) Hubitat Dashboard - Google Docs

Basically, my original dashboard for Wink copied a lot of the look of ActionTiles which used the same multi-color backgrounds. I prefer a darker more uniform background color but with Wink I had a full-time UI designer for icons.. without that I thought the next best thing I could do to keep the UI consistent was use white icons and change the background color. I had setup a sharptools.io account and started with that color scheme as a baseline. Eventually it'll be more customizable - likely never as flexible as a web-based tool though.

1 Like

Hm. Drawing inspiration from something or borrowing concepts is one thing. Straight up copying seems like a step too far.

PS. I'm the lead SharpTools.io dashboard developer.

8 Likes

Wait.. You're upset because I used 5 background colors and even gave you credit for having a nice UI for a web app. Literally nothing else was copied/borrowed/inspired or even close.. if you really feel like using orange for a lock background belongs to sharptools.io, I can probably find another color to use.

I hadn't even heard of sharptools.io until I had started writing this app and I can tell you I didn't even use it for more than a few minutes - just saw it mentioned in a thread and gave it a quick look. As for inspiration -- well, that would be ActionTiles.. never used that either but found several good screenshots like this one a few years ago when I was working on a dashboard for Wink:

.

I'm writing this app because I didn't find anything that I was happy with for my 2 wall-mounted tablets. Sharptools.io might have been the closest thing for me but I really prefer a native mobile app. There's several things that a web app just can't do which I wanted. I also wasn't interested in paying $3/month to a 3rd party service. I left Wink because they were going to charge $5/month and to me that seems a LOT more justified then providing a dashboard.

I was sold on the Hubitat hub because it didn't rely on any central server and all of the device control was handled locally. That seems like what sharptools.io is offering so I wasn't interested. However, that said - to each their own. I built this app in ~2 weeks - nights and weekends only. I'll never get to the point where sharptools.io or any of the web apps are in terms of customization.. I just don't have the time and I'm not getting paid for any of this. It's just something I'm really interested in and if there's others who might find it useful I'm happy to share.

26 Likes

Hi, im getting this error: Received local request for App 445 that does not exist, path: /devices from unknown

Are you able to hit this URL once you replace the IP with your hub's IP?
http://<IP OF HUB>/installedapp/configure/445/mainPage

If that works, can you look for the link on this page "Get All Devices" and click it.. does that return a text document of your devices?

It sounds like maybe the Maker API App ID isn't correct - or maybe you don't have this option enabled?
image

I can see my devices on this link: http://192.168.1.100/apps/api/455/devices?access_token=xxxxxxxx
But this one: http://192.168.1.100/installedapp/configure/445/mainPage send me to an "error 500"

thanks

1 Like

appID 455 != appID 445

@aaiyar @jpage4500 thanks! im sorry i missed it. :frowning:

1 Like

version 1.0.88 (available in google play beta)

  • add initial support for garage doors.. specifically the Chamberlain myQ which was quite an adventure getting setup.. I'm using IFTTT until I get a real tilt sensor and I haven't really tested this much yet (not to mention with any other garage door devices)
3 Likes

just a quick note.. I was working through doing some low level refactoring to be able to handle some inconsistent responses from the Maker API. I wanted a way to be able to open a .json file in the app so I could test out how the app displays various devices that I don't personally have. If you want to contribute to this please let me know here and I can work to get your devices supported -- Maker API - example responses for lots of various device types

I did also start work on a few different areas including themes and android TV.. I was able to get both implemented and they're in version 1.0.108 in the Play Store (beta channel).

I also didn't want to keep posting new versions in this thread.. at least for less important changes. I'll try to maintain the google doc though with version info if anyone's interested: Hubitat Dashboard - Google Docs (this link should take you to the Versions section but it's at the bottom if not)

4 Likes

2 quick updates:

  1. I'm starting to test a new version that allows the app to work outside of your local network. It should be available in the latest Beta update. It uses the 'cloud API key' which is generated if you check the 'remote/cloud' box in MakerAPI settings

    • The login process will fetch this cloud API key so you just have to logout and back in again to get it.
    • By default all traffic is still 100% local - however, if the cloud API key is set, a new setting will show up. Enable it and devices will be fetched from cloud.hubitat.com. NOTE that the websocket won't work from outside of your home network however, which means no realtime updates. I'm still thinking about the best way to deal with this since there's no 3rd party server I'm using to handle device updates.. for now you might just have to do manual 'pull-to-refresh'. So, not as useful but at least the app can work from anywhere!
  2. I'm submitting the app to the Amazon App Store! Makes sense given that I'm developing and using this on Fire Tablets in my house. The submission is in progress but if you want to be a tester Amazon has a test program - just send me your email address.

2 Likes

You need to add Smart Sense Multi Sensor - default as a contact (door).

{"id":"432","name":"SmartSense Multi Sensor V4","label":"Garage Door","attributes":[{"name":"acceleration","currentValue":"inactive","dataType":"ENUM","values":["inactive","active"]},{"name":"battery","currentValue":50,"dataType":"NUMBER"},{"name":"contact","currentValue":"closed","dataType":"ENUM","values":["closed","open"]},{"name":"temperature","currentValue":83.83,"dataType":"NUMBER"},{"name":"threeAxis","currentValue":{"x":12,"y":-43,"z":-1043},"dataType":"VECTOR3"}],"capabilities":["TemperatureMeasurement",{"attributes":[{"name":"temperature","dataType":null}]},"Battery",{"attributes":[{"name":"battery","dataType":null}]},"ContactSensor",{"attributes":[{"name":"contact","dataType":null}]},"Configuration","ThreeAxis",{"attributes":[{"name":"threeAxis","dataType":null}]},"AccelerationSensor",{"attributes":[{"name":"acceleration","dataType":null}]},"Refresh","Sensor"],"commands":["configure","refresh"]}

Never mind- it's in the beta version

Never mind- it's in the beta version

no worries.. i just pushed the beta version out to production today.

Today, I'm looking for the attribute "GarageDoorControl" to default to the garage door type. I could also look for the text "Garage Door" in the label which was something I was going to do earlier but realized I have 2 devices labeled "Garage Door".. 1 is a door/contact sensor and the other is the actual garage door.

You should be able to change the device to the garage door type so hopefully that works.

I've still got a million ideas/things I want to add.. right now I'm working on a nice dimmer control for dimmable lights since that's probably a common device out there (and I have one to test with)

2 Likes

version 1.0.124 (beta)

  • adds dimmer control for dimmable lights on the main screen. I added a little arrow & text on this image to show how it works. Basically, clicking will toggle on/off and swiping left/right will change the brightness. It might be a tad sensitive for a wall mounted tablet but try it out and let me know what you think. I can always show a large popup window too which would be easier to control at the possible expense of showing it when you click the light (vs toggle on/off).
  • added a new test mode to evaluate the app without actually connecting to a Hub. Enter "0.0.0.0" for the IP address. I needed this for Amazon's app submission process since they require a way to test the app before approving it for their appstore.
  • lots of little UI improvements
6 Likes

ive got a 7" gps running kitkat, only thing i could find to load the dashbord links was firefox. ill definitely give this a try later.

thanks

I sideloaded the latest beta Android app to a Fire TV. I don't know if there is a difference between navigation in Android TV and Fire TV but on the Fire TV, inputting the IP address using the remote was impossible. I could get 10 dot and the next number but could not get the second dot. I used the Fire TV app to try adding the address but had the same issue. I finally just entered the number is a text file and copied and pasted it into the Fire TV app to get the address added in the Hubitat Dasboard app.
Once I had the IP and the Maker API number in the app, I had no way to manuver to the Login button. I knew I should have gotten a 70-inch touch screen TV ;-). I have not tried this on my Android TV and will need to drag that out and connect it. I will test and report when I do. Looks and works great on my Chromebook.

I remember using a VPN which was more mobile orientated than Fire TV, and had to also install two apps, one for the remote to act as a mouse, and also another to keep the screen as landscape. I think those two may help, but dammed if I can remember the name of them.

I think the app is fine with orientation. This is about the Leanback implementation not complete or not fully functional on Android TV or at least Fire TV. When I first tried the app on the Fire TV a few weeks ago I couldn't get as far as I did today. @jpage4500 did implement Android TV in version 1.0.108 so just reporting.

1 Like

Sorry about that! I did test using a Fire TV but since then I changed the server IP field to be numbers only (ironically to make it easier to enter an IP address by only showing the number keypad). That must have broken something.

I do still have some items I'd like to improve with the FireTV/AndroidTV version.. notably making the current selected device easier to spot.

I'm working on a bunch of changes right now including RGB (color dimmer) support and a recent history screen that shows the last X updates received & commands sent.. I'll make sure I test out Android TV login though

1 Like