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

Login:
Pass:
 
 

Page 1 of 3
Topic:
Full set of Apple TV IR Codes Plus Layout of my TSU9600 ATV Device
This thread has 31 replies. Displaying posts 1 through 15.
Post 1 made on Sunday August 29, 2021 at 13:29
Lyndel McGee
RC Moderator
Joined:
Posts:
August 2001
13,059
I've recently been working with IR codes for AppleTV and the quirks that come along with using IR to control the AppleTV.

I have developed 2 layouts that I really like and thought I'd share images of them here.

[Link: dropbox.com]

[Link: dropbox.com]

Edit - The images above have the wrong symbol on Firm4. It should have been Forward 10s (Play followed by a vertical bar). I'm not reposting the images for now but I have updated my config to fix this mislabel.

The config in question supports Play/Pause and Jog scrubbing using the Forward/Reverse 10sec IR command.

The config also supports Forward/Reverse but as ATV transport does not work like any other real-world transport with regard to speed up/slow down of transport,


If you look closely, you will see I've added the +/- buttons to left/right of Forward and Reverse operations on one of the pages.

The +/- buttons, if pressed, simply send Cursor Left/Right which either increases or decreases the jog speed. I've provided a writeup below as to why this was necessary.

One would expect that a transport might behave as follows.
Press Forward (Initiates FF @ 1X)
Press Forward (Increases FF to 2X)
Press Reverse (Decreases FF to 1X)
Press Forward (Increases FF to 2X)
Press Forward (Increases FF to 3X)
Press Forward (Increases FF to 4X)
Press Reverse (Decreases FF to 3X)
Press Reverse (Decreases FF to 2X)
Press Reverse (Decreases FF to 1X)
Press Forward (Increases FF to 2X)
Press Forward (Increases FF to 3X)
Press Reverse (Decreases FF to 2X)
Press Reverse (Decreases FF to 1X)
Press Reverse (Resume playback at normal speed)

Instead, ATV (I am currently running TVOS 14.7) behaves as follows - If you are using the Siri Remote or iPhone/iPad, you simply touch the center of the glass/touchpad and then jog left or right - Easy-peasy. However, if you need to do this via Infrared, things don't work like one would expect.

The behavior below is counter-intuitive to everything we know about Playback Transport Control. Once you start FF or REW, you must send the Forward or Reverse IR command 4 additional times to resume normal playback which means you likely will go Forward or Backward much farther than you really wanted.

Here's what happens when you send IR commands to FF (Fast Forward). Assume we are starting this sequence while something is Playing.

Press Forward (Initiates FF @ 1X)
Press Forward (Increases FF to 2x)
Press Forward (Increases FF to 3X)
Press Reverse (***Increases FF to 4X)
Press Reverse or Forward (***Resumes Playback at normal speed)

OR

Press Reverse (Initiates REW @ 1X)
Press Reverse (Increases REW to 2x)
Press Forward (***Increases REW to 3X)
Press Forward (***Increases REW to 4X)
Press Reverse Forward (Resumes Playback at normal speed)

Through trial and error, I determined is that once you press Forward or Reverse, if you send Cursor Left or Right, the speed in increased or decreased as expected from a normal transport.

Press Forward (Initiates FF @ 1X)
Press Forward Or Cursor Right(Increases FF to 2X)
Press Cursor Left (Decreases FF to 1X)
Press Forward Or Cursor Right (Increases FF to 2X)
Press Forward Or Cursor Right (Increases FF to 3X)
Press Forward Or Cursor Right (Increases FF to 4X)
Press Cursor Left (Decreases FF to 3X)
Press Cursor Left (Decreases FF to 2X)
Press Cursor Left (Decreases FF to 1X)
Press Forward Or Cursor Right (Increases FF to 2X)
Press Forward Or Cursor Right (Increases FF to 3X)
Press Cursor Left (Decreases FF to 2X)
Press Cursor Left (Decreases FF to 1X)
Press Cursor Left (Resume playback at normal speed)


If, while the ScreenSaver is active the following behavior was observed.

Cursor Up - Shows you the description of the current ScreenSaver video.
Cursor Left - Moves to the previous ScreenSaver video.
Cursor Right - Moves to the next ScreenSaver video.


I hope this information benefits someone who might be doing an ATV integration.

Last edited by Lyndel McGee on September 5, 2021 16:40.
Lyndel McGee
Philips Pronto Addict/Beta Tester
Post 2 made on Monday August 30, 2021 at 03:30
Twelfth Monkey
Long Time Member
Joined:
Posts:
November 2016
117
If I had an Apple TV, I'm sure I'd find his priceless!
OP | Post 3 made on Sunday September 5, 2021 at 16:41
Lyndel McGee
RC Moderator
Joined:
Posts:
August 2001
13,059

2021 Apple TV Codes

These are all the known working codes as of TVOS 14.7

Apple IR Protocol

Apple codes use a specialized version of the NEC protocol and contain a checksum bit and an 8 bit Pair ID and devices 224, 229, and 238. Device 224 is used for Pairing and normally not needed. The codes below were generated with IR Scrutiner's Apple Protocol.

Many thanks to RC User 'Barf' who is the originator of IRScrutinizer and worked with me to iron out details with regard to proper handling of checksum bit across both Device 229 and 238 in the Apple Protocol.


All codes here use Pair ID 254. They span Devices 229 and 238. Some functions are present in both Device 229 and Device 238 appear to behave the same.
SELECT is one of those as an example. My configuration uses the code from Device 229 if it is available.


For the codes listed below, the Device and Function notations are in decimal (Base 10) instead of hexadecimal (Base 16). i.e. 032 is decimal 32 and not hexadecimal 32 (which is decimal 50).
The format of the codes below is DDD_FFF_FUNCTION_NAME where DDD is the Device Number and FFF is the Function Number.



Device 229 Pair ID 254


229_001_CURSOR_UP
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 05CB 015B 0057 0016 0E6C

229_002_CURSOR_DOWN
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 05CB 015B 0057 0016 0E6C

229_003_CURSOR_LEFT
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_004_CURSOR_RIGHT
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0016 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 05CB 015B 0057 0016 0E6C

229_005_SELECT
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_008_UNKNOWN_A (ATV accepts command but does nothing as of TVOS14.7)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0016 0016 0016 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 05CB 015B 0057 0016 0E6C

229_009_UNKNOWN_B (ATV accepts command but does nothing as of TVOS14.7)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_011_PLAY_DISPLAY (This appears to be a discrete Play if Paused. If Playing, will pop up display. However, if sent multiple times, the ATV will not act on command if sent another time within 5 seconds. Each resend resets the 5 second wait period.)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_013_FORWARD (Fast Foward)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_014_REVERSE (Rewind)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_017_CHANNEL_UP (Reportedly works on some EU IPTV apps - In US, Apple Music Library, this will change track.)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_018_CHANNEL_DOWN (Reportedly works on some EU IPTV apps - In US, Apple Music Library, this will change track.)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_019_10_SECONDS_REVERSE
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_020_UNKNOWN_F (ATV accepts command but does nothing as of TVOS15)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_021_DISCRETE_POWER_OFF (Immediate)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_022_DISCRETE_POWER_ON (Immediate - If ATV is powered on, does nothing - Use this instead of Menu to prevent jumping back if ATV is already on.)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_023_10_SECONDS_FORWARD
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0041 0016 0016 0016 0041 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 051E 015B 0057 0016 0E6C

229_024_PAUSE (Discrete ATV pauses if Playing)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0016 0016 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_025_PAUSE_ALTERNATE (Behaves same as PAUSE as of TVOS14.7 - Discrete ATV pauses if Playing)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0016 0016 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_032_HOME (A Short press takes you home. A Long press presents the Sleep Menu - Just like Siri Remote)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 05CB 015B 0057 0016 0E6C

229_033_HOME_ALTERNATE (Behaves same as HOME as of TVOS14.7 A Short press takes you home. A Long press presents the Sleep Menu - Just like Siri Remote)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_035_UNKNOWN_C (ATV accepts command but does nothing as of TVOS14.7)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_036_UNKNOWN_D (ATV accepts command but does nothing as of TVOS14.7)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

229_037_UNKNOWN_E (ATV accepts command but does nothing as of TVOS14.7)
0000 006C 0022 0002 015B 00AD 0016 0041 0016 0016 0016 0041 0016 0016 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 0041 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

Device 238 Pair ID 254


238_001_MENU
0000 006C 0022 0002 015B 00AD 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 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

238_003_CURSOR_RIGHT_ALTERNATE (Appears to behaves same as CURSOR_RIGHT as of TVOS14.7)
0000 006C 0022 0002 015B 00AD 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 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

238_004_CURSOR_LEFT_ALTERNATE (Appears to behaves same as CURSOR_LEFT as of TVOS14.7)
0000 006C 0022 0002 015B 00AD 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 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

238_005_CURSOR_UP_ALTERNATE (Appears to behaves same as CURSOR_UP as of TVOS14.7)
0000 006C 0022 0002 015B 00AD 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 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

238_006_CURSOR_DOWN_ALTERNATE (Appears to behaves same as CURSOR_DOWN as of TVOS14.7)
0000 006C 0022 0002 015B 00AD 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 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

238_007_SCREEN_SHOT_A (Takes a screen shot that only Mac users can obtain)
0000 006C 0022 0002 015B 00AD 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 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 051E 015B 0057 0016 0E6C

238_011_VIDEO_RESOLUTION_CHANGE (Change Video Resolution Menu)
0000 006C 0022 0002 015B 00AD 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 0041 0016 0016 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 051E 015B 0057 0016 0E6C

20240621 - IMPORTANT - REBOOT_FAULT_A - On TVOS 17.4, this causes the ATV to do a system reboot as with previous TVOS releases. ATV will reboot and resume normal operation. See note on codes REBOOT_FAULT_B and REBOOT_FAULT_C below.


238_012_REBOOT_FAULT_A (Causes a reboot which internally generates a stack trace which can be sent to Apple)
0000 006C 0022 0002 015B 00AD 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 0016 0016 0041 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

238_046_SELECT_ALTERNATE (Appears to behaves same as SELECT as of TVOS14.7)
0000 006C 0022 0002 015B 00AD 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 0041 0016 0016 0016 0041 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 051E 015B 0057 0016 0E6C

238_047_PLAY_PAUSE
0000 006C 0022 0002 015B 00AD 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 0041 0016 0041 0016 0041 0016 0016 0016 0041 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 04C7 015B 0057 0016 0E6C

20240621 - WARNING - REBOOT_FAULT_B - On TVOS 17.4, this causes the ATV to do a system restore and requires an IPhone with at least IOS16 on it. User is prompted to enter a code on the phone. If you remove power during this procedure, you will 'brick' the Apple TV.

See this link.
[Link: support.apple.com]

238_048_REBOOT_FAULT_B (Causes a reboot which internally generates a stack trace which can be sent to Apple)
0000 006C 0022 0002 015B 00AD 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 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0575 015B 0057 0016 0E6C

20240621 - WARNING - REBOOT_FAULT_C - On TVOS 17.4, this causes the ATV to do a system restore and requires an IPhone with at least IOS16 on it. User is prompted to enter a code on the phone. If you remove power during this procedure, you will 'brick' the Apple TV.

See this link.
[Link: support.apple.com]


238_049_REBOOT_FAULT_C (Causes a reboot which internally generates a stack trace which can be sent to Apple)
0000 006C 0022 0002 015B 00AD 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 0041 0016 0041 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 051E 015B 0057 0016 0E6C

238_050_SCREEN_SHOT_B (Takes a screen shot that only Mac users can obtain)
0000 006C 0022 0002 015B 00AD 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 0041 0016 0041 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 051E 015B 0057 0016 0E6C

Revision Notes:
20220211 -Added new UNKNOWN_F command above @ 229_020.

Edited function title/description text for 229_025, 036, 037.
Confirmed the codes for each were correct. Only the function number text was wrong.

20240422 - Updated 238_001_MENU with correct code. Previously was a code in the 229 device 229_037

Last edited by Lyndel McGee on June 24, 2024 23:03.
Lyndel McGee
Philips Pronto Addict/Beta Tester
Post 4 made on Monday September 13, 2021 at 10:13
sebastian
Long Time Member
Joined:
Posts:
September 2003
93
Finally got around to testing these codes with my 1st gen ATV 4K.
They work perfectly, thanks a lot! :)
The discrete power on/off codes are very helpful!

The only thing that I'm missing would be that "TV" key that lets you quickly switch between accounts.
But apparently there is no IR version of it.

Sebastian
OP | Post 5 made on Monday September 13, 2021 at 22:02
Lyndel McGee
RC Moderator
Joined:
Posts:
August 2001
13,059
Sebastian,

Is this what you are referring to?

[Link: support.apple.com]

If so, All you need to do in Pronto MyDatabase is duplicate the 'HOME' function component function to Home(1s) and then set the Duration of this new Component Function to 1s. Upon a press, this will take you directly to the Control Center.

I do this in a Macro.

HOME(1s)
Delay 0.1s

You can also create custom macros to browse/kill apps.

HOME
Delay 0.1s
HOME

Will initiate Browse mode.

CURSOR_UP
Delay 0.1s
CURSOR_UP

Will kill the current app once in Browse mode.

Last edited by Lyndel McGee on September 13, 2021 22:18.
Lyndel McGee
Philips Pronto Addict/Beta Tester
Post 6 made on Tuesday September 14, 2021 at 13:22
sebastian
Long Time Member
Joined:
Posts:
September 2003
93
That was what I was referring to and with the 1s duration it works exactly as you described it.
Neat! :-D

[I also became aware (again, probably) that you can hold a hard button down to get a longer send duration, but the same does not seem to work with a "virtual" key.
So I can map 'HOME' to a hard button and just hold it for 1 second while I need to configure a specific 'HOME_1s' command with a 1.0s duration it I want to put it
on an LCD button.]

Sebastian
OP | Post 7 made on Tuesday September 14, 2021 at 19:03
Lyndel McGee
RC Moderator
Joined:
Posts:
August 2001
13,059
For me, it also works for LCD buttons but NOT if you have both ProntoScript and an Action.

Consider ButtonA with an ActionList containing single action AppleTV-Home.
This will work allow PressAndHold.

However, if you set ProntoScript for this button and the have the script do:
this.executeActions();
or
this.scheduleActions();

Then, there is no PressAndHold available.

Is there some other meaning of your "virtual" key? PEP3 Page Overlays perhaps?

With regard to a press and hold, for HOME, I add the IR action and then the delay of 0.1s just to keep it from press and repeat. Then, when I want to go to the control panel, I explicitly invoke my HOME(1s) followed by the delay of 0.1s.

I typically have no reason to go to the Control Panel (Sleep Menu as I think I called it in the images above), especially since we now have Discrete Power Off.

Around tvOS14.4, a learned IR command for the 'Stop' function would do the Power Off.

Same for a learned IR command for the 'Next' function (Play Symbol followed by |), it would function as Home.

Then, alas they took those away in 14.5. But now, who cares as we have the real codes that do what we need. :-)

Last edited by Lyndel McGee on September 14, 2021 22:57.
Lyndel McGee
Philips Pronto Addict/Beta Tester
Post 8 made on Wednesday September 15, 2021 at 12:31
sebastian
Long Time Member
Joined:
Posts:
September 2003
93
You're right - holding down one of the keys on the display does also work.
Upon checking I noticed that I had a wrong key configured, that's why holding it down did not bring the expected result ;)

Sebastian
Post 9 made on Wednesday September 22, 2021 at 18:53
ask4mikie
Long Time Member
Joined:
Posts:
February 2011
30
Lyndel,

Could you clarify the meaning of Device 229 and 238? And also Pair ID 254? Sorry for the basic questions, but I feel like I got to class late and missed some important information!

Mike
OP | Post 10 made on Wednesday September 22, 2021 at 19:11
Lyndel McGee
RC Moderator
Joined:
Posts:
August 2001
13,059
Unfortunately, I don't have time at this moment to provided a detailed writeup explaining the NEC IR Protocol or how Apple extends it.

You don't really need to use this information unless you have a need/desire to use IR Scrutinizer to generate a code for a function that is not provided here. Just use the codes as-is.
Lyndel McGee
Philips Pronto Addict/Beta Tester
Post 11 made on Wednesday September 22, 2021 at 19:38
ask4mikie
Long Time Member
Joined:
Posts:
February 2011
30
Cool. Sorry to bother you.
OP | Post 12 made on Thursday September 23, 2021 at 18:37
Lyndel McGee
RC Moderator
Joined:
Posts:
August 2001
13,059
On September 22, 2021 at 19:38, ask4mikie said...
Cool. Sorry to bother you.

It's not a bother, just that I'm kinda swamped at work and an answer explaining the NEC IR protocol is not a 1 or 2 liner.

The first paragraph above, I thought would cover what folks wanted to know and never expected anyone would want an explanation of how to decode the actual data in the IR codes I posted. :-)

Apple IR Protocol


Apple codes use a specialized version of the NEC protocol and contain a checksum bit and an 8 bit Pair ID and devices 224, 229, and 238. Device 224 is used for Pairing and normally not needed. The codes below were generated with IR Scrutiner's Apple Protocol.

Apple Protocol is such that it includes a
8 bit Device (0-255)
8 bit Subdevice (0-255)
1 bit Checksum (0 or 1)
7 bit Function (0-127)
8 bit Pair ID. (0-255)

Altogether, these make up 32 bits total and is why the Apple Protocol is an extension of the NEC protocol.

NEC protocol is 32 bits broken apart normally as:

8 bit Device (0-255)
8 bit Device Complement (1s complement where 1 bits become 0) (0-255)
8 bit Function (0-255)
8 bit Function Complement (1s complement where 1 bits become 0) (0-255)


If you'd like to dig into how to decode the IR codes I posted, I can highly recommend Barry Gordon's very old document that describes the original NEC format. You can find the HTML version here.

[Link: remotecentral.com]

It's also available as a Word doc under the User Written documentation of the Classic Pronto Files section here.

[Link: files.remotecentral.com]

Last edited by Lyndel McGee on September 23, 2021 20:33.
Lyndel McGee
Philips Pronto Addict/Beta Tester
Post 13 made on Wednesday September 29, 2021 at 19:14
flagmaster
Junior Member
Joined:
Posts:
September 2021
20
You sir are my hero of the day! Thank you
OP | Post 14 made on Friday February 11, 2022 at 23:05
Lyndel McGee
RC Moderator
Joined:
Posts:
August 2001
13,059
EDIT 20220211.

Added new UNKNOWN_F command above @ 229_020.

Edited function values in 229_025, 036, 037 descriptions as there were some typos. Confirmed the codes for each were correct. Only the function numbers were wrong.

Last edited by Lyndel McGee on February 11, 2022 23:41.
Lyndel McGee
Philips Pronto Addict/Beta Tester
Post 15 made on Saturday February 12, 2022 at 22:19
randman
Long Time Member
Joined:
Posts:
June 2003
435
I took another approach with my Pronto and Apple TV. You may know this already - it's possible to teach the Apple TV remote commands. Basically, I took an unused remote, and had Pronto learn its commands. Then, I had Apple TV learn the commands from my Pronto. Another nice thing about the "learn" feature of the Apple TV allows is that it provides more buttons than even an Apple remote has. This approach was the most reliable for me. The one disadvantage is if you have more than one Apple TV - each Apple TV needs to be taught the IR commands from the Pronto. Also, I never did have a solution for Power Off. I relied on the Apple TV falling asleep after idling for a while. I'll try the Power Off command mentioned above.
Page 1 of 3


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