JP1 Remotes Forum Index JP1 Remotes


FAQFAQ SearchSearch 7 days of topics7 Days MemberlistMemberlist UsergroupsUsergroups RegisterRegister
ProfileProfile Log in to check your private messagesLog in to check your private messages Log inLog in

Can a Dish unit be changed on the fly?
Goto page 1, 2  Next
 
Post new topic   Reply to topic    JP1 Remotes Forum Index -> JP1 - General Forum
View previous topic :: View next topic  
Author Message
ElizabethD
Advanced Member


Joined: 09 Feb 2004
Posts: 2348

                    
PostPosted: Wed Jan 31, 2007 12:04 pm    Post subject: Can a Dish unit be changed on the fly? Reply with quote

One common Dish Network Combo protocol (0002:5 aka 01E2) modified for more repeats.
The protocol is 44 bytes, added to IR.

Two KM upgrades, but question is general, so let's assume I use it to control 4 units.
Each upgrade is 42 bytes + 30 bytes of keymoves, and few more might come along.
In the upgrades, all hex command codes are identical.Byte2 values are 0 and 1, standard.
The first (of 5) fixed bytes varies with the Dish unit address.
If there were 4 upgrades, fixed bytes would be
00 00 80 40 C0
80 00 80 40 C0
40 00 80 40 C0
C0 00 80 40 C0
Is it even feasible to contemplate such change just as the executor kicks in, so that shift-3 would stuff $40, and shift-1 would stuff $00 into wherever this stuff ends up in RAM.
I could save space if that first fixed byte could vary.
Does it seriously violate the concept of "fixed"?
_________________
Liz
Tweeking 8910, HTPro/9811, C7-7800, 6131o, 6131n, AtlasOCAP-1056B01, RCA-RCRP05B and enjoying the ride Smile
Back to top
View user's profile Send private message
binky123
Expert


Joined: 14 Feb 2004
Posts: 1292

                    
PostPosted: Wed Jan 31, 2007 12:18 pm    Post subject: Reply with quote

My notes say there is a file TiVo_dynamic_unit_sel.txt that explains how to do this for the Tivo. The custom protocol dynamically changes the unit # stored in a register(rBF). This allows re-use of a upgrade protocol and not needing a separate upgrade protocol per Unit # for each TiVo.
Back to top
View user's profile Send private message
jetskier



Joined: 09 Dec 2003
Posts: 287
Location: Nevada

                    
PostPosted: Wed Jan 31, 2007 3:38 pm    Post subject: Reply with quote

Liz,

I'm in your club. I have four Dish DVr's (two 622s, one 942 and one 508). Remote addresses 1, 3, 5, and 7. My upgrade space is filled up quickly with the four. Hopefully there can be a solution for this so I don't have to cut functions out of my other upgrades to conserve space (i.e. amp, dvds, tv).
Back to top
View user's profile Send private message
ElizabethD
Advanced Member


Joined: 09 Feb 2004
Posts: 2348

                    
PostPosted: Wed Jan 31, 2007 4:45 pm    Post subject: Reply with quote

binky123, thanks for the ref. It's great, I think. So what free register would you suggest for 6131ext ?

Anyway, it's just too difficult for me.
I looked at one Tivo upgrade for 6131ext and another about Sony Tivo. In both, 3rd fixed byte is used to be replaced with another register, which replacement comes from a keymove using Advance Select protocol. At least that's what I think is going on in Hal's clever scheme.

Dish Combo protocol has no such obvious RAM slot. It takes the bytes straight from the upgrade. And I'm already lost on the 3rd line of the 12-byte executor anyway Sad So at this point I'm stuck. Considering that Hal did it for Tivo, I bet someone here would know how to, perhaps, change the Dish Combo itself to do something similar to Tivo. I maybe missing the obvious, so I'll stare at it some more.

jetskier, how d'ya get 5 & 7 in 2 bits?
_________________
Liz
Tweeking 8910, HTPro/9811, C7-7800, 6131o, 6131n, AtlasOCAP-1056B01, RCA-RCRP05B and enjoying the ride Smile
Back to top
View user's profile Send private message
jetskier



Joined: 09 Dec 2003
Posts: 287
Location: Nevada

                    
PostPosted: Wed Jan 31, 2007 5:01 pm    Post subject: Reply with quote

ElizabethD wrote:
jetskier, how d'ya get 5 & 7 in 2 bits?


Not sure, but in remote master here is the FIRST BYTE output for each of the 15 possible remote addresses for Dish. It matches your top four.

00 - 1
80 - 2
40 - 3
C0 - 4
20 - 5
A0 - 6
60 - 7
E0 - 8
10 - 9
90 - 10
50 - 11
D0 - 12
30 - 13
B0 - 14
70 - 15
Back to top
View user's profile Send private message
ElizabethD
Advanced Member


Joined: 09 Feb 2004
Posts: 2348

                    
PostPosted: Wed Jan 31, 2007 5:17 pm    Post subject: Reply with quote

You're right. And I'm aware of that list. But both RM and KM permit units 1-4 (0 to3 really). And unit code in the 5bit part of the signal appears to be 2 bits, and the hex values from the Dish signals roll over from 3 back to 0, even if you set the unit address higher than 3. Just curious.

Edited
Correction - Remote address (unit#) is 4 bits wide, not 2. I keep confusing address with unit. This protocol is nearly incomprehensible. Actually all of them are.
_________________
Liz
Tweeking 8910, HTPro/9811, C7-7800, 6131o, 6131n, AtlasOCAP-1056B01, RCA-RCRP05B and enjoying the ride Smile


Last edited by ElizabethD on Fri Feb 02, 2007 3:54 pm; edited 1 time in total
Back to top
View user's profile Send private message
jetskier



Joined: 09 Dec 2003
Posts: 287
Location: Nevada

                    
PostPosted: Wed Jan 31, 2007 5:22 pm    Post subject: Reply with quote

I've never had a problem. All my receivers are in the same closet stacked in a rack using the same IR blaster. I'm not sure how the extra bit affects the signal structure.
Back to top
View user's profile Send private message
binky123
Expert


Joined: 14 Feb 2004
Posts: 1292

                    
PostPosted: Wed Jan 31, 2007 6:25 pm    Post subject: Reply with quote

ElizabethD wrote:
binky123, thanks for the ref. It's great, I think. So what free register would you suggest for 6131ext ?

Anyway, it's just too difficult for me.
I looked at one Tivo upgrade for 6131ext and another about Sony Tivo. In both, 3rd fixed byte is used to be replaced with another register, which replacement comes from a keymove using Advance Select protocol. At least that's what I think is going on in Hal's clever scheme.

Dish Combo protocol has no such obvious RAM slot. It takes the bytes straight from the upgrade. And I'm already lost on the 3rd line of the 12-byte executor anyway Sad So at this point I'm stuck. Considering that Hal did it for Tivo, I bet someone here would know how to, perhaps, change the Dish Combo itself to do something similar to Tivo. I maybe missing the obvious, so I'll stare at it some more.

You can use the same register and methodology if you want. The code just takes the value in the rBF register and places it where the unit number is expected to be before the protocol is executed. It uses the Advance Select protocol to set the rBF register to whatever unit# you want. I haven't looked at the Dish Combo protocol though.
Back to top
View user's profile Send private message
binky123
Expert


Joined: 14 Feb 2004
Posts: 1292

                    
PostPosted: Wed Jan 31, 2007 8:12 pm    Post subject: Reply with quote

I looked at the executor and it is taking the low 2 bits of the variable byte as an index to choose which byte to use from 2nd,3rd,4th,5th fixed bytes as the second fixed byte. So you just have to set the first fixed byte in DCBUF(R03 on URC-6131) from rBF and then set the second byte like the current executor and then call the IR signal generator routine.
Back to top
View user's profile Send private message
ElizabethD
Advanced Member


Joined: 09 Feb 2004
Posts: 2348

                    
PostPosted: Wed Jan 31, 2007 10:11 pm    Post subject: Reply with quote

binky123 wrote:
I looked at the executor and it is taking the low 2 bits of the variable byte as an index to choose which byte to use from 2nd,3rd,4th,5th fixed bytes as the second fixed byte.
That's how I was reading it too, but decided that I can't be sure of that index really. Anyway, I'll deal with it, now that I have your blessing Smile
binky123 wrote:
So you just have to set the first fixed byte in DCBUF(R03 on URC-6131) from rBF and then set the second byte like the current executor and then call the IR signal generator routine.
and this is where I was losing the trail, because DCBUF is nowhere in that code. So I just add it, that's all? So how does it work now when the first byte in DCBUF is not even in the current code? These protocols are monsters Twisted Evil
Thanks binky!
_________________
Liz
Tweeking 8910, HTPro/9811, C7-7800, 6131o, 6131n, AtlasOCAP-1056B01, RCA-RCRP05B and enjoying the ride Smile
Back to top
View user's profile Send private message
binky123
Expert


Joined: 14 Feb 2004
Posts: 1292

                    
PostPosted: Wed Jan 31, 2007 11:41 pm    Post subject: Reply with quote

DCBUF begins at R03 with the first fixed byte. R04 is the second fixed byte. It doesn't need to do anything with the first byte so you don't see it being referenced. It does fill in the second byte at R04 based on the index.

You can add this line into the executor protocol:
Code:

E4 BF 03    LD R03,RBF       ; set R03 first fixed byte(unit#) from RBF register


Last edited by binky123 on Thu Feb 01, 2007 11:08 am; edited 1 time in total
Back to top
View user's profile Send private message
unclemiltie
Expert


Joined: 21 Jan 2004
Posts: 1795
Location: Pittsburgh, PA

                    
PostPosted: Thu Feb 01, 2007 7:13 am    Post subject: Reply with quote

ElizabethD wrote:
and this is where I was losing the trail, because DCBUF is nowhere in that code. So I just add it, that's all? So how does it work now when the first byte in DCBUF is not even in the current code? These protocols are monsters :twisted:
Thanks binky!


When the device gets loaded by the remote (6131, and others) the remote loads up the fixed data starting at R03 and immediately after that it loads up the "hex" value for the key that was just pressed. Then it calls the protocol.

Dont' know what you were planning, but you could do:

soemthing like the LDKP-like protocol, when called, waits for the user to press "1", "2", "3" etc and reloads the fixed data with the right unit number based on the key pressed. then processes the rest of the key using the code from the $02 Dish protocol.
Back to top
View user's profile Send private message
ElizabethD
Advanced Member


Joined: 09 Feb 2004
Posts: 2348

                    
PostPosted: Thu Feb 01, 2007 12:30 pm    Post subject: Reply with quote

Got it.It's simple now. Will test probably tomorrow:) Thanks a bunch.

Edit
unclemiltie, what I'll do is have the keymoves for unit selection (pressable), and include them on SAT and Shift-SAT device selection macros, before hitting the LKP part because short press has to do the right thing as well. But it really doesn't matter how, so long as the keymoves do the job.

binky: speaking DCBUF not R03 I did the same thing but also, at a cost of 3 bytes, made sure just the 2 bits are set to comply with KM. If bad idea, we can NOP later.
_________________
Liz
Tweeking 8910, HTPro/9811, C7-7800, 6131o, 6131n, AtlasOCAP-1056B01, RCA-RCRP05B and enjoying the ride Smile


Last edited by ElizabethD on Thu Feb 01, 2007 12:37 pm; edited 1 time in total
Back to top
View user's profile Send private message
jetskier



Joined: 09 Dec 2003
Posts: 287
Location: Nevada

                    
PostPosted: Thu Feb 01, 2007 12:35 pm    Post subject: Reply with quote

Liz,

Make sure we can use it on the x820 remotes using PID $0002, too.
I'd hate to see you run out of things to do. Very Happy
Back to top
View user's profile Send private message
ElizabethD
Advanced Member


Joined: 09 Feb 2004
Posts: 2348

                    
PostPosted: Thu Feb 01, 2007 11:28 pm    Post subject: Reply with quote

It works! I recorded few signals switching to different units. They completely match learned codes from Dish. Binky123, thanks again for the ref. Big space saver Smile

I wonder if to make a zip package similar to what Hal did for Tivo and post here. Just not sure about those other units >4. Don't know how to investigate that. All we've seen is wraparound of hex values while using Dish721 and some Platinum Dish remote.

Sorry, jetskier, I don't do x820. Do you have 6131 to try it on? Or some other jp1?
_________________
Liz
Tweeking 8910, HTPro/9811, C7-7800, 6131o, 6131n, AtlasOCAP-1056B01, RCA-RCRP05B and enjoying the ride Smile
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic       JP1 Remotes Forum Index -> JP1 - General Forum All times are GMT - 5 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


 

Powered by phpBB © 2001, 2005 phpBB Group
Top 7 Advantages of Playing Online Slots The Evolution of Remote Control