Jump to content

Newer to the ISY, looking for some general guidance on trying to force settings on my media devices


ederadan

Recommended Posts

I'm newer to using the ISY 994 and really only doing basic stuff right now. I'll be having some guests for a couple weeks which will probably have issues using my media center and I'm trying to solve this by using the ISY.

 

I have the ISY994 hooked up to PolyGlot running the HarmonyHub integration. I'm toying with the idea of using the ISY to force the correct tv settings, so if "Watch TV" activity is "True" from Harmony then if the "TV" gets changed to "HDMI 1" while "Watch TV" is still on "True" then a  ISY program would see the state state change from "TV" and set it back to "TV Input".

One route I'm currently testing is using two programs to force these settings:

 

1. Check Status

If

"Watch TV" Status is True

 

Then 

Run Program "Enforce TV"

 

2. Enforce TV

If

"Watch TV" Status is True (To account for turning it off)

Then

<logic for making sure media center devices are in the right state>

Wait 10 seconds

Run Program "Enforce TV"

 

If anyone has any general suggestions on forcing the media center states using the HarmonyHub integration through PolyGlot that would be awesome, but this part might be more experimentation than anything else.

 

I'm also trying to find out how the ISY handles recursive programs. If I have a program that calls itself does the ISY terminate the first program or will it create child programs until it runs out of memory?

Thank you!

Link to comment

Hi and welcome to the UDI Forums!

I think you're on the right track. The plugin (which is great) aside, media device modes and states can be very specific to the equipment. Experimenting will help get you to the right place.

For recursion: The ISY is a very simple and fast state machine. It runs one instance of a program. You can call a program from itself, and it will restart. You need to be careful in that the ISY is very unforgiving about "tight loops". If your program calls itself there is the opportunity it will use all of its processor as the program re runs itself over and over again. You'll want to put a wait 10 seconds statement when you first write the program because its tough to stop tight looped programs (right click on the program and pick Stop). Start simple.

Also, for status, the program will run when the state changes. So Watch TV will only run when a change in state from true to false happens

Paul

Link to comment

Archived

This topic is now archived and is closed to further replies.


  • Recently Browsing

    • No registered users viewing this page.
  • Who's Online (See full list)

  • Forum Statistics

    • Total Topics
      36.9k
    • Total Posts
      370.2k
×
×
  • Create New...