View previous topic :: View next topic |
Author |
Message |
jeajea
Joined: 24 Feb 2010 Posts: 283 Location: USA |
Posted: Mon Jan 07, 2013 5:29 pm Post subject: Extended RCA RCRP05B LKP timing issues |
|
|
I am using the latest version of RMIR and version 1.05 of the extender,
My TV requires a delay of approximately 9.5 seconds after it is turned on before you can select an input. I use toadtog 2 to remember if the TV is on or off to determine if the delay is required.
TV phantom 4 toadtog test calls TV discrete on followed by a 9.5 second pause (TV phantom 1) if the TV is currently off.
For each device I am currently using I have setup a LKP(2) on “key” phantom3. A short key press does nothing. A long key press turns on any required devices and sets the inputs on the TV, AVR and my HDMI switch. Global macro phantom6 is used to turn on the TV if required. Global phantom6 calls TV phantom4 toadtog test which provides the delay if the TV is currently off. The inputs are set after the call to Phantom 6.
If I hold down the device key too long when the TV is off it appears the LKP is killed and the inputs are not set. If I don’t hold down the device key long enough the short press does nothing (as expected).
Is there something I can change to make the device keys less time sensitive? Having to either always turn on the TV first or hit the device button a second time is not very user friendly.
My rmir file is here.
http://www.hifi-remote.com/forums/dload.php?action=file&file_id=11650
It is easy to tell if the LKP is working because the TV led stays on for over nine seconds.
Extended RCA RCRP05B LKP timing issues
_________________ Jim Anderson |
|
Back to top |
|
|
unclemiltie Expert
Joined: 21 Jan 2004 Posts: 1795 Location: Pittsburgh, PA |
Posted: Mon Jan 07, 2013 8:42 pm Post subject: |
|
|
The latest extender ( I think it was 1.05) has an interruptible pause. If you press a key during the pause, the pause stops. This is done with a simple scan of the keypad, so you are likely holding the key to the point where it fires the LKP and then beyond to the point where it gets to the pause.
I don't remember if I enabled a way to disable the interruptible pause. Most people wanted it to be able to disable long pauses should something wrong happen. To see if this is the issue, change the definitions to two separate keys on the LKP and see if you still have the issue. If not, my bet is that this is what is causing it. _________________ this JP1 stuff is a sickness! |
|
Back to top |
|
|
jeajea
Joined: 24 Feb 2010 Posts: 283 Location: USA |
Posted: Tue Jan 08, 2013 4:05 pm Post subject: LKP interupt workaround |
|
|
I am not sure what you mean “change the definitions to two separate keys…”.
What I did was create a 0.1 second pause for dev_CBL and dev_DVD. I put these between the TV discrete on and the 9.5 second pause. As soon as the CBL or DVD LED comes on it is safe to release the device key. This makes the LKP much more reliable so it appears that I was holding down the device key long enough to interrupt the pause.
Is there a cleaner way to fix this? The pause is always required if the TV was off so there is never a need to interrupt it. All the other pauses I use are 1 second or less so I never need to interrupt a paus. _________________ Jim Anderson |
|
Back to top |
|
|
unclemiltie Expert
Joined: 21 Jan 2004 Posts: 1795 Location: Pittsburgh, PA |
Posted: Fri Jan 11, 2013 6:36 pm Post subject: |
|
|
If you want to disable the interruptable pause in this extender, here's how to do it (this is for V1.05, the pause protocol may have moved around a bit in other versions. To find the start point for the Pause protocol look at protocol 1FB in RMIR and see where the JP instruction goes)
The interruptible pause was introduced in V1.01 of the extender.
First, how the pause works:
Code: |
0948: LD RC2,R03 28 03 ;get number of delays
094A: LDW RC0,100ms C6 C0 3B 0E ;100ms delay value
094E: CALL ScanDelay F6 41 72 ;delay, scan keypad
0951: JRNC $0955 FB 02 ;key pressed, exit
0953: DJNZ RC2, $094A 2A F5 ;delay again unless finished
0955: RET AF ;exit
|
To fix this we will remove the call to delay and then scan the keypad and replace it with just a call to the delay routine. We'll also NOP out the check for a key press so that we don't get odd results
Code: |
094E: CALL Delay F6 01 0D ;delay
0951: NOP FF
0952: NOP FF
|
The delay value for 100ms may be off by a couple of clicks since the DelayScan routine is a bit longer than just the pure delay routine, but I wouldn't worry about it.
So to do this, go into the RAW tab in IR/RMIR and change the values at $94E through $952 as above, save and re-upload to your remote. Voila, no more interruptible pause.
Ps. I have not tested this but it is relatively straightforward and should work. _________________ this JP1 stuff is a sickness! |
|
Back to top |
|
|
jeajea
Joined: 24 Feb 2010 Posts: 283 Location: USA |
Posted: Sat Jan 12, 2013 11:44 am Post subject: |
|
|
The change works. If you ever update the extender it would be nice if it
were an option in RMIR general other settings. _________________ Jim Anderson |
|
Back to top |
|
|
tranx
Joined: 13 May 2012 Posts: 682 Location: Hants, UK |
Posted: Mon Jan 14, 2013 6:40 am Post subject: |
|
|
Hi jeajea
I have looked at the RMIR image with your post to try to understand toadtogs using the examples they offer.
I have read some references to toadtogs in the manuals for extenders but have been confused about the terminology:
'test only' on Phantom4 seems conditionally to result in a branch to Phantom1, which executes a 9.5secs pause. Therefore it would seem to be 'test only' with regard to setting toadtog2 'on' or 'off', while it can cause the pause to occur if toadtog2 is 'off'. Ok so far?
Are toadtogs variables, and are they set to 'off' until 'forced on', please?
Regards
Chris |
|
Back to top |
|
|
jeajea
Joined: 24 Feb 2010 Posts: 283 Location: USA |
Posted: Mon Jan 14, 2013 11:31 am Post subject: |
|
|
Yes toad tog 2 is used to track the on / off state of the TV. If the TV state
is off discrete toad tog discrete on force on toad tog is called to turn on the TV followed by the pause.
If the TV state is on discrete on is called in case the TV isn’t actually on but the long pause is not called.
Discrete on always sends DAY+ to the TV.
DAY+ is the key assigned the TVs discrete ON value.
The initial value of all 8 toad togs should be off but to be sure I run my
master power off (phantom7) with my hand covering the front of the remote after uploading to the remote.
My current working rmir file is here
http://www.hifi-remote.com/forums/dload.php?action=file&file_id=11657 _________________ Jim Anderson |
|
Back to top |
|
|
unclemiltie Expert
Joined: 21 Jan 2004 Posts: 1795 Location: Pittsburgh, PA |
Posted: Mon Jan 14, 2013 11:49 am Post subject: |
|
|
The initial value of the ToadTog should be off... all registers are cleared when the remote is powered up.
I had toyed with the idea of being able to set a "startup value" for the ToadTog register in IR/RMIR but never could figure out why anyone would want to do something other than zero so never implemented it. Wouldn't be hard though. _________________ this JP1 stuff is a sickness! |
|
Back to top |
|
|
tranx
Joined: 13 May 2012 Posts: 682 Location: Hants, UK |
Posted: Mon Jan 14, 2013 2:09 pm Post subject: |
|
|
Thanks Jim and unclemiltie for your comments, I downloaded the current image and think i will now be able to understand things better
Chris |
|
Back to top |
|
|
bobbyt8888
Joined: 06 Feb 2004 Posts: 26
|
Posted: Mon Feb 03, 2014 8:20 am Post subject: |
|
|
jeajea wrote: | The change works. If you ever update the extender it would be nice if it
were an option in RMIR general other settings. |
Just getting back after many years. I'd like to make this mod too. In the past, I was able to modify the 8811w extender and rebuild it using the assemble in the file section.
Can someone point me to the assembler for the S3F8 processor and the source code for the RCRP05B?
Thanks.
EDIT: I just entered the op codes using the "raw data" tab but the delay doesn't seem to work. Any suggestions? |
|
Back to top |
|
|
unclemiltie Expert
Joined: 21 Jan 2004 Posts: 1795 Location: Pittsburgh, PA |
Posted: Mon Feb 03, 2014 3:55 pm Post subject: |
|
|
the source code for the JP1.3 extenders is not available
Each build of the extender moves things around a little bit, but you can easily find the address in the upgrade table
if you look in the upgrade section and find the pause protocol you will see the table entry with only a single instruction. This JP (Jump) goes to the "real" code that does the pause. It looks essentially like what is above, although the addresses may change.
$010D is the location of the delay routine in ALL of the Samsung remotes so you can do the patch by taking out the call to the delay/scan keypad routine and zapping the extra bytes with NOPs as indicated. _________________ this JP1 stuff is a sickness! |
|
Back to top |
|
|
bobbyt8888
Joined: 06 Feb 2004 Posts: 26
|
Posted: Tue Feb 04, 2014 8:33 am Post subject: |
|
|
Yes, If found the JP instruction and applied the patch as you describe but the delay is not happening.
I've read that the $01FB protocol has an inherent conflict with the base remote and that the PID must be changed to $01F0. Is this correct? If so, how do I change it? |
|
Back to top |
|
|
vickyg2003 Site Admin
Joined: 20 Mar 2004 Posts: 7073 Location: Florida |
Posted: Tue Feb 04, 2014 4:40 pm Post subject: |
|
|
Bobby you asked me directly for help.
Getting the protocol into
Are you using IR or RMIR?
If you are trying to use RMIR I'd suggest you start by tweaking the RDF.
Find the 01FB protocol in the RDF and change it to 01FB:UEI.
If you are using an extender, you shouldn't need to add the protocol, but you might need to tweak the RDF to work with RMIR. _________________ Remember to provide feedback to let us know how the problem was solved and share your upgrades.
Tip: When creating an upgrade, always include ALL functions from the oem remote, even if you never plan on assigning them to a button. Complete function lists makes an upgrade more helpful to others.
|
|
Back to top |
|
|
bobbyt8888
Joined: 06 Feb 2004 Posts: 26
|
Posted: Tue Feb 04, 2014 6:04 pm Post subject: |
|
|
Thanks for answering, Vicky. I pinged you directly since you posted the directions for changing the Pause protocol for the RCA RCRP05B.
I'm using RMIR.
I'm using the Common extender v3.02
I started by changing the RDF in two places:
1.) changed the 01FB in the special protocols section to 01FB:UEI
2.) changed the 01FB at the end of the protocol list to 01FB:UEI
Created a macro to use the delay.
Restarted RMIR and loaded the remote.
No delay. |
|
Back to top |
|
|
bobbyt8888
Joined: 06 Feb 2004 Posts: 26
|
|
Back to top |
|
|
|