• Thanks for visiting the Kaleidescape Owners' Forum

    This forum is for the community of Kaleidescape owners, and others interested in learning about the system, equipment, services, and the company itself.

    It is run by a group of enthusiastic Kaleidescape owners and dealers purely as a service to this community.

    This board is not affiliated in any way with Kaleidescape, Inc.
    For official technical support, product information, or customer service, please visit www.kaleidescape.com

  • You are currently in "Guest" mode and not logged in with a registered account.

    The forum is free to use and most of the forum can be used by guests who are not registered....

    ... but we strongly encourage you to register for a full account. There is no cost to register for a full account.

    Benefits of registering for a full account:

    • Participate in the discussions! You must have a registered account to make posts on the forums. You will be able to start your own thread on a topic or question, or you can reply to other threads/discussions.
    • Use the "Conversation" feature (known as "private messaging" on other forums) to communicate directly with any of the other users here.
    • Access the Files area. The "resources" area of the forum contains many "Favorite Scene" and Script files that can dramatically increase the enjoyment of your Kaleidescape system. Go directly to great scenes in your favorite movies, created by other owners, and add automation to playback of your system with Scripts.
    • You won't see this annoying notice at the top of every screen!😊

    It's easy and free to register for the forum. Just click the "Register" button in the upper right corner of this page, and follow the instructions there.

Integration with Home Assistant now working

Thanks! Hopefully we can fix it in the not terribly distant future, but as you know the Scripts functionality is sort of unofficially supported on Strato as it is, so I appreciate your patience! :)
 
I switched my setup to now work with Intermission instead of pause. Who knows, may prefer this… Thanks for that suggestion.
 
I am aligned on the logic that light up should only occur *after* credit signal received and maybe some time passes. Additionally, Intermission should bring them up, perhaps at differ level as mentioned. For my testing I have a single Hue light tied to the test automation from Home Assistant and its coming on with every pause, movie screen, etc. Since its a low level and just a test, no bother, but when I move into the theater it will change.
 
Just wanted to jump in here and say this integration is fantastic. I just jumped into Home Assistant today as a backend for the new Yio/Unfolded Circle Remote 2 and this integration is awesome. I've got things programmed to use the playback cues for lighting.

One question, what's the best way to go about masking settings for the in-between ratios like 1.9:1, 2.00:1, 2.20:1, etc., specifically with a Lumagen in the mix utilizing its auto-aspect detection for a 2.40:1 screen?
 
I've been using HA for a while now and added Kscape this AM. I have no problems adding Kscape and no errors are reported. However, within moments (seconds) of adding it, all sensors and entities are logged with "became unavailable". I've used "my-kaleidescape.local", the IP address, and an internal DNS name to try and connect. All have the same behavior.

HA versions are below. HA is running on a VM in Proxmox if that matters.

1704139353996.png

(Good to see you here too @thrillcat , though I shouldn't be surprised!)
 
I've been using HA for a while now and added Kscape this AM. I have no problems adding Kscape and no errors are reported. However, within moments (seconds) of adding it, all sensors and entities are logged with "became unavailable". I've used "my-kaleidescape.local", the IP address, and an internal DNS name to try and connect. All have the same behavior.

HA versions are below. HA is running on a VM in Proxmox if that matters.

View attachment 4363

(Good to see you here too @thrillcat , though I shouldn't be surprised!)
I’m new to HA and just bought a $99 Home Assistant Green device. Zero issues with any communication among devices.
 
I’m new to HA and just bought a $99 Home Assistant Green device. Zero issues with any communication among devices.
However, within moments (seconds) of adding it, all sensors and entities are logged with "became unavailable".
"Did you reboot it?" <sigh>

Not sure if it was a reboot of HA or a reboot of the Strato, but it's working now. I had to reboot the Strato when I initially set it up to get the 2.35 menu to display properly. I'll chalk it up to PEBKAC on my end.
 
Been messing around more with the Home Assistant integration and had a question for @MikeKobb ... It seems to be pretty consistent with the play/pause/credits/stop etc. during movie content, but trailers seem hit or miss, sometimes playing a trailer will turn off the lights, sometimes it won't. Is there a default action that's being sent at the start/finish of any content, that perhaps the shorter clips aren't triggering both sides of the action?
 
When you play any content, regardless of whether it's a trailer or an extra or a main feature, there are two events (among many) that should always be emitted at the beginning of the playback session and when the playback session stops. If you can monitor the raw control protocol output (telnet to the player's IP address on port 10000) you would see the following (NOTE: I've removed a bunch of other control protocol events which aren't directly relevant to this discussion)

Start playing the trailer for Invitation to a Murder
01/!/000:UI_STATE:07:00:00:0:/44
01/!/000:MOVIE_MEDIA_TYPE:02:/35
01/!/000:TITLE_NAME:Invitation to a Murder:/63
01/!/000:MOVIE_LOCATION:03:/68
The UI_STATE of "07" denotes that we're in a playback state.
The MOVIE_LOCATION of "03" denotes that we're in the main content (which includes the main feature, bonus material, trailers, etc as long as you aren't in Intermission or have passed the end credit bookmark). If the playback session passes over the end credit bookmark (assuming that the content has one), then the MOVIE_LOCATION value whould change to "05"

Once playback stops, you'll get:
01/!/000:UI_STATE:02:00:00:0:/39
01/!/000:MOVIE_MEDIA_TYPE:00:/33
01/!/000:TITLE_NAME::/59
01/!/000:MOVIE_LOCATION:00:/65
UI_STATE of "02" indicates that we've returned to the Movie Collections place (so you would see a different number here if you were on the List or Covers place)
MOVIE_LOCATION of "00" indicates that we're back in the Kaleidescape interface (or in an "Unknown" location which, ideally, should never happen).

These particular events are emitted whenever you play something regardless of what type of content it is (SD, HD, UHD, bookmarked trailer, streaming trailer, etc).

I don't know what the underlying code for the Home Assistant integration is using for it's lighting cues but ideally, it should be using some combination of the values emitted by UI_STATE and MOVIE_LOCATION (e.g. UI_STATE == 7 and MOVIE_LOCATION == 3). Technically, you could trigger your lighting cues based entirely on just the MOVIE_LOCATION output (00 == not playing, 03 == playing, 04 == intermission, 05 == end credits) but it doesn't hurt to use the UI_STATE as a backstop.

Doing some tests here in my lab (with a Lutron integration rather than a Home Asssistant one), my lights dimmed, turned off, and turned on as appropriate for every trailer I played (including bookmarked and streaming).
 
Last edited:
When you play any content, regardless of whether it's a trailer or an extra or a main feature, there are two events (among many) that should always be emitted at the beginning of the playback session and when the playback session stops. If you can monitor the raw control protocol output (telnet to the player's IP address on port 10000) you would see the following (NOTE: I've removed a bunch of other control protocol events which aren't directly relevant to this discussion)

Start playing the trailer for Invitation to a Murder

The UI_STATE of "07" denotes that we're in a playback state.
The MOVIE_LOCATION of "03" denotes that we're in the main content (which includes the main feature, bonus material, trailers, etc as long as you aren't in Intermission or have passed the end credit bookmark). If the playback session passes over the end credit bookmark (assuming that the content has one), then the MOVIE_LOCATION value whould change to "05"

Once playback stops, you'll get:

UI_STATE of "02" indicates that we've returned to the Movie Collections place (so you would see a different number here if you were on the List or Covers place)
MOVIE_LOCATION of "00" indicates that we're back in the Kaleidescape interface (or in an "Unknown" location which, ideally, should never happen).

These particular events are emitted whenever you play something regardless of what type of content it is (SD, HD, UHD, bookmarked trailer, streaming trailer, etc).

I don't know what the underlying code for the Home Assistant integration is using for it's lighting cues but ideally, it should be using some combination of the values emitted by UI_STATE and MOVIE_LOCATION (e.g. UI_STATE == 7 and MOVIE_LOCATION == 3). Technically, you could trigger your lighting cues based entirely on just the MOVIE_LOCATION output (00 == not playing, 03 == playing, 04 == intermission, 05 == end credits) but it doesn't hurt to use the UI_STATE as a backstop.

Doing some tests here in my lab (with a Lutron integration rather than a Home Asssistant one), my lights dimmed, turned off, and turned on as appropriate for every trailer I played (including bookmarked and streaming).
Excellent data. Thank you.

I believe I may have inadvertently left out one detail in my post, which may or may not matter. I was watching trailers from the store interface, not the library, so the trailers would not have been downloaded already.
 
Excellent data. Thank you.

I believe I may have inadvertently left out one detail in my post, which may or may not matter. I was watching trailers from the store interface, not the library, so the trailers would not have been downloaded already.
That shouldn't matter. I also tested playing trailers from the OSD store interface (those are the "streaming trailers" I refer to above).

Here's an (abridged) sample of the control protocol output playing the streaming trailer for Asteroid City from the OSD store interface:
01/!/000:UI_STATE:03:00:00:0:/40
01/!/000:UI_STATE:07:00:00:0:/44
01/!/000:MOVIE_MEDIA_TYPE:02:/35
01/!/000:MOVIE_LOCATION:03:/68
01/!/000:TITLE_NAME:Asteroid City:/27
...
In this first block, we go from UI_STATE:03 (the control protocol considers the OSD Store to be the same as the Movie Covers place) to UI_STATE:07 (Playing a movie)
The MOVIE_LOCATION is set to "03" (Main content)

Then we stop playback:
01/!/000:UI_STATE:03:00:00:0:/40
01/!/000:TITLE_NAME::/59
01/!/000:MOVIE_LOCATION:00:/65
...
01/!/000:UI_STATE:03:01:00:0:/41
UI_STATE returns to "03" and MOVIE_LOCATION screen value goes back to "00". In the final line of the sample, the UI_STATE popup field changes to "01" to indicate that the movie detail sheet is being displayed.
 
Last edited:
That shouldn't matter. I also tested playing trailers from the OSD store interface (those are the "streaming trailers" I refer to above).

Here's an (abridged) sample of the control protocol output playing the streaming trailer for Asteroid City from the OSD store interface:

In this first block, we go from UI_STATE:03 (the control protocol considers the OSD Store to be the same as the Movie Covers place) to UI_STATE:07 (Playing a movie)
The MOVIE_LOCATION is set to "03" (Main content)

Then we stop playback:

UI_STATE returns to "03" and MOVIE_LOCATION screen value goes back to "03". In the final line of the sample, the UI_STATE popup field changes to "01" to indicate that the movie detail sheet is being displayed.
Thank you for all of this. I'll have to dig in a bit and see if I can find out what the integration is utilizing, and watch the stream as I run a few tests. Like I mentioned, it seems rock solid when playing back the main features. We rarely view trailers in the system anyway. Just curiosity more than anything.

thanks again for your time!
 
Happy to (try to) help. It would be interesting to compare the raw control protocol output from your player for a trailer playback that did turn off the lights and a trailer playback that didn't. Even if they are the same, the volume of events emitted comes thick and fast at the beginning of playback so if the hardware you're running HA on isn't fast enough, it's possible that events are getting dropped. Note, though that this is pure speculation on my part.
 
Happy to (try to) help. It would be interesting to compare the raw control protocol output from your player for a trailer playback that did turn off the lights and a trailer playback that didn't. Even if they are the same, the volume of events emitted comes thick and fast at the beginning of playback so if the hardware you're running HA on isn't fast enough, it's possible that events are getting dropped. Note, though that this is pure speculation on my part.
I am not literate enough to know exactly how to examine the code while in use. The first step will be to figure that out. :)
 
I am not literate enough to know exactly how to examine the code while in use. The first step will be to figure that out. :)
No need to examine the HA code directly. You can see the raw output of the Kaleidescape player's control protocol by simply connecting to the player on port 10000 using your favourite telnet or netcat client.

For example, if your player's IP address is 192.168.25.123, you would enter the telnet command on a command line (assuming you have telnet enabled) and would see something like this:
[~]$ telnet 192.168.25.123 10000
Trying 192.168.25.123 ...
Connected to 192.168.25.123.
Escape character is '^]'.
At that point, any time your player generates a control protocol event, it'll be output in that command line window.

 
using your favourite telnet or netcat client.

giphy.gif
 
Back
Top