I'm using the git master version of congruity. I'm running Linux Mint 18.1.
I'm using mhgui with a Harmony 350.
'Setup Watch TV button' doesn't actually program the button for the 350. I can setup the devices and click 'Save Changes' but on sync the button remains unresponsive.
However, I can get it to work by going into 'Setup Activities' and making a new activity called 'Watch TV'. On sync, the button works.
I've noticed that in my list of activities is 'WatchTV' - note the lack of a space between h and T.
I thought that might be the cause of the problem - the wrong name causing the button to remain unresponsive.
So I tried a fix, by editing mhmanager.py and changing;
activity.Name = "WatchTV" to activity.Name = "Watch TV" in def SaveWatchTVActivity
But then the 'Setup Watch TV button' page fails to load correctly, so I changed mhgui:
self.activity = mhMgr.GetActivity(self.remote.Id, "WatchTV") to self.activity = mhMgr.GetActivity(self.remote.Id, "Watch TV") in def LoadData
Anyway, this didn't help and the button remains unresponsive.
Interesting. So, mhgui shows you buttons for both "Setup Watch TV Button" and "Setup Activities?" That isn't supposed to happen.
I haven't encountered a 350 before, but I believe it is similar to a 300. Do you mind creating me a throwaway account and add your 350 to it? I'd like to see how it behaves with the official software.
In the meantime, I'll make sure that "Setup Watch TV Button" still works with 200/300.
Last edit: Scott Talbert 2017-03-31
Yep, confirmed that Setup Watch TV still works for 300. So we'll have to figure out what's different about the 350.
OK! Yes, I have both buttons.
Here's a throwaway acct:
me567@me.com
password
Thanks
OK, I think the Watch TV button functionality should be fixed now for 350. Can you try it and make sure it works with your remote? I removed the Setup Activities button as I don't think you should be able to do that for 350. :-)
Unfortunately, I wasn't able to go through all the functionality in the official software as it's stuck in a sort of wizard that won't let me exit without syncing.
Hey,
I only have the 'Setup Watch TV Button' now.
Afraid the Watch TV button is still not being programmed. Happy to help debugging however I can.
I held a phone camera up the IR LED and no commands are being sent with the Watch TV button.
I tried programming different numbers of devices to power on with the button (e.g. just TV, then TV + Amp, then TV + Amp + Satellite) but no combination worked.
I haven't got WIndows installed but I can get access to a laptop that does, or run it virtually.
Not sure how useful this is, I had a look at what I think is the XML sent to the server in the 'Setup Watch TV' case and the 'Setup Activities' case. XML attached
The only major difference I can see is that for WatchTV each 'AbstractActivityRole' is of the type 'PassThroughActivityRole'.
On the other hand, for SetupActivities each 'AbstractActivityRole' has a more defined type. e.g. for the TV it's 'DisplayActivityRole', for the Amp it's 'VolumeActivityRole' and for the satellite set top box it's 'ChannelChangingActivityRole'.
Could this make a difference?
Yes! Nice catch, that's probably it. The official software is indeed setting DisplayActivityRole, VolumeActivityRole, etc for the 350. So, it seems that the 350 is using the more complicated setup for activities, but is limited to the one WatchTV activity. Hmm. So, the 350 should probably be using the more advanced activity setup code, but be limited to only Watch TV. Let me think how to best do that.
Okay, can you please try again? Note that you'll have to delete your broken Watch TV activity first. To do that, you'll probably have to hack the code to allow you back into the Setup Activities page.
Thanks Scott! That solved it.