Noob questions on setting up (Yamaha and DirecTV receivers)

I’ve jumped into HR designer and run into a problem, and suspect this is one of many to come as this is a really powerful tool. I’m currently trying to setup my Yamaha AVR and Directv receivers.

I’ve watched many videos (Thanks Brian, John and Yorkshire!) took a look at a hrp someone posted in the google discussion but when trying to create the same myself but found adding the device didn’t result in the actions I expected. For example:
Under devices, I selected add, click on yamaha and did a scan. It found the AVR at the correct IP. Under the Yamaha device there are two “devices” Room and Room1 not a list of AVR commands as was seen in the example hrp. I noticed the device type in properties is YamahaMusicCast and not YamahaReceiver and wasn’t able to change this. Both Room and Room1 devices Tile and Detail Templates are MediaPlayer{Tile/Details}.xaml

I explored with the MusicCast Device and found each “device” listed under the yamaha receiver appears to be for each zone and was able to get much of what I needed. So, is/was the YamahaReceiver device type an older way which was replaced with MusicCast device? I should be using the MusicCast device type for these zones? (I think the answer is yes…)

Look at Directv I get basic controls, directional, select, channel up, numbers, etc. But the MediaControl.Info doesn’t provide details I was expecting. I can also bind to TVChannel but those appear to return nothing. If I want to access the DirecTV SHEF API for details on the current program do I need to create a plugin to access their API? If so is there a sample available for doing so?

Yes, YamahaReceiver uses their old API. The MusicCast device uses the new APIs. It’s just like their official apps. “AV Controller” is their old app, “MusicCast Controller” is Yamaha’s new app. Their old API service used XML & the new one uses JSON.

No, you do not need a custom plugin. Channel/Program information is available through the TvChannel capability. The TVDetails.xaml file displays channel information from that capability. When you added DirecTV to Home Remote I believe it should have automatically assigned it that XAML file.

Thanks Bill!
That’s always one of the difficult things about examples and samples is the sensitivity to time. I was feeling comfortable with the behavior and glad to remove that question from my list if I run into other problems.

You are correct the TVChannel device was added to the directv receiver but my first pass at testing that produced nothing so I thought I better ask before digging deeper. I’ll try again with the confirmation that’s the correct place to look.

So I can confirm the TVChannel.number, name and title all work as expected. I’m not sure why they didn’t the first time, but guess it was a manual entry to the device name with a case mixup.

Is there anything that will echo back this info which is from was a getTuned query from the directv api :
“callsign”: “NBC”,
“duration”: 2524,
“episodeTitle”: “Tender Age”,
“expiration”: “202111122300”,
“expiryDate”: “2021-11-12T23:00:29Z”,
“expiryTime”: 1636776029,
“isOffAir”: false,
“isPartial”: false,
“isPclocked”: 3,
“isPpv”: false,
“isRecording”: false,
“isViewed”: true,
“isVod”: true,
“keepUntilFull”: true,
“major”: 1004,
“materialId”: “B005946770L3”,
“minor”: 65535,
“offset”: 1194,
“programId”: “445108131”,
“rating”: “PG-13”,
“startTime”: 1618069762,
“stationId”: 8078618,
“status”: {
“code”: 200,
“commandResult”: 0,
“msg”: “OK.”,
“query”: “/tv/getTuned”
“title”: “Chicago P.D.”,
“uniqueId”: “131979”

Currently there is no way to get that info back. What I can do though is add support for custom Attributes though so you can simply add what you want to use to the Attributes property. I can probably squeeze that into the next release.

Thanks Bill. That’s in interesting idea, I’m happy to wait for the attributes hook when happens but if it’s just something only I would use I’m not sure it’s worth the effort but what do I know…

I’m still learning and estimate I’m like 20% smart, so I’ve got plenty of other features I’m discovering and learning how to use. I did just discover the scripting and exploring how to use that. I think you’ve already got a lot of great features and functionality in the platform!

May I add a suggestion. DirecTV feedback is some thing I would be very interested in too. One thing about there feedback is all time is done in “EPOC” linex time stamp “I believe that’s whats it called”. It would have a script to convert it from seconds to usable time. I am new and have not looked at writing a Plug-in but I think that may be the best route.

There’s already some DIRECTV feedback. The TvChannel capability has the current channel & program information.

Can you point me to info on how to display feedback from the DirecTV Device? Im still learning, LOL

The default TvDetails.xaml file has labels for the channel information. You can look at that file to see how it’s doing it. It’s really no different than binding any other attribute to a Label.

This is where you lose me. How does that apply to the DirecTV.

DIRECTV devices support the TvChannel capability. Everyone of those devices will have TvChannel attributes you can select when you want to bind them to a Label. Have you set up any Labels yet for other devices? It’s really no different than the process for those.

So I added a Label, then I go to the Text Field and try to Device Binding, from the drop down menu I scroll down to the DirecTV Area and see nothing for TvChannel.

Are you using the DIRECTV integration or is this IR? IR devices do not provide feedback. Can you post a couple screenshots so I can see exactly what you are seeing?

integrated, yes I know IR does not provide feedback. I found it but it started with BMNT, Bmnt.TvChannel.Number gives me the number. I would love to see feedback with times. Start, end time and progress into a show would be great.

Thanks again

The values in the dropdown always start with the device name you’ve assigned. You can change that if you want. Just select the device you want to rename in the Devices folder.

Thats the thing, every thing else starts with DirecTV. did not find under DirecTV.TVChannel.Number. Its started as BMNT where everything else started with DirecTV. Looked at all the labels for the device and they all start with DirecTV. I wonder if its because I have the IP device as well as I have a device labeled as “DirectvSetTopBox” under a Global Cache device for IR.

You’re looking at the device source & not the actual device objects. Expand the device source & then you will see BMNT.

I see it now, lots to learn. Like how much HomeRemote can do.

1 Like

I’ve got two questions:
What’s the BMNT? I’ve looked in the devices and templates but don’t find anythign labled BMNT.

How does the TVDetails.axml file get used? Does a new page need to be created for each specific device linked to the device in the device list? I’m getting confused again…

I’ll follow up with another Yamaha question later, but to prep it… what exactly are the parts of this hierarchy called?
Device Folder
What’s the first level (e.g. Marantz_AV_Receiver, Tsr7850) are those devices or a device group?
Second level, for Marantz look to be TCPVariables, for Yamaha they are devices what are these called?


The yamaha sample I looked at has both the yamaha receiver and a virtual device:

These second level items are of type “YamahaReceiverVariable”

The virtual device second level items are of “VirtualDeviceVariable”

I’m trying to understand the labels so I can ask questions that make sense.
The question will basically be something to the effect of: were the receivers shown modified to toss out the default template behavior and replace with custom functionality which is used in some scripted manager?