Difference between revisions of "Philips Pronto"
(→Introduction) |
m (remove links) |
||
Line 14: | Line 14: | ||
=== lircd.conf === | === lircd.conf === | ||
− | The first thing I had to do was tell lirc how to receive commands from my remote control. Initially, I had planned to grab another remote control configuration file and modify it for my uses. But because a Pronto can have an unlimited number of buttons, I couldn't find any configuration files with enough hex codes to easily modify. So I grabbed the remote that came with my | + | The first thing I had to do was tell lirc how to receive commands from my remote control. Initially, I had planned to grab another remote control configuration file and modify it for my uses. But because a Pronto can have an unlimited number of buttons, I couldn't find any configuration files with enough hex codes to easily modify. So I grabbed the remote that came with my Hauppauge PVR-250 , and used lirc to read the hex code from one of its buttons. From there, I created my own hex set, which I programmed into both the remote control (in the PCF file) and into the following lirc.conf file. |
<pre> | <pre> |
Latest revision as of 01:26, 12 September 2010
Contents
Introduction
The Philips Pronto line of remotes provide more flexibility than any other remote control I've seen. Unfortunately, this flexibility comes at a cost -- Pronto remotes aren't cheap. So when I first set up MythTV, I decided on a relatively cheap version, the Pronto TSU-3000, also known as the Pronto NG. This particular version doesn't come in full color (as some of the others do) but it certainly has enough bells and whistles to meet any demand I could throw at it. One thing I would definitely recommend is the optional charging base. (Philips markets the base as optional, but without it, the batteries will die every couple of days. It isn't really feasible to use the remote without a charger.)
While the Pronto allows the user to program any number of buttons in any configuration, and program each of those buttons to send any combination of signals, the options can be daunting.
To start, I spent some time figuring out what size of buttons works best, and how many buttons I could fit on a screen without accidentally hitting the wrong buttons. I also had to figure out what graphics are the most visible in grayscale. (Although many of the Pronto models have color LCD screens, mine provides 16-shades of grayscale.) This page details the end result, with a working Pronto.
Pronto NG PCF Configuration
I wanted a full-feature remote control, complete with keyboard characters (upper and lower cased), a number pad, and video control keys. After doing a considerable amount of playing, I created a template that gives all my components a common look and feel. I finally ended up with this Pronto NG PCF configuration, which can be viewed, edited, and demoed with freely downloadable software by following the "PC Software" link on the Philips main pages for the Pronto NG.
Lirc Configuration Files
After having an idea of how I wanted my remote control to work, I had to get it to actually send the correct signals to the MythTV box, and get MythTV to recognize said signals.
lircd.conf
The first thing I had to do was tell lirc how to receive commands from my remote control. Initially, I had planned to grab another remote control configuration file and modify it for my uses. But because a Pronto can have an unlimited number of buttons, I couldn't find any configuration files with enough hex codes to easily modify. So I grabbed the remote that came with my Hauppauge PVR-250 , and used lirc to read the hex code from one of its buttons. From there, I created my own hex set, which I programmed into both the remote control (in the PCF file) and into the following lirc.conf file.
# brand: lirc.conf # model no. of remote control: Pronto TSU-3000 # begin remote name PhilipsPronto bits 13 flags RC5 eps 30 aeps 100 one 0 0 zero 0 0 gap 200966 repeat_bit 2 begin codes Power 0x0000000000001F80 ArrowUp 0x0000000000001F81 ArrowDown 0x0000000000001F82 ArrowLeft 0x0000000000001F83 ArrowRight 0x0000000000001F84 Action 0x0000000000001F85 Menu 0x0000000000001F86 Info 0x0000000000001F87 Esc 0x0000000000001F88 Underscore 0x0000000000001F89 Zero 0x0000000000001F90 One 0x0000000000001F91 Two 0x0000000000001F92 Three 0x0000000000001F93 Four 0x0000000000001F94 Five 0x0000000000001F95 Six 0x0000000000001F96 Seven 0x0000000000001F97 Eight 0x0000000000001F98 Nine 0x0000000000001F99 Play 0x0000000000001Fa0 Replay 0x0000000000001Fa1 CommSkipFwd 0x0000000000001Fa2 JumpBack 0x0000000000001Fa3 Rewind 0x0000000000001Fa4 FastForward 0x0000000000001Fa5 JumpForward 0x0000000000001Fa6 Stop 0x0000000000001Fa7 Record 0x0000000000001Fa8 Pause 0x0000000000001Fa9 CommSkipBack 0x0000000000001Fae ChanHistory 0x0000000000001Fb0 PIP_On 0x0000000000001Fb1 PIP_Focus 0x0000000000001Fb2 PIP_Swap 0x0000000000001Fb3 Aspect 0x0000000000001Fb4 CaptCardToggle 0x0000000000001Fb5 Tab 0x0000000000001F00 Ctrl 0x0000000000001F01 Alt 0x0000000000001F02 Space 0x0000000000001F03 Shift 0x0000000000001F04 Enter 0x0000000000001F05 Backspace 0x0000000000001F06 - 0x0000000000001F07 . 0x0000000000001F09 , 0x0000000000001F0a ( 0x0000000000001F0b ) 0x0000000000001F0c ' 0x0000000000001F0d " 0x0000000000001F0e < 0x0000000000001F0f > 0x0000000000001F10 / 0x0000000000001F11 \ 0x0000000000001F12 ~ 0x0000000000001F13 ! 0x0000000000001F14 @ 0x0000000000001F15 Hash 0x0000000000001F16 $ 0x0000000000001F17 % 0x0000000000001F18 ^ 0x0000000000001F19 & 0x0000000000001F1a * 0x0000000000001F1b + 0x0000000000001F1c = 0x0000000000001F1d [ 0x0000000000001F1e ] 0x0000000000001F1f | 0x0000000000001F20 : 0x0000000000001F21 ? 0x0000000000001F22 F1 0x0000000000001F30 F2 0x0000000000001F31 F3 0x0000000000001F32 F4 0x0000000000001F33 F5 0x0000000000001F34 F6 0x0000000000001F35 F7 0x0000000000001F36 F8 0x0000000000001F37 F9 0x0000000000001F38 F10 0x0000000000001F39 F11 0x0000000000001F3a F12 0x0000000000001F3b a 0x0000000000001F40 b 0x0000000000001F41 c 0x0000000000001F42 d 0x0000000000001F43 e 0x0000000000001F44 f 0x0000000000001F45 g 0x0000000000001F46 h 0x0000000000001F47 i 0x0000000000001F48 j 0x0000000000001F49 k 0x0000000000001F4a l 0x0000000000001F4b m 0x0000000000001F4c n 0x0000000000001F4d o 0x0000000000001F4e p 0x0000000000001F4f q 0x0000000000001F50 r 0x0000000000001F51 s 0x0000000000001F52 t 0x0000000000001F53 u 0x0000000000001F54 v 0x0000000000001F55 w 0x0000000000001F56 x 0x0000000000001F57 y 0x0000000000001F58 z 0x0000000000001F59 A 0x0000000000001F60 B 0x0000000000001F61 C 0x0000000000001F62 D 0x0000000000001F63 E 0x0000000000001F64 F 0x0000000000001F65 G 0x0000000000001F66 H 0x0000000000001F67 I 0x0000000000001F68 J 0x0000000000001F69 K 0x0000000000001F6a L 0x0000000000001F6b M 0x0000000000001F6c N 0x0000000000001F6d O 0x0000000000001F6e P 0x0000000000001F6f Q 0x0000000000001F70 R 0x0000000000001F71 S 0x0000000000001F72 T 0x0000000000001F73 U 0x0000000000001F74 V 0x0000000000001F75 W 0x0000000000001F76 X 0x0000000000001F77 Y 0x0000000000001F78 Z 0x0000000000001F79 end codes end remote
lircrc config
And finally, I created a custom lirc config file for the buttons I had created:
# ~/.mythtv/lircrc # # MythTV native LIRC config file # Channel Up begin prog = mythtv button = ArrowUp repeat = 3 config = Up end # Channel Down begin prog = mythtv button = ArrowDown repeat = 3 config = Down end # Channel History begin prog = mythtv button = ChanHistory repeat = 3 config = H end # Video Capture Card Toggle begin prog = mythtv button = CaptCardToggle repeat = 3 config = Y end # Left begin prog = mythtv button = ArrowLeft repeat = 3 config = Left end # Right begin prog = mythtv button = ArrowRight repeat = 3 config = Right end # OK/Select begin prog = mythtv button = Action config = Space end # Play begin prog = mythtv button = Play config = Return end # Stop begin prog = mythtv button = Stop config = Esc end # Escape/Exit/Back begin prog = mythtv button = Esc config = Esc end # Power Off/Exit begin prog = irxevent button = Power config = /home/mythtv/bin/mythpowerbutton.sh end # Pause begin prog = mythtv button = Pause repeat = 3 config = P end # Fast forward (30 sec default) begin prog = mythtv button = FastForward repeat = 3 config = Right end # Rewind (10 sec default) begin prog = mythtv button = Rewind repeat = 3 config = Left end # Skip forward (10 min default) begin prog = mythtv button = JumpForward repeat = 3 config = PgDown end # Skip backward (10 min default) begin prog = mythtv button = JumpBack repeat = 3 config = PgUp end # Record begin prog = mythtv button = Record repeat = 3 config = R end # Display EPG while in live TV, # View selected show while in EPG begin prog = mythtv button = Menu repeat = 3 config = M end # Bring up OSD info begin prog = mythtv button = Info repeat = 3 config = I end # Change display aspect ratio begin prog = mythtv button = Aspect repeat = 3 config = W end # Seek to next commercial cut point begin prog = mythtv button = CommSkipFwd repeat = 3 config = Z end # Seek to previous commercial cut point begin prog = mythtv button = CommSkipBack repeat = 3 config = Q end # Backspace begin prog = mythtv button = Backspace repeat = 3 config = ? end # Enter begin prog = mythtv button = Enter repeat = 3 config = end # Space begin prog = mythtv button = Space repeat = 3 config = Space end # Plus begin prog = mythtv button = + repeat = 3 config = + end # Minus begin prog = mythtv button = - repeat = 3 config = - end # Minus begin prog = mythtv button = - repeat = 3 config = - end # Underscore begin prog = mythtv button = Underscore repeat = 3 config = _ end # Left Paren begin prog = mythtv button = ( repeat = 3 config = ( end # Right Paren begin prog = mythtv button = ) repeat = 3 config = ) end # Less Than begin prog = mythtv button = < repeat = 3 config = < end # Greater Than begin prog = mythtv button = > repeat = 3 config = > end # Tilda begin prog = mythtv button = ~ repeat = 3 config = ~ end # Exclamation begin prog = mythtv button = ! repeat = 3 config = ! end # @ begin prog = mythtv button = @ repeat = 3 config = @ end # + begin prog = mythtv button = + repeat = 3 config = + end # = begin prog = mythtv button = = repeat = 3 config = = end # | begin prog = mythtv button = | repeat = 3 config = | end # ? begin prog = mythtv button = ? repeat = 3 config = ? end # Numbers 0-9 begin prog = mythtv button = Zero repeat = 3 config = 0 end begin prog = mythtv button = One repeat = 3 config = 1 end begin prog = mythtv button = Two repeat = 3 config = 2 end begin prog = mythtv button = Three repeat = 3 config = 3 end begin prog = mythtv button = Four repeat = 3 config = 4 end begin prog = mythtv button = Five repeat = 3 config = 5 end begin prog = mythtv button = Six repeat = 3 config = 6 end begin prog = mythtv button = Seven repeat = 3 config = 7 end begin prog = mythtv button = Eight repeat = 3 config = 8 end begin prog = mythtv button = Nine repeat = 3 config = 9 end # Function Keys begin prog = mythtv button = F1 repeat = 3 config = F1 end begin prog = mythtv button = F2 repeat = 3 config = F2 end begin prog = mythtv button = F3 repeat = 3 config = F3 end begin prog = mythtv button = F4 repeat = 3 config = F4 end begin prog = mythtv button = F5 repeat = 3 config = F5 end begin prog = mythtv button = F6 repeat = 3 config = F6 end begin prog = mythtv button = F7 repeat = 3 config = F7 end begin prog = mythtv button = F8 repeat = 3 config = F8 end begin prog = mythtv button = F9 repeat = 3 config = F9 end begin prog = mythtv button = F10 repeat = 3 config = F10 end begin prog = mythtv button = F11 repeat = 3 config = F11 end begin prog = mythtv button = F12 repeat = 3 config = F12 end # Alphabet a-z A-Z begin prog = mythtv button = a repeat = 3 config = a end begin prog = mythtv button = b repeat = 3 config = b end begin prog = mythtv button = c repeat = 3 config = c end begin prog = mythtv button = d repeat = 3 config = d end begin prog = mythtv button = e repeat = 3 config = e end begin prog = mythtv button = f repeat = 3 config = f end begin prog = mythtv button = g repeat = 3 config = g end begin prog = mythtv button = h repeat = 3 config = h end begin prog = mythtv button = i repeat = 3 config = i end begin prog = mythtv button = j repeat = 3 config = j end begin prog = mythtv button = k repeat = 3 config = k end begin prog = mythtv button = l repeat = 3 config = l end begin prog = mythtv button = m repeat = 3 config = m end begin prog = mythtv button = n repeat = 3 config = n end begin prog = mythtv button = o repeat = 3 config = o end begin prog = mythtv button = p repeat = 3 config = p end begin prog = mythtv button = q repeat = 3 config = q end begin prog = mythtv button = r repeat = 3 config = r end begin prog = mythtv button = s repeat = 3 config = s end begin prog = mythtv button = t repeat = 3 config = t end begin prog = mythtv button = u repeat = 3 config = u end begin prog = mythtv button = v repeat = 3 config = v end begin prog = mythtv button = w repeat = 3 config = w end begin prog = mythtv button = x repeat = 3 config = x end begin prog = mythtv button = y repeat = 3 config = y end begin prog = mythtv button = z repeat = 3 config = z end begin prog = mythtv button = A repeat = 3 config = A end begin prog = mythtv button = B repeat = 3 config = B end begin prog = mythtv button = C repeat = 3 config = C end begin prog = mythtv button = D repeat = 3 config = D end begin prog = mythtv button = E repeat = 3 config = E end begin prog = mythtv button = F repeat = 3 config = F end begin prog = mythtv button = G repeat = 3 config = G end begin prog = mythtv button = H repeat = 3 config = H end begin prog = mythtv button = I repeat = 3 config = I end begin prog = mythtv button = J repeat = 3 config = J end begin prog = mythtv button = K repeat = 3 config = K end begin prog = mythtv button = L repeat = 3 config = L end begin prog = mythtv button = M repeat = 3 config = M end begin prog = mythtv button = N repeat = 3 config = N end begin prog = mythtv button = O repeat = 3 config = O end begin prog = mythtv button = P repeat = 3 config = P end begin prog = mythtv button = Q repeat = 3 config = Q end begin prog = mythtv button = R repeat = 3 config = R end begin prog = mythtv button = S repeat = 3 config = S end begin prog = mythtv button = T repeat = 3 config = T end begin prog = mythtv button = U repeat = 3 config = U end begin prog = mythtv button = V repeat = 3 config = V end begin prog = mythtv button = W repeat = 3 config = W end begin prog = mythtv button = X repeat = 3 config = X end begin prog = mythtv button = Y repeat = 3 config = Y end begin prog = mythtv button = Z repeat = 3 config = Z end begin prog = mythtv button = [ repeat = 3 config = [ end begin prog = mythtv button = ] repeat = 3 config = ] end begin prog = mythtv button = ; repeat = 3 config = ; end begin prog = mythtv button = ' repeat = 3 config = ' end begin prog = mythtv button = " repeat = 3 config = " end begin prog = mythtv button = , repeat = 3 config = , end begin prog = mythtv button = . repeat = 3 config = . end begin prog = mythtv button = / repeat = 3 config = / end begin prog = mythtv button = \ repeat = 3 config = \ end ### MPlayer lirc setup # Show OSD begin prog = mplayer button = MENU repeat = 3 config = osd end # Pause playback begin prog = mplayer button = PAUSE repeat = 3 config = pause end # Skip ahead a minute if playing # If paused, resume playing begin prog = mplayer button = PLAY repeat = 3 config = seek +1 end # Stop playback and exit begin prog = mplayer button = Esc repeat = 3 config = quit end # Stop playback and exit begin prog = mplayer button = STOP repeat = 3 config = quit end # Mute begin prog = mplayer button = MUTE repeat = 3 config = mute end # Seek back 10 seconds begin prog = mplayer button = Rewind repeat = 3 config = seek -10 end # Seek forward 30 seconds begin prog = mplayer button = FastForward repeat = 3 config = seek +30 end # Seek forward 10 minutes begin prog = mplayer button = JumpForward repeat = 3 config = seek +600 end # Seek backward 10 minutes begin prog = mplayer button = JumpBack repeat = 3 config = seek -600 end # Toggle full-screen begin prog = mplayer button = Aspect repeat = 3 config = vo_fullscreen end ### Xine lirc setup begin prog = xine button = Play repeat = 3 config = Play end begin prog = xine button = Stop repeat = 3 config = Stop end begin prog = xine button = Esc repeat = 3 config = Quit end begin prog = xine button = Pause repeat = 3 config = Pause end begin prog = xine button = ArrowUp repeat = 3 config = EventUp end begin prog = xine button = ArrowDown repeat = 3 config = EventDown end begin prog = xine button = ArrowLeft repeat = 3 config = EventLeft end begin prog = xine button = ArrowRight repeat = 3 config = EventRight end begin prog = xine button = Action repeat = 3 config = EventSelect end begin prog = xine button = Menu repeat = 3 config = Menu end begin prog = xine button = FastForward repeat = 3 #config = SpeedFaster config = SeekRelative+60 end begin prog = xine button = Rewind repeat = 3 #config = SpeedSlower config = SeekRelative-60 end begin prog = xine button = Menu repeat = 3 config = RootMenu end begin prog = xine button = JumpForward repeat = 3 config = EventNext end begin prog = xine button = JumpBack repeat = 3 config = EventPrior end begin prog = xine button = Info repeat = 3 config = OSDStreamInfos end
--0verdrive 11:00, 6 September 2006 (UTC)