Okudagram revisited

TL;DR: Too bad :smiley:

Some time ago I was working on a Star Trek themed dashboard. I ran into some issues with Swift and ended up moving onto other projects. Recently I picked up a new Mac Studio and will be setting up a 4K display as a home automation dashboard. So here's the work on Okudagram 2.0.

This is only a few day's work and everything is currently wired up to Hubitat. The only static text is "Photodrome access", "proximity detection", and "last observations." Everything else is blinky and driven by the event web socket.

The columns on the right side are the feeds from my Unifi cameras. They highlight with different colors when there is a smart detection (person, vehicle, animal). The first column of numbers are the total detections and the right set is the count of people. The color of the numbers is based on the detection events and mostly for visual interest. Every 26 seconds one of the numbers is randomly reset to the darker background color so that they don't all end up the same color.

When the cameras detect an event, a snapshot from the camera is shown in the center with a graphic representation to the left. Eventually the graphic will have some animation overlayed that looks like some sort of scan is in progress. Unfortunately Swift does not natively support RTSP at this time. After I'm done with everything else I'll look into getting live video feeds into the dashboard.

In the column on the left are the motion zones setup in a custom app I wrote. The time is the amount of time after the motion sensors have gone inactive before the counter start counting down. This is what keeps my lights from falsely turning off when I'm still in the room. It is great to see it represented visually and in real time so that I can adjust the settings. For example, when the counter for the office maxed out at 12 the timer was set at over 12 minutes. Now that I have a mmWave sensor in the room that goes active/inactive multiple times a minute. This keeps the timer refreshed and I haven't been left sitting in the dark once. It counter quickly maxes out and there was no need for the extended delay.

The orange color is the normal active setting for the room. The blue color is a unique cooldown setting I can use to warn that the lights are about to go out. I currently only use this for special setups like theater mode for the lights in the kitchen and entry. They run on a different cycle for that mode and it is possible they might time out too quickly. It is also, well, more theatrical. :wink:

Now that I have cameras and zones working I'll be adding the individual motion sensors. These will be used to drive some visuals and report battery levels. The section below the cameras will show the home status and likely have some graphics tying in the sensor, zone, and camera data.

The right side of the screen will be dedicated to lighting. I have some ideas but need to work out the visual aspects.

I've been using one of the transporter screens from "Picard" as a model for the layout. At least this incarnation of the project draws very heavily from it. Once I get everything plumbed it should be fairly easy to create different designs (not just Trek layouts).

On a related note. The recent addition of adding Unifi cameras to Hubitat is what has driven this project. The cameras are so good I am thinking of using them as the triggers for my exterior lights instead of PIR motion sensors. The PIR sensors I have cut down on the false triggers from the neighborhood cats but there are multiple times a night they setoff the lights. The Unifi cameras have been really good at sending the appropriate trigger.

3 Likes

I refactored the project so it is easier to maintain. Each section is now its own view so that I can stack them on top of each other and move them around. It is much better than having a single view for everything.

It has also helped me to understand how to pass data around in Swift. My programming has atrophied so this is a good project to get back into it. Adding new devices is easy. Figuring out Swift is what has been slowing me down.

For a bit of visual fun I have done some animation for the "scanner." The cameras trigger on a person, animal, or vehicle so I have graphics for those three.

Not a great video. I'll make a better one as I continue adding features. I need to adjust the numbers at the bottom. They don't really mean anything but they are a bit bunched up. That's intentional but they are a bit too close for my liking.

Full screen static image:

1 Like