Your Universal Remote Control Center
RemoteCentral.com
Discrete Code Hunter Forum - View Post
Previous section Next section Up level
Up level
The following page was printed from RemoteCentral.com:

Login:
Pass:
 
 

Topic:
Apple TV Decode via IRtool issues
This thread has 12 replies. Displaying all posts.
Post 1 made on Wednesday July 11, 2007 at 00:26
tgrugett
Select Member
Joined:
Posts:
August 2004
1,850
Someone sent me Apple TV codes but IRTool does not recognize the protocol or there are issues.

I get the following Decode for Play...

Protocol: GAP-557-1698-32
Device: 238.125
OBC: 75
EFC: 189

0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0015 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 0041 0015 0015 0015 05E8 0156 0056 0015 0E49

Would someone be able to shed some light?
Post 2 made on Wednesday July 11, 2007 at 07:57
johnsfine
IR Expert
Joined:
Posts:
September 2002
5,159
What do you need to do with the decode results?

I never found time to finish investigating these Apple codes nor to add DecodeIR.dll support or decent MakeHex support.

There are a few other threads about them, that probably contain details I've forgotten at the moment.

The codes have the same structure and timing as NEC1 protocol with device=238.135 but the last byte (which is the function check byte in NEC1) is used for something else by Apple.
OP | Post 3 made on Wednesday July 11, 2007 at 11:44
tgrugett
Select Member
Joined:
Posts:
August 2004
1,850
I was just trying to get a handle on the codes before I am on site. Many people have had issue with learning the codes so I thought I would generate them cleanly to save myself some potential hassle. Also, there has been talk about a process of pairing a specific remote with a specific Apple TV box for multiple box use but unfortunately, I have no experience with this.
Post 4 made on Wednesday July 11, 2007 at 13:27
johnsfine
IR Expert
Joined:
Posts:
September 2002
5,159
If you're using a Pronto that understands 900A, the clean form of the signal you posted is

900a 006d 0000 0001 ee87 044b

If you do a forum search for EE87 you'll find all the previous discussions of this protocol.

For example, look at this thread:
[Link: remotecentral.com]
where the play command is 04, just like your play command, but the last byte was 9f for michael.pinkston but was 76 for Mitch Engleman.

I don't really know anything about "pairing a specific remote with a specific Apple TV box" but I assume that is part or all of the reason the last byte varies.

It might be something as simple as each original remote being manufactured with its own random permanent value for that last byte, then some method for the TV to latch onto a value of the last byte and start ignoring signals with other values. But that is really just a wild guess.

Once you have access to the TV, you ought to be able to get us those answers by putting some commands in the 900A form and then changing the last byte and seeing how the TV behaves.
OP | Post 5 made on Wednesday July 11, 2007 at 23:35
tgrugett
Select Member
Joined:
Posts:
August 2004
1,850
I will take a pronto with me to test your ideas. I will also try the long form codes you posted in one of the other threads.

Regarding the long form-short form code differences... I always thought that those shorter form codes were RC5/RC6 codes. Are they just different representations of the same information? I would appreciate it if you could clarify this for me.

Thanks.
Post 6 made on Thursday July 12, 2007 at 00:02
johnsfine
IR Expert
Joined:
Posts:
September 2002
5,159
On July 11, 2007 at 23:35, tgrugett said...
Regarding the long form-short form code differences...
I always thought that those shorter form codes were RC5/RC6
codes. Are they just different representations of the
same information? I would appreciate it if you could clarify
this for me.

There are a lot of different short forms. The long form (beginning with 0000) is a generic way of representing any modulated IR signal. Each first value for a short form is a unique representation of a specific narrow family of IR protocols and can represent only that family. Most IR protocols have no short form.

The codes beginning "900A" are NEC1, Tivo and Apple, not RC5/RC6.

RC5 condensed form begins "5000". RC6 condensed form begins "6000". There is a condensed form for RC5x that begins "5001". The is also a condensed form for the RC6 mode 6A protocols, I forget the starting number, I think 6001.

There are lots of others, none very common, but you get the general idea.
OP | Post 7 made on Thursday July 12, 2007 at 21:25
tgrugett
Select Member
Joined:
Posts:
August 2004
1,850
OK...

here are my results after testing today.

These codes in the other thread from Micheal Pinkston did not work...
900a 006d 0000 0001 ee87 0b9f : Volume Up
900a 006d 0000 0001 ee87 0d9f : Volume Down
900a 006d 0000 0001 ee87 029f : Menu
900a 006d 0000 0001 ee87 089f : Reverse
900a 006d 0000 0001 ee87 049f : Play / Pause
900a 006d 0000 0001 ee87 079f : Forward

These codes generated and posted by John in the same thread did work using direct IR from a Pronto TSU2000 and via RF using an RTI remote, however, the sustained scrolling features of the +/- buttons did not work. When the +/- buttons are pressed and held on the native remote, the navigation of a list will change from one step to a ramped accelerated scroll. When the button is released the scroll slows to a hault if the acceleration is very fast.

Function: 0376 (Menu)
0000 006E 0024 0000 0156 00AC 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 058D 0156 0055 0016 00AB
Function: 0576 (Play/Pause)
0000 006E 0024 0000 0156 00AC 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0016 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 058D 0156 0055 0016 00AB
Function: 0676 (Skip Forward)
0000 006E 0024 0000 0156 00AC 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0016 0016 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 058D 0156 0055 0016 00AB
Function: 0976 (Skip Reverse)
0000 006E 0024 0000 0156 00AC 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0016 0016 0016 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 058D 0156 0055 0016 00AB
Function: 0A76 (+)
0000 006E 0024 0000 0156 00AC 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0016 0016 0041 0016 0016 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 058D 0156 0055 0016 00AB
Function: 0C76 (-)
0000 006E 0024 0000 0156 00AC 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0016 0016 0016 0016 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0016 0016 058D 0156 0055 0016 00AB

These are the codes captured from the specific remote used with the device being implemented on my current job. It is the only one I have access to. I have tested these and they work flawlessly with this particular device including the scrolling features described above.

(Menu)
0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 05E7 0156 0056 0015 0E47
(Play/Pause)
0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 05E7 0156 0056 0015 0E47
(Skip Forward)
0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 05E7 0156 0056 0015 0E47
(Skip Reverse)
0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0015 0015 0015 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 05E7 0156 0056 0015 0E47
(+)
0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 05E7 0156 0056 0015 0E47
(-)
0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0015 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 05E7 0156 0056 0015 0E48

Last edited by tgrugett on July 17, 2007 23:51.
OP | Post 8 made on Friday July 13, 2007 at 11:44
tgrugett
Select Member
Joined:
Posts:
August 2004
1,850
Also.....

These did not work. they were sent to me by another RC participant.

Please take this with a grain of salt. They did not work through RF and the processor. I did not test via direct line of sight like I did with the others. I should have determined at least one set was working via RF so that I was comparing apples to apples. I will thoroughly test all of theses again when back on the job site.

(Menu)
0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 0041 0015 0015 0015 05E8 0156 0056 0015 0E4A
(Play)
0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0015 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 0041 0015 0015 0015 05E8 0156 0056 0015 0E49
(Skip Forward)
0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 0041 0015 0015 0015 0593 0156 0056 0015 0E49
(Skip Reverse)
0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0015 0015 0015 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 0041 0015 0015 0015 05E8 0156 0056 0015 0E49
(+)
0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 0041 0015 0015 0015 058E 0156 0056 0015 0E4A
(-)
0000 006E 0022 0002 0156 00AC 0015 0015 0015 0041 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0015 0015 0041 0015 0041 0015 0015 0015 0015 0015 0015 0015 0015 0015 0041 0015 0041 0015 0015 0015 0041 0015 0015 0015 0015 0015 0041 0015 0015 0015 058E 0156 0056 0015 0E4A
OP | Post 9 made on Tuesday July 17, 2007 at 13:28
tgrugett
Select Member
Joined:
Posts:
August 2004
1,850
I am not trying to be impatient at all...

I am giving this a bump just in case John did not see it.
Post 10 made on Tuesday July 17, 2007 at 14:16
johnsfine
IR Expert
Joined:
Posts:
September 2002
5,159
On July 17, 2007 at 13:28, tgrugett said...
I am giving this a bump just in case John did not see
it.

I saw it. I just didn't realize you expected a response to what you've posted so far.

I don't have time right now to improve DecodeIr or MakeHex support for this protocol, especially since no one has yet explained the meaning of that last byte.


These codes generated and posted by John in the same thread
did work using direct IR from a Pronto TSU2000. Function
names in parenthesis...

Function: 0376 (Menu)

Function: 0576 (Play/Pause)

Since I generated those, there is no surprise that I still think those are in fact 0376 and 0576.

So you have a device that likes 76 as the last byte. But I don't see enough detail about which tests were done with which device to know how significant that is. Was 76 previously chosen based on the signals from that device's remote or from some other one? Does that device reject other last byte values?

These are the codes captured from a specific remote on
todays job using an RTI IR pro IR capture unit. I unfortunately
ran out of time and did not test these.

(Menu)

(Play/Pause)

Those are 032A and 052A. No surprise that the command part (03 and 05) matches those values from other Apple remotes nor that the other part (2A) matches between these two codes from this remote and mismatches other remotes.

These did not work. they were sent to me by another RC
participant.

(Menu)

(Play)

But those were 024B and 044B. I would have expected the command part to match. I think some one got mixed up about which Pronto Hex string was which function, so those aren't really Menu and Play.

They didn't work. If that were just because the function names were on the wrong Pronto Hex strings, I think you would have noticed that and mentioned it. So it must be because that last byte doesn't match. So you have a device that didn't accept 4B. I can't even tell from your description whether it is the same device that did accept 76.

But I don't yet have any understanding of the rules for which remote is paired with which device and which lasts bytes work. In all the threads on this subject I still don't even have a clear enough idea of what was tested to be able to ask useful questions.

I thought you were going to do some direct well organised testing to give us the basics of what the device accepts for a last byte. What abou after the device has been off (or unplugged)? Does that widen the rules for which last byte(s) it will accept next? Do some (or all) commands then narrow those rules (so it learns to prefer a specific remote)?
OP | Post 11 made on Tuesday July 17, 2007 at 23:47
tgrugett
Select Member
Joined:
Posts:
August 2004
1,850
I have edited the prior post containing your generated codes to reflect a few more results of my limited testing.

On July 17, 2007 at 14:16, johnsfine said...
I saw it. I just didn't realize you expected a response
to what you've posted so far.

No expectation here. I just figured I would make sure it was seen.
I don't have time right now to improve DecodeIr or MakeHex
support for this protocol, especially since no one has
yet explained the meaning of that last byte.

I don't expect you to ever run out and solve my problems (right now or ever) :).
I appreciate all of the help you have given me over the last year. You have been VERY generous with your time.
Since I generated those, there is no surprise that I still
think those are in fact 0376 and 0576.

So you have a device that likes 76 as the last byte.
But I don't see enough detail about which tests were
done with which device to know how significant that is.
Was 76 previously chosen based on the signals from that
device's remote or from some other one? Does that device
reject other last byte values?

I tested all of the codes you generated on the one device that I have access to at the moment. The specific codes that I listed as working were the result of that test
Those are 032A and 052A. No surprise that the command
part (03 and 05) matches those values from other Apple
remotes nor that the other part (2A) matches between these
two codes from this remote and mismatches other remotes.

I am currently not seeing the connections because I am not sure exactly how you generated these codes and how they relate to the short form. This bit has been over my head at the moment.
But those were 024B and 044B. I would have expected the
command part to match. I think some one got mixed up
about which Pronto Hex string was which function, so those
aren't really Menu and Play.

None of the commands from that set worked for any function on this particular device.
They didn't work. If that were just because the function
names were on the wrong Pronto Hex strings, I think you
would have noticed that and mentioned it. So it must
be because that last byte doesn't match. So you have
a device that didn't accept 4B. I can't even tell from
your description whether it is the same device that did
accept 76.

This has been the same device for all tests.
But I don't yet have any understanding of the rules for
which remote is paired with which device and which lasts
bytes work. In all the threads on this subject I still
don't even have a clear enough idea of what was tested
to be able to ask useful questions.

I will let you know if I figure it out. I have another potential Apple TV implementation on the radar right now.
I thought you were going to do some direct well organised
testing to give us the basics of what the device accepts
for a last byte. What abou after the device has been
off (or unplugged)? Does that widen the rules for which
last byte(s) it will accept next? Do some (or all) commands
then narrow those rules (so it learns to prefer a specific
remote)?

I would have liked to expand my testing but thanks to other issues on the job my testing time was limited. I can only hang around peoples house and play with their equipment for so long :).
Post 12 made on Wednesday July 18, 2007 at 07:17
johnsfine
IR Expert
Joined:
Posts:
September 2002
5,159
On July 17, 2007 at 23:47, tgrugett said...
I am currently not seeing the connections because I am
not sure exactly how you generated these codes and how
they relate to the short form.

I used MakeHex and I used the .irp file that I posted in a couple of the other threads on this topic.

The correct long form Pronto Hex sends exactly the same signal as the short form. Under some conditions, some versions of ProntoEdit will translate the long form to the short form. That translation just affects the way the Pronto Hex is shown to the user in ProntoEdit. It doesn't affect the signal that will be sent.

I'm also using a private version of IrTool.exe that displays more information. DecodeIr generates a "misc" output field for the signals that are processed by the generic "gap" decoder. That "misc" field happens to match the four data bytes of the short form Pronto Hex. So I can easily tell what the short form would have been for any long form signal. If the learned signals were in a CCF file and decoded by DecodeCCF, the output would include the "misc" field. But the released JP1 version of IrTool discards the "misc" field, so you aren't seeing that when you use IrTool, so you don't get that extra connection between the long and short forms.
OP | Post 13 made on Wednesday July 18, 2007 at 11:53
tgrugett
Select Member
Joined:
Posts:
August 2004
1,850
I will search for that .irp file you mentioned.

Thanks


Jump to


Protected Feature Before you can reply to a message...
You must first register for a Remote Central user account - it's fast and free! Or, if you already have an account, please login now.

Please read the following: Unsolicited commercial advertisements are absolutely not permitted on this forum. Other private buy & sell messages should be posted to our Marketplace. For information on how to advertise your service or product click here. Remote Central reserves the right to remove or modify any post that is deemed inappropriate.

Hosting Services by ipHouse