KM Broken for Dishplayer protocol using OBC's
Moderator: Moderators
-
jon_armstrong
- Expert
- Posts: 1238
- Joined: Sun Aug 03, 2003 9:14 pm
- Location: R.I.P. 3/25/2005
- Contact:
KM Broken for Dishplayer protocol using OBC's
In this thread it became obvious that KM was using the bottom 6 bits of the OBC rather than the top 6-bits. It's MSB first and a 6-bit OBC. I suspect it's been that way a long time since I think Dishplayer is rarely used.
-Jon
-
Mark Pierson
- Expert
- Posts: 3018
- Joined: Sun Aug 03, 2003 12:13 am
- Location: Connecticut, USA
- Contact:
I'm confused, Jon.
Based on your reply here, is the latest KM (v8.25) handling it properly or is it still broken?
Based on your reply here, is the latest KM (v8.25) handling it properly or is it still broken?
Mark
-
jon_armstrong
- Expert
- Posts: 1238
- Joined: Sun Aug 03, 2003 9:14 pm
- Location: R.I.P. 3/25/2005
- Contact:
-
The Robman
- Site Owner
- Posts: 21886
- Joined: Fri Aug 01, 2003 9:37 am
- Location: Chicago, IL
- Contact:
I don't it's all as straightforward as that. I just opened up KM 8.25 and selected Dishplayer (with the 15-1994 selected as the remote) and the supplied protocol upgrade uses 5 bit commands (not 6 bit), so guessing that the code may have changed, I grabbed a newer copy (15-2138) and it now appears to use 8 bit commands (with a 5-bit device code), so we may need to do a massive version control to see which version is in which remote.
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
-
mr_d_p_gumby
- Expert
- Posts: 1370
- Joined: Sun Aug 03, 2003 12:13 am
- Location: Newbury Park, CA
I took a quick look, and there seem to be two different versions of this protocol. The older one has the flags set for 8 device bits & 5 command bits, while the newer one is 5 device bits & 8 command bits.
The older one is in: Balboa Dolphin, REM400-B01, RCU810, 15-2103, 15-2104, 15-2107, Toshiba CT90047, URC-4080 and URC-601x/801x/881x.
The newer one is in: 15-2116/7, 15-2133, 15-2138, URC-6131, URC-8910/9910 and URC-9960.
The older one is in: Balboa Dolphin, REM400-B01, RCU810, 15-2103, 15-2104, 15-2107, Toshiba CT90047, URC-4080 and URC-601x/801x/881x.
The newer one is in: 15-2116/7, 15-2133, 15-2138, URC-6131, URC-8910/9910 and URC-9960.
Mike England
-
mr_d_p_gumby
- Expert
- Posts: 1370
- Joined: Sun Aug 03, 2003 12:13 am
- Location: Newbury Park, CA
Update: Upon closer inspection, the older version appears to be swapping the device & command bytes before transmitting them in dev-cmd order, so that explains why the bit lengths are opposite. I'd conclude that both versions will work with the same upgrade, using 8 command bits and 5 device bits.
Mike England
-
jon_armstrong
- Expert
- Posts: 1238
- Joined: Sun Aug 03, 2003 9:14 pm
- Location: R.I.P. 3/25/2005
- Contact:
Just to be clear, the Dishplayer protocol does have 13 data bits and this is the protocol and the way John's decoder will decode it:
{38.4k,535,msb}<1,-5|1,-3>(1,-11,(F:6,U:5,D:2,1,-11)+)
I know the first 6-bits are OBC, IIRC, John, Rob and I arbitrarily decided that the unit code would be 5 bits like the much more common Dishplayer_network protocol. I don't think we have ever seen anyting but 0 for U.
So we still need to pick off the top 6 bits to map to OBC.
I just edited out the part about U being considered lsb first. Decode IR does not decode it that way.
{38.4k,535,msb}<1,-5|1,-3>(1,-11,(F:6,U:5,D:2,1,-11)+)
I know the first 6-bits are OBC, IIRC, John, Rob and I arbitrarily decided that the unit code would be 5 bits like the much more common Dishplayer_network protocol. I don't think we have ever seen anyting but 0 for U.
So we still need to pick off the top 6 bits to map to OBC.
I just edited out the part about U being considered lsb first. Decode IR does not decode it that way.
Last edited by jon_armstrong on Sun Aug 01, 2004 1:29 pm, edited 1 time in total.
-Jon
-
mr_d_p_gumby
- Expert
- Posts: 1370
- Joined: Sun Aug 03, 2003 12:13 am
- Location: Newbury Park, CA
UEI also seems to have concluded that the unit code is 5 bits, since the protocol only uses the upper 5 bits of the fixed data.jon_armstrong wrote:So we still need to pick off the top 6 bits to map to OBC.
If truly the OBC is only 6 bits, that still leaves 2 bits undefined, as the protocol transmits all 8 bits of the command byte. If I understand you correctly, then Mark will have to make KM put the OBC in the upper 6 bits, and mask the lower two bits to zero. Correct?
Mike England
-
jon_armstrong
- Expert
- Posts: 1238
- Joined: Sun Aug 03, 2003 9:14 pm
- Location: R.I.P. 3/25/2005
- Contact:
Mike,
I think the 8-bits of variable data are 6-bits OBC and 2-bits of Unit. The fixed data maps to 3-bits of unit and 2 bits of device and 3-bits ignored.
I just tested that on the older version to confirm and perhaps someone else can do the newer version.
I also found that the Protocols.ini was off by one bit in RM here is the correction:
[Dishplayer]
PID=01 0F
DevParms=Device Code:2=3,Unit:5=0
DeviceTranslator=Translator(0,2,3) Translator(1,3)
FixedData=00
CmdTranslator=Translator(0,6) TranslatorFromDev(1,2,6,3)
CmdParms=OBC:6=0
Notes=The Device.Unit:OBC should match the decodes from DecodeIR.DLL, which does \
not match the Device and OBC used in KM. Use EFCs (not OBCs) to copy any \
functions between KM and RM. The Device value corresponds between KM and \
RM only for Device 0 to 3, Unit 0.
Code.S3C80=43 8B 11 8B 12 85 49 08 05 01 0B 02 F6 01 0B 05 1C 0B 93 01 0B 0B A6 18 04 E4 03 04 19 03 8D 01 46
Code.740=0c 18 11 80 0c e0 e2 00 15 08 05 02 ee 04 5b 06 4f a9 15 20 db 00 a2 d7 a0 06 22 44 a5 5d 85 54 a5 5e 85
5d a5 54 85 5e 4c 00 ff
Code.6805-C9=0C 19 11 20 0E E0 70 15 08 05 02 ED 04 59 06 9B 15 08 BC B6 5A B7 51 B6 5B B7 5A B6 51 B7 5B CD
01 83 12 7C 19 7C CC 01 83
I think the 8-bits of variable data are 6-bits OBC and 2-bits of Unit. The fixed data maps to 3-bits of unit and 2 bits of device and 3-bits ignored.
I just tested that on the older version to confirm and perhaps someone else can do the newer version.
I also found that the Protocols.ini was off by one bit in RM here is the correction:
[Dishplayer]
PID=01 0F
DevParms=Device Code:2=3,Unit:5=0
DeviceTranslator=Translator(0,2,3) Translator(1,3)
FixedData=00
CmdTranslator=Translator(0,6) TranslatorFromDev(1,2,6,3)
CmdParms=OBC:6=0
Notes=The Device.Unit:OBC should match the decodes from DecodeIR.DLL, which does \
not match the Device and OBC used in KM. Use EFCs (not OBCs) to copy any \
functions between KM and RM. The Device value corresponds between KM and \
RM only for Device 0 to 3, Unit 0.
Code.S3C80=43 8B 11 8B 12 85 49 08 05 01 0B 02 F6 01 0B 05 1C 0B 93 01 0B 0B A6 18 04 E4 03 04 19 03 8D 01 46
Code.740=0c 18 11 80 0c e0 e2 00 15 08 05 02 ee 04 5b 06 4f a9 15 20 db 00 a2 d7 a0 06 22 44 a5 5d 85 54 a5 5e 85
5d a5 54 85 5e 4c 00 ff
Code.6805-C9=0C 19 11 20 0E E0 70 15 08 05 02 ED 04 59 06 9B 15 08 BC B6 5A B7 51 B6 5B B7 5A B6 51 B7 5B CD
01 83 12 7C 19 7C CC 01 83
-Jon
-
jon_armstrong
- Expert
- Posts: 1238
- Joined: Sun Aug 03, 2003 9:14 pm
- Location: R.I.P. 3/25/2005
- Contact:
The protocols.ini changes will be included in RM v1.02
-- Greg
Original RemoteMaster developer
JP1 How-To's and Software Tools
The #1 Code Search FAQ and it's answer (PLEASE READ FIRST)
Original RemoteMaster developer
JP1 How-To's and Software Tools
The #1 Code Search FAQ and it's answer (PLEASE READ FIRST)