Adding learned functions to an existing device
Moderator: Moderators
Adding learned functions to an existing device
I'm not understanding something and before I go any further I need a better understanding of how to manipulate learned functions
Brief and concise is admittedly not my strong suit. I apologize in advance if I'm describing things that are common knowledge here.
My pre/pro is an Anthem AVM 50. I started the programming with the upgrade file here for the AVM 30. The AVM 50 has more functionality so obviously I've had to teach some things to the Xsight.
The Anthem can send output to three separate zones simultaneously (e.g., three separate rooms). On the original remote, control of each zone is selected by pressing a "Path" button and then a separate "Zone" button (Main, Z2 and Z3). The Path button does not actually send a signal to the Anthem (at least, not one I can intercept), it toggles something inside the remote. Upon selecting a path, the remote then controls that zone, independent of the other two zones.
But notably, the remote always reverts back to controlling the Main zone after several seconds. This is to prevent, for instance, inadvertently raising the volume in a different room.
In order to achieve true independent control on a different zone, you'd almost have to recreate the entire remote 3 times, which is obviously untenable. But what I've done with my earlier remotes is simply learn and assign to soft keys Power On/Off and Volume +/- for each zone. Then when you need to control a different zone, you press one of those keys, and in the 10 or so seconds while the Anthem is still "looking" at that zone, you can perform other functions.
Initially I taught the Z2 functions to the Xsight using my previous remote (a URC MX-800) and assigned them to softkeys. But for whatever reason, they didn't work (triggered some other random function). Not being essential, I just let it go for a few days while I got everything else working.
Then I dug out the original Anthem remote and used that to teach the Xsight. Those softkeys worked, but when I then uploaded the remote to RMIR, I could see the keys under Learned Signals, and also listed in Device->Buttons, but not under Functions or Layout. Also, the newly-learned buttons in Learned Signals still show the old names of those softkeys, meaning for example I had overwritten the softkey originally labeled "z2+" with "Z2-Vol+" - and that's what I see on the Xsight screen - but RMIR still shows the old name everywhere.
I tried a Convert to Device Upgrade -> Append, it gave me a message about all the functions already existing, and it actually overwrote all of the device functions so that everything controlled Zone 2 instead of the Main Zone. So the Main Power On for instance now powered on Zone 2.
I've since rebuilt everything on the Xsight using its own functionality - and everything works perfectly - but how do I now get access to those keys in the "Functions" and "Layout" pages without affecting the other settings?
There's more, but I'm hoping that should be (more than) adequate...
Thanks.
Brief and concise is admittedly not my strong suit. I apologize in advance if I'm describing things that are common knowledge here.
My pre/pro is an Anthem AVM 50. I started the programming with the upgrade file here for the AVM 30. The AVM 50 has more functionality so obviously I've had to teach some things to the Xsight.
The Anthem can send output to three separate zones simultaneously (e.g., three separate rooms). On the original remote, control of each zone is selected by pressing a "Path" button and then a separate "Zone" button (Main, Z2 and Z3). The Path button does not actually send a signal to the Anthem (at least, not one I can intercept), it toggles something inside the remote. Upon selecting a path, the remote then controls that zone, independent of the other two zones.
But notably, the remote always reverts back to controlling the Main zone after several seconds. This is to prevent, for instance, inadvertently raising the volume in a different room.
In order to achieve true independent control on a different zone, you'd almost have to recreate the entire remote 3 times, which is obviously untenable. But what I've done with my earlier remotes is simply learn and assign to soft keys Power On/Off and Volume +/- for each zone. Then when you need to control a different zone, you press one of those keys, and in the 10 or so seconds while the Anthem is still "looking" at that zone, you can perform other functions.
Initially I taught the Z2 functions to the Xsight using my previous remote (a URC MX-800) and assigned them to softkeys. But for whatever reason, they didn't work (triggered some other random function). Not being essential, I just let it go for a few days while I got everything else working.
Then I dug out the original Anthem remote and used that to teach the Xsight. Those softkeys worked, but when I then uploaded the remote to RMIR, I could see the keys under Learned Signals, and also listed in Device->Buttons, but not under Functions or Layout. Also, the newly-learned buttons in Learned Signals still show the old names of those softkeys, meaning for example I had overwritten the softkey originally labeled "z2+" with "Z2-Vol+" - and that's what I see on the Xsight screen - but RMIR still shows the old name everywhere.
I tried a Convert to Device Upgrade -> Append, it gave me a message about all the functions already existing, and it actually overwrote all of the device functions so that everything controlled Zone 2 instead of the Main Zone. So the Main Power On for instance now powered on Zone 2.
I've since rebuilt everything on the Xsight using its own functionality - and everything works perfectly - but how do I now get access to those keys in the "Functions" and "Layout" pages without affecting the other settings?
There's more, but I'm hoping that should be (more than) adequate...
Thanks.
- Mark
-
The Robman
- Site Owner
- Posts: 21886
- Joined: Fri Aug 01, 2003 9:37 am
- Location: Chicago, IL
- Contact:
Unluckily for you, I think you have chosen a tricky protocol to be your first JP1 protocol to play with. I was just looking at the way the Anthem protocol has been setup and I don't like how it's been done. The "unit code" is really part of the variable data yet it's been setup as fixed data, which means you can only program one unit code at a time, even though the executor allows you to combine them. Plus, the learned signal decoder treats the OBCs as 8-bit whereas the device editor treats them as 6-bit, which is totally inconsistent.
So here's how you can sort it out, go to the folder where you installed RM and look for a file called protocols.ini, then open it using Notepad. In it, search for [Anthem], then change it to [Anthem1] and paste the following before that entry...
[Anthem]
PID=01 23
DevParms=Main Device:8=186,Sub Device:8=34
DeviceTranslator=Translator(0,8,0) Translator(1,8,8)
FixedData=ba 22
CmdParms=OBC:8
CmdTranslator=Translator(0,8,0)
DefaultCmd=00
Notes=DecodeIR lists the OBCs as 8 bits, and that's how this version works too.
Code.S3C80=43 8B 21 8B 12 8F 44 08 08 01 2E 03 77 01 2E 01 1A 30 C0 0F A0 07 BC 20 11 08 03 04 04 C0 04 05 C0 60 C0 0E 09 06 18 03 F6 FF 58 39 03 18 04 F6 FF 58 39 04 18 05 F6 FF 58 39 05 18 06 F6 FF 58 39 06 F6 01 46 F6 01 46 F6 01 46 C6 F8 92 7C F6 01 58 F6 01 0A 7B EB AF 2C 08 E0 C1 10 C3 2A FA AF
Now, if you have RMIR or RM open, close them, then re-start them. When you open your RMIR file and edit your Anthem upgrade, you'll notice that all of the OBCs are now over 63, this is because they have the unit code built into them. Now, when you learn signals, you can directly enter the OBCs that RMIR shows you into your Anthem upgrade.
So here's how you can sort it out, go to the folder where you installed RM and look for a file called protocols.ini, then open it using Notepad. In it, search for [Anthem], then change it to [Anthem1] and paste the following before that entry...
[Anthem]
PID=01 23
DevParms=Main Device:8=186,Sub Device:8=34
DeviceTranslator=Translator(0,8,0) Translator(1,8,8)
FixedData=ba 22
CmdParms=OBC:8
CmdTranslator=Translator(0,8,0)
DefaultCmd=00
Notes=DecodeIR lists the OBCs as 8 bits, and that's how this version works too.
Code.S3C80=43 8B 21 8B 12 8F 44 08 08 01 2E 03 77 01 2E 01 1A 30 C0 0F A0 07 BC 20 11 08 03 04 04 C0 04 05 C0 60 C0 0E 09 06 18 03 F6 FF 58 39 03 18 04 F6 FF 58 39 04 18 05 F6 FF 58 39 05 18 06 F6 FF 58 39 06 F6 01 46 F6 01 46 F6 01 46 C6 F8 92 7C F6 01 58 F6 01 0A 7B EB AF 2C 08 E0 C1 10 C3 2A FA AF
Now, if you have RMIR or RM open, close them, then re-start them. When you open your RMIR file and edit your Anthem upgrade, you'll notice that all of the OBCs are now over 63, this is because they have the unit code built into them. Now, when you learn signals, you can directly enter the OBCs that RMIR shows you into your Anthem upgrade.
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
Yeah, I always thought the Anthem was kind of a strange beast. It's quite capable, but apparently they didn't "follow the rules".
Before I posted that question, I had tried to enter the OBCs I was seeing in Learned Signals into the Functions tab, I was getting a message "OBC must be in the range 0-47" or something similar. I thought it was something (else) I was doing incorrectly, but now it makes sense I think.
I will do as what you've outlined - what will that do to my current remote configuration (which is working)? Should I make your changes, Open the RMIR for the current config, plug in the Xsight and immediately re-upload to it? Will it need to re-learn the Learned Signals, or will that all get sorted out?
Thank you so much!
Before I posted that question, I had tried to enter the OBCs I was seeing in Learned Signals into the Functions tab, I was getting a message "OBC must be in the range 0-47" or something similar. I thought it was something (else) I was doing incorrectly, but now it makes sense I think.
I will do as what you've outlined - what will that do to my current remote configuration (which is working)? Should I make your changes, Open the RMIR for the current config, plug in the Xsight and immediately re-upload to it? Will it need to re-learn the Learned Signals, or will that all get sorted out?
Thank you so much!
- Mark
-
The Robman
- Site Owner
- Posts: 21886
- Joined: Fri Aug 01, 2003 9:37 am
- Location: Chicago, IL
- Contact:
If you make that change to protocols.ini and then re-open your rmir file, when you edit the Anthem upgrade you will see all the OBCs are greater than 63, and they will correspond to your learned signals. This is a temporary fix, what I really need to do is have a chat with mathdon and barf to see if they think we should change how Anthem is handled. My vote would be to change the way learned signals are displayed do that the OBC is 0-63 and a unit code is also displayed, then I would want to modify the protocols.ini entry so that the unit code is in the Functions tab rather than the Setup tab.
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
I'm sorry Rob, I must still be missing something.
I made the change exactly as you said (and double-checked it just now). But when I reopen the .rmir it looks exactly the same, i.e., the OBCs are the same in the Functions list, not above 63:

And the only place I see the learned functions is on the Buttons tab:

This is what the Learned Signals shows:

I did try and create a "New" function and gave it an OBC of 129 (which is Z3-On), but the Hex and EBC didn't match what's on Learned Signals - is that to be expected? Or should I do the "Convert to device upgrade"?
Oh, and here is the pertinent section from my protocols.ini as it reads now:
Sorry if I'm being dense here.[/code]
I made the change exactly as you said (and double-checked it just now). But when I reopen the .rmir it looks exactly the same, i.e., the OBCs are the same in the Functions list, not above 63:

And the only place I see the learned functions is on the Buttons tab:

This is what the Learned Signals shows:

I did try and create a "New" function and gave it an OBC of 129 (which is Z3-On), but the Hex and EBC didn't match what's on Learned Signals - is that to be expected? Or should I do the "Convert to device upgrade"?
Oh, and here is the pertinent section from my protocols.ini as it reads now:
Code: Select all
[Anthem]
PID=01 23
DevParms=Main Device:8=186,Sub Device:8=34
DeviceTranslator=Translator(0,8,0) Translator(1,8,8)
FixedData=ba 22
CmdParms=OBC:8
CmdTranslator=Translator(0,8,0)
DefaultCmd=00
Notes=DecodeIR lists the OBCs as 8 bits, and that's how this version works too.
Code.S3C80=43 8B 21 8B 12 8F 44 08 08 01 2E 03 77 01 2E 01 1A 30 C0 0F A0 07 BC 20 11 08 03 04 04 C0 04 05 C0 60 C0 0E 09 06 18 03 F6 FF 58 39 03 18 04 F6 FF 58 39 04 18 05 F6 FF 58 39 05 18 06 F6 FF 58 39 06 F6 01 46 F6 01 46 F6 01 46 C6 F8 92 7C F6 01 58 F6 01 0A 7B EB AF 2C 08 E0 C1 10 C3 2A FA AF
[Anthem1]
PID=01 23
DevParms=Main Device:8=186,Sub Device:8=34,Unit Code:2=0
DeviceTranslator=Translator(0,8,0) Translator(1,8,8)
FixedData=ba 22
CmdParms=OBC:6
CmdTranslator=Translator(0,6,2) TranslatorFromDev(lsb,2,2,0)
DefaultCmd=00
Notes=DecodeIR lists the OBCs as 8 bits. Some Anthem OBCs can be divided into a Unit number and Function number. \
The unit number is contained in the 2 most significant bits of the OBC
Code.S3C80=43 8B 21 8B 12 8F 44 08 08 01 2E 03 77 01 2E 01 1A 30 C0 0F A0 07 BC 20 11 08 03 04 04 C0 04 05 C0 60 C0 0E 09 06 18 03 F6 FF 58 39 03 18 04 F6 FF 58 39 04 18 05 F6 FF 58 39 05 18 06 F6 FF 58 39 06 F6 01 46 F6 01 46 F6 01 46 C6 F8 92 7C F6 01 58 F6 01 0A 7B EB AF 2C 08 E0 C1 10 C3 2A FA AF
Sorry if I'm being dense here.[/code]
- Mark
-
The Robman
- Site Owner
- Posts: 21886
- Joined: Fri Aug 01, 2003 9:37 am
- Location: Chicago, IL
- Contact:
I would need to see the RMIR file that you tried this with, the pertinent question being "did it have unit code = 2". I did this using the one RMIR file that you did post and it works as I described.
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
-
The Robman
- Site Owner
- Posts: 21886
- Joined: Fri Aug 01, 2003 9:37 am
- Location: Chicago, IL
- Contact:
Was this created before or after you made the change to protocols.ini? In the version that I was working with, the unit code was set to 2, in this version it's set to 0, hence you still have OBCs in the lower range.
The old version, with 2 parameters, is saying to get 6 bits of data from the OBC (hence the 0-63 limit) and 2 bits from the device codes (ie, the unit code).chileboy wrote:Is this the issue? The original [Anthem] section says this:
CmdTranslator=Translator(0,6,2) TranslatorFromDev(lsb,2,2,0)
The new section is missing a second parameter:
CmdTranslator=Translator(0,8,0)
The new version is saying to get all 8 bits from the OBC, hence the new 0-255 range.
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
Well, you said in the original post:The Robman wrote:Was this created before or after you made the change to protocols.ini? In the version that I was working with, the unit code was set to 2, in this version it's set to 0, hence you still have OBCs in the lower range.
so that's all I did - made the change to protocols.ini and reopened the file...I didn't make any changes at all or resave it, as I wasn't seeing anything different.If you make that change to protocols.ini and then re-open your rmir file, when you edit the Anthem upgrade you will see all the OBCs are greater than 63, and they will correspond to your learned signals.
If it changed from the earlier .rmir, I can't say why, as I have no idea what that means or how it would have changed. Maybe reordering the devices? Shouldn't it be impervious to that sort of thing? I mean, if I have to start over from scratch, wouldn't that "break" the change to protocols.ini?
Where is the "unit code"? I searched the the .rmir and can't find anything called that. Nor do I see it the protocols.ini. I can just change it in one file or the other if I know what I'm looking for.
Oh, ok, got it.The old version, with 2 parameters, is saying to get 6 bits of data from the OBC (hence the 0-63 limit) and 2 bits from the device codes (ie, the unit code).chileboy wrote:Is this the issue? The original [Anthem] section says this:
CmdTranslator=Translator(0,6,2) TranslatorFromDev(lsb,2,2,0)
The new section is missing a second parameter:
CmdTranslator=Translator(0,8,0)
The new version is saying to get all 8 bits from the OBC, hence the new 0-255 range.
- Mark
Ok, I'm guessing it's looking here in the .rmir - the older one said:
and my current says:
My old [Anthem] section in protocols.ini says:
The new protocols.ini [Anthem] section says:
with no Unit Code specified. I tried modifying that to add "Unit Code:0=0" (which seems redundant) or simply "Unit Code:0" to no effect.
UPDATE: P.S. I loaded the version you worked from and yes, it behaved as you said (with the higher OBCs). I can revert to that version and work from there if that's easiest. Thank you.
Code: Select all
ProtocolParms=186 34 2
Code: Select all
ProtocolParms=186 34 null
Code: Select all
DevParms=Main Device:8=186,Sub Device:8=34,Unit Code:2=0
Code: Select all
DevParms=Main Device:8=186,Sub Device:8=34
UPDATE: P.S. I loaded the version you worked from and yes, it behaved as you said (with the higher OBCs). I can revert to that version and work from there if that's easiest. Thank you.
- Mark
-
The Robman
- Site Owner
- Posts: 21886
- Joined: Fri Aug 01, 2003 9:37 am
- Location: Chicago, IL
- Contact:
Ok, work with me here. First, edit protocols.ini and change the new [Anthem] to [Anthem2] and change the old one back from [Anthem1] to [Anthem].chileboy wrote:Where is the "unit code"? I searched the the .rmir and can't find anything called that. Nor do I see it the protocols.ini. I can just change it in one file or the other if I know what I'm looking for.
First, download and open the following RMIR file that you posted earlier:
http://www.hifi-remote.com/forums/dload ... e_id=26064
Next, go to the Devices tab and edit the first upgrade (Misc Audio/1185), it should look like this:

Notice the "Unit Code" entry set to the value 2?
Now, close RMIR and re-edit protocols.ini, so the new one is called [Anthem] again.
Then, re-open that same RMIR file again, go to the same upgrade and then go to the Functions tab, and it should look like this.

Notice the OBC values? Remember, this is your file.
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
Huh. Well, I kind of had already confirmed that - I knew which version you were working from (see my previous post) - and I also did the steps you just outlined and everything is exactly as you say.
When I load the newest iteration, the Unit Code doesn't show at all - I guess because it's null.
Can I somehow change the Unit Code, or make the changes apply to a "null" Code, so I can utilize my latest version?
I can certainly revert to the earlier version and go from there, but I'm approaching this also as a learning experience.
Thanks Rob. I know you've invested a lot of time and effort helping me, and I appreciate it.
When I load the newest iteration, the Unit Code doesn't show at all - I guess because it's null.
Can I somehow change the Unit Code, or make the changes apply to a "null" Code, so I can utilize my latest version?
I can certainly revert to the earlier version and go from there, but I'm approaching this also as a learning experience.
Thanks Rob. I know you've invested a lot of time and effort helping me, and I appreciate it.
- Mark
-
The Robman
- Site Owner
- Posts: 21886
- Joined: Fri Aug 01, 2003 9:37 am
- Location: Chicago, IL
- Contact:
Please forget that I ever mentioned the "unit code".
Use the new [Anthem] that I gave you and enter the OBCs as they are reported from the learned signals. That's the problem that I was trying to solve.
Use the new [Anthem] that I gave you and enter the OBCs as they are reported from the learned signals. That's the problem that I was trying to solve.
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
The Robman wrote:Please forget that I ever mentioned the "unit code
I understand, and not to belabor the point, but I need to go back to that version of my .rmir, correct?Use the new [Anthem] that I gave you and enter the OBCs as they are reported from the learned signals. That's the problem that I was trying to solve.
- Mark