Trying to program URC 7800 to control HP MD5880n
Moderator: Moderators
I'm now on a different computer than where I uploaded that from.bnam wrote:When I chedked the new DLL on the link you provided, it seems to be the same as 2.29 (dates/size, etc) \
I just now downloaded it and the file dates inside the .zip are today.
If you're seeing older file dates in the .zip, I think your browser used a .zip file from its cache rather than redownloading (since the URL hasn't changed).
How to make your browser really download a .zip rather than using cache can be tricky. It isn't as simple as an HTML page where the refresh button does it. When I get really stuck on such things I've gone into the option that lets you clear the entire cache (but I have fast enough internet that dropping the whole cache isn't serious).
John,
THANKS for the AWESOME help.
The .rdmu for the HP md5880 and md6580 is now in the file section.
http://www.hifi-remote.com/forums/dload ... le_id=3040
Regards,
bnam
THANKS for the AWESOME help.
The .rdmu for the HP md5880 and md6580 is now in the file section.
http://www.hifi-remote.com/forums/dload ... le_id=3040
Regards,
bnam
In RM, you can click on the "OBC" at the top of that column and it will sort the lines by OBC number (later click on the # and it will restore the original sequence).
In this case sorting by OBC number makes obvious some bad news that isn't obvious from the original list.
Notice you have two each of OBC 0, 1, 10, 16 and 17. So those five untested discrete codes are almost certainly wrong. Given the source of the discretes, I would conclude they are all wrong (all apply to a different model of HP TV, not your model).
In this case sorting by OBC number makes obvious some bad news that isn't obvious from the original list.
Notice you have two each of OBC 0, 1, 10, 16 and 17. So those five untested discrete codes are almost certainly wrong. Given the source of the discretes, I would conclude they are all wrong (all apply to a different model of HP TV, not your model).
John,
Yes, those were from a CCF that I found at remote central and decoded. It indicated that the device/sub device for those codes were 2/17 vs. the 18/17 for the remaining. So, I'll probably need to create a separate device upgrade for those, but am waiting till I do the firmware upgrade on my TV which activates discrete codes.
I should have just deleted from this file.
B
Yes, those were from a CCF that I found at remote central and decoded. It indicated that the device/sub device for those codes were 2/17 vs. the 18/17 for the remaining. So, I'll probably need to create a separate device upgrade for those, but am waiting till I do the firmware upgrade on my TV which activates discrete codes.
I should have just deleted from this file.
B
Are you assuming 2.17 vs. 18.17 is a difference between ordinary codes and discrete codes within the same model TV? Or a difference across all the codes for after/before the firmware upgrade?bnam wrote:Yes, those were from a CCF that I found at remote central and decoded. It indicated that the device/sub device for those codes were 2/17 vs. the 18/17 for the remaining.
Either of those theories is possible, but I think quite unlikely. More likely, 2.17 vs. 18.17 is a difference between models of TV.
Does the source from which you plan to get the firmware upgrade provide any data on what the discrete codes will be?bnam wrote:am waiting till I do the firmware upgrade on my TV which activates discrete codes.
It seems unlikely that the firmware upgrade would change the ordinary codes for digits and vol, etc. So if it adds discrete codes, it must do so using different OBC numbers than the ones in that CCF file. Do you need to do a blind search of possible OBC values or do you expect them to tell you the OBC values?
Good questions...
It was posted as a discrete codes .ccf for the same model. I'll post that file later today.
HP's latest firmware upgrade D36 apparently turns on discrete as many have reported. However, they've taken D36 off their site and are expecting to repost this week. And unfortunately, mine came with a dead USB port which is to be replaced shortly and until that happens I can't upgrade and confirm.
bnam
It was posted as a discrete codes .ccf for the same model. I'll post that file later today.
HP's latest firmware upgrade D36 apparently turns on discrete as many have reported. However, they've taken D36 off their site and are expecting to repost this week. And unfortunately, mine came with a dead USB port which is to be replaced shortly and until that happens I can't upgrade and confirm.
bnam
-
The Robman
- Site Owner
- Posts: 21886
- Joined: Fri Aug 01, 2003 9:37 am
- Location: Chicago, IL
- Contact:
With or without the firmware upgrade, you could always create a dummy upgrade that contains all the "gap" OBCs which you could load into your remote to test, then if you find that any of these gap OBCs actually do anything, you can add those functions to your master list.
However, a word of caution is needed about trying undocumented codes with TVs. Some TVs support functions that can be hard to recover from. There are TVs that support functions such as "erase the EEPROM" where if you use the function the only way to recover from it is to have a factory service tech come around to restore the EEPROM. Other TVs have functions that will reset all the picture settings, which means you'd have to manually try to get the TV back to how it was. Almmost all TVs have a service menu which can be accessed either using special codes or special combinations of button presses, and getting into the service menu gives you the ability to mess up the settings if you don't know what you're doing.
So, if you're willing to accept the risk, you could test the undocumented OBCs to see what they do (if anything).
However, a word of caution is needed about trying undocumented codes with TVs. Some TVs support functions that can be hard to recover from. There are TVs that support functions such as "erase the EEPROM" where if you use the function the only way to recover from it is to have a factory service tech come around to restore the EEPROM. Other TVs have functions that will reset all the picture settings, which means you'd have to manually try to get the TV back to how it was. Almmost all TVs have a service menu which can be accessed either using special codes or special combinations of button presses, and getting into the service menu gives you the ability to mess up the settings if you don't know what you're doing.
So, if you're willing to accept the risk, you could test the undocumented OBCs to see what they do (if anything).
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!
http://www.hifi-remote.com/forums/dload ... le_id=3050
This is the discrete ccf file that I found. I've upgraded firmware for my TV, so will check out if the discretes work.
B
This is the discrete ccf file that I found. I've upgraded firmware for my TV, so will check out if the discretes work.
B
John, Rob,
Here's a note that a user at AVSForum got from Harmony (who got it in turn from HP). I don't quite follow it all, but I'm sure it makes more sense to you.
B
Here's a note that a user at AVSForum got from Harmony (who got it in turn from HP). I don't quite follow it all, but I'm sure it makes more sense to you.
Thanks,Someone at Harmony Remotes sent this info to me, they got it from HP....remote code info on the HP sets. In case this helps at all....
Remote Control Codes - RPTV 2005-Nov-09
·*RC-6 Timing format is used.
·*IR carrier frequency is 36 KHz.
·*RC-6 Leader bit is used preceding all codes.
HP Header Field D20-D0 Always “1 1100 1000 0000 0001 0001” (binary).
Information Field Toggle Bit D15 Changes state when the same key is pressed twice to indicate rapid key entry.
Address D14-D12 Addresses are listed in table below.
Fixed D11-D8 Always “0010” (binary).
Command D7-D0 Commands are listed in table below.
Function Address Command TV Remote
Power 1 12 0x0C X X
Power On 0 0 0x00 X *
Power Off 0 1 0x01 X *
Menu 1 84 0x54 X X
Menu Action (OK) 1 92 0x5C X X
Menu Up 1 88 0x58 X X
Menu Down 1 89 0x59 X X
Menu Left 1 90 0x5A X X
Menu Right 1 91 0x5B X X
Menu Back 1 85 0x55 X X
Source (List) 1 139 0x8B X X
Cable 0 10 0x0A X *
Antenna 0 11 0x0B X *
HDMI 1 0 21 0x15 X *
HDMI 2 0 22 0x16 X *
Component 1 0 19 0x13 X *
Component 2 0 20 0x14 X *
Video 1 0 13 0x0D (0x10) X *
Video 2 0 14 0x0E (0x11) X *
Video 3 0 15 0x0F (0x12) X *
VGA 0 23 0x17 X *
Source (Pictures) 1 232 0xE8
Mute 1 13 0x0D X X
Mute On 0 25 0x19
Mute Off 0 26 0x1A
Volume Up 1 16 0x10 X X
Volume Down 1 17 0x11 X X
Channel Up 1 30 0x1E X X
Channel Down 1 31 0x1F X X
Last Channel 1 10 0x0A X X
0 1 0 0x00 X X
1 1 1 0x01 X X
2 1 2 0x02 X X
3 1 3 0x03 X X
4 1 4 0x04 X X
5 1 5 0x05 X X
6 1 6 0x06 X X
7 1 7 0x07 X X
8 1 8 0x08 X X
9 1 9 0x09 X X
Channel Separator 1 172 0xAC X X
Channel Enter 1 225 0xE1 X X
Guide 1 204 0xCC X X
Favorites 1 171 0xAB X X
Aspect 1 169 0xA9 X X
Aspect 1 0 35 0x23
Aspect 2 0 36 0x24
Aspect 3 0 37 0x25
Aspect 4 0 38 0x26
Aspect 5 0 39 0x27
Picture Mode 1 226 0xE2 X X
Picture mode 1 0 27 0x1B
Picture mode 2 0 28 0x1C
Picture mode 3 0 29 0x1D
Picture mode 4 0 30 0x1E
Sound Mode 1 227 0xE3 X X
Info 1 129 0x81 X X
Sleep 1 168 0xA8 X
PIP/POP 1 93 0x5D X
PIP/POP Swap 1 99 0x63
PIP/POP Source 1 94 0x5E
SAP 1 167 0xA7 X
CC 1 166 0xA6 X
Options 1 233 0xE9 X X
Red 1 228 0xE4 X X
Green 1 229 0xE5 X X
Yellow 1 230 0xE6 X X
Blue 1 231 0xE7 X X
* supported in Maintenance code release
B
Took some effort, but yes I figured it out.bnam wrote:but I'm sure it makes more sense to you.
Earlier, I thought I looked at a CCF with BOTH ordinary and discrete codes and they were all device 2. Maybe I was confused about that.
This document indicates the ordinary commands are device 18 and the discretes are device 2.
To do that in JP1, it is easiest to create a second upgrade, specifying device 2.17 and a different setup code. Then define all the discrete codes as external functions in RM using that second setup code. RM translates any use of external functions into KeyMoves that it tells IR.EXE to install. For those to work, the device upgrade for the second setup code must be installed, but it doesn't need to be assigned to a device key.
I've never been quite sure how the first few bits (1 1100) in any MCE documentation relate to anything in the actual signal. But I don't need to. I know very well what the beginning of an RC6 signal looks like.HP Header Field D20-D0 Always “1 1100 1000 0000 0001 0001”
The next eight bits (1000 0000) are the same for all MCE signals, so I already knew those as well.
The next eight bits (0001 0001) are the code for HP, so I knew those.
Then the next bit is the one that I knew is the toggle, so that further confirms that this is the right track.Information Field Toggle Bit D15 Changes state when the same key is pressed twice to indicate rapid key entry.
We treat those as the top three bits of a seven bit device number. Those are the bits I've been unsure of so far in this thread. If the device is 2, those bits are 000. If the device is 18, those bits are 001.Address D14-D12 Addresses are listed in table below.
That is the bottom four bits of the device number, which are 0010 for both device 2 and device 18.Fixed D11-D8 Always “0010” (binary).
and we already knew which eight bits are the commands and what those values are.Command D7-D0 Commands are listed in table below.
The 1 tells us the device is 18. The 12 is the OBC number. The 0x0C is the OBC number in hex. I don't know nor need to know what the "X X" means.Power 1 12 0x0C X X
The first 0 tells us the device is 2. The next 0 is the OBC, that's really all we need to know about each command.Power On 0 0 0x00 X *
That first number is 1 for ordinary commands, device 18, or 0 for discrete commands, device 2.
That one confused me for a moment. Then I realized the 2 is part of the function name. The quoting of this (maybe before you got it) lost enough formatting that you need to look carefully to see where the function name ends and the number start.Aspect 2 0 36 0x24
It worked. Though I am not sure that my approach was the most efficient.
Part A:
Created discrete using MCE 2.17 and entered the discrete codes into external function area. NOte I did not enter all discrete codes into external function -- only those that I intended to use, the rest I left in functions. I did not map any buttons. The device output was pasted into IR
http://www.hifi-remote.com/forums/dload ... le_id=3050
Part B:
Adding this new device did not require me to assign a device key.
But later I assigned device key VCR to the discrete TV (setupcode 1001) -- not sure if this step was needed.
Then, I added keymoves to map to Phantom and shift Phantom keys of Original TV device to some of the discrete functions entered as EFCs.
http://www.hifi-remote.com/forums/dload ... le_id=3020
So what can I do differently (or better)?
Thanks,
bnam
Part A:
Created discrete using MCE 2.17 and entered the discrete codes into external function area. NOte I did not enter all discrete codes into external function -- only those that I intended to use, the rest I left in functions. I did not map any buttons. The device output was pasted into IR
http://www.hifi-remote.com/forums/dload ... le_id=3050
Part B:
Adding this new device did not require me to assign a device key.
But later I assigned device key VCR to the discrete TV (setupcode 1001) -- not sure if this step was needed.
Then, I added keymoves to map to Phantom and shift Phantom keys of Original TV device to some of the discrete functions entered as EFCs.
http://www.hifi-remote.com/forums/dload ... le_id=3020
So what can I do differently (or better)?
Thanks,
bnam
-
The Robman
- Site Owner
- Posts: 21886
- Joined: Fri Aug 01, 2003 9:37 am
- Location: Chicago, IL
- Contact:
Here is a tidied up list...
Code: Select all
Power On 0 000 0x00 X *
Power Off 0 001 0x01 X *
Cable 0 010 0x0A X *
Antenna 0 011 0x0B X *
Video 1 0 013 0x0D X * (0x10)
Video 2 0 014 0x0E X * (0x11)
Video 3 0 015 0x0F X * (0x12)
Component 1 0 019 0x13 X *
Component 2 0 020 0x14 X *
HDMI 1 0 021 0x15 X *
HDMI 2 0 022 0x16 X *
VGA 0 023 0x17 X *
Mute On 0 025 0x19
Mute Off 0 026 0x1A
Picture mode 1 0 027 0x1B
Picture mode 2 0 028 0x1C
Picture mode 3 0 029 0x1D
Picture mode 4 0 030 0x1E
Aspect 1 0 035 0x23
Aspect 2 0 036 0x24
Aspect 3 0 037 0x25
Aspect 4 0 038 0x26
Aspect 5 0 039 0x27
0 1 000 0x00 X X
1 1 001 0x01 X X
2 1 002 0x02 X X
3 1 003 0x03 X X
4 1 004 0x04 X X
5 1 005 0x05 X X
6 1 006 0x06 X X
7 1 007 0x07 X X
8 1 008 0x08 X X
9 1 009 0x09 X X
Last Channel 1 010 0x0A X X
Power 1 012 0x0C X X
Mute 1 013 0x0D X X
Volume Up 1 016 0x10 X X
Volume Down 1 017 0x11 X X
Channel Up 1 030 0x1E X X
Channel Down 1 031 0x1F X X
Menu 1 084 0x54 X X
Menu Back 1 085 0x55 X X
Menu Up 1 088 0x58 X X
Menu Down 1 089 0x59 X X
Menu Left 1 090 0x5A X X
Menu Right 1 091 0x5B X X
Menu Action (OK) 1 092 0x5C X X
PIP/POP 1 093 0x5D X
PIP/POP Source 1 094 0x5E
PIP/POP Swap 1 099 0x63
Info 1 129 0x81 X X
Source (List) 1 139 0x8B X X
CC 1 166 0xA6 X
SAP 1 167 0xA7 X
Sleep 1 168 0xA8 X
Aspect 1 169 0xA9 X X
Favorites 1 171 0xAB X X
Channel Separator 1 172 0xAC X X
Guide 1 204 0xCC X X
Channel Enter 1 225 0xE1 X X
Picture Mode 1 226 0xE2 X X
Sound Mode 1 227 0xE3 X X
Red 1 228 0xE4 X X
Green 1 229 0xE5 X X
Yellow 1 230 0xE6 X X
Blue 1 231 0xE7 X X
Source (Pictures) 1 232 0xE8
Options 1 233 0xE9 X X 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 guess I was unclear about that.bnam wrote:Created discrete using MCE 2.17 and entered the discrete codes into external function area.
There are two upgrades (I assume you defined them both in RM).
1) The main upgrade MCE:18:17 setup code 1001
2) The discrete upgrade MCE:2:17 setup code 1000
The way External functions is used is inside the main upgrade you use the external functions tab to define the commands that use the discrete upgrade, specifying the setup code (1001) with which the discrete upgrade is defined.
In the discrete upgrade, you don't want any buttons defined (and you correctly didn't have any). But you also don't have any need for functions or external functions. All it needs is on the setup sheet.
Not needed.But later I assigned device key VCR to the discrete TV (setupcode 1001) -- not sure if this step was needed.
The point of using the external functions sheet in the main upgrade is so that you can assign those external functions to buttons in that upgrade and have RM tell IR.EXE to create those KeyMoves.Then, I added keymoves to map to Phantom and shift Phantom keys of Original TV device to some of the discrete functions entered as EFCs.
Creating the KeyMoves yourself in IR.EXE can produce the identical eeprom image to load into the remote. But that way may be harder to understand/modify later if you decide to rearrange buttons, and is less useful as an upload for other people to use.
The general rule for defining KeyMoves should be: KeyMoves which are an integral aspect of the device itself (such as these) should be defined as external functions in RM or KM. But KeyMoves that relate to the way multiple devices are combined in your setup (such as KeyMoving X's input select command for Y into mode Y) should be done in IR.EXE.
That way when you share your upgrades with someone who has a different mix of devices, or use them yourself to rebuild your config after replacing a device, the upgrade has all and only commands for that device.
You can open two copies of RM at once and select/copy/paste the whole grid of external functions contents from the discrete upgrade to the main upgrade.So what can I do differently (or better)?
I just tried it and copying with ^C did strange and wrong things, but copying with the Copy button at the bottom of the sheet worked fine.