masteraprentice wrote:Vicky, I don't disagree with what you said, I just feel you did not get what I was trying to say (or more probably I was not clear enough). Looks like we were saying the same stuff but in different languages hehehe...
You can say that again!
Facts:
-I got the data using an home made osciloscope connected to the sound card.
I'm using an IRScope connected to the USB
-The data is a waveform which shows the binary data coming from the output pin of the phisycal IR module device (tsop like IC) with a real GI remote control pointed to it and pressing the button 3. So this is the real bits that are decoded from the carrier frequency to binary data by the receiver module (tsop chip) and then sent to the cable box processor.
I was using the Comcast remote that shoots the GI Cable code by default and pressing the number 3.
-The values were really rounded because I forgot to choose the correct time display units on Sound Forge. Now I am posting a more precise spreadsheet with the more correct timing values, bu the software allows me to even more precise.
-The numbers in the spreadsheet are more accurate numbers that were copied and pasted from Sound Forge while moving the cursor to each position in the timeline were the waveform changes its status.
Yes that was my point, the timings were rounded beyond recognition.
-The spreadsheet should be read in the vertical order from top to bottom, according to time values, which shows the changes of status as time goes by.
-If you look on the values of the last column in the right, you will see the same bit values that you have decoded. So I decoded the values of the bits correctly, but I was wrong on the timings which were really rounded a lot.
Yes, while you can decode the bytes by hand, your set top box is looking for something that follows the timing rule.
Since my purpose is to build my own remote control unit from scratch, I need to understand how the binary data is composed first, and then how to modulate this binary data on the carrier frequency.
If I am correct, the actual function is a 1 byte value, so the actual number of possible functions are limited to 256, right?
Yes
Since this remote control unit serves only one type of cable box, the device code will be always 0000?
Probably. That would be a good guess. There will be 256 function codes available for unit 0000.
Regarding the modulation of the data to the carrier frequency, is there any documentation about this specific remote? How are the zero'es and one's represented on the carrier frequency for these GI remotes?
That is exactly what I was trying to convey. I don't know of any GI Remote specific documentation other than the little blurb from DecodeIR.HTML that comes with most of the tools on the forum.
Read my post above again.
I've read some details about Philips RC-5 and Sony modulations, but did not find anything regarding GI modulation. Since I'll be using a PIC uc to build the remote unit, I guess I can generate the packets already modulated on the carrier frequency instead of sending binary to another chip that would modulate. I can even use the PWM module which is available on some PIC models, but it depends on how this data must be modulated so the cable box understands my remote unit.
While I don't understand PIC programming I can tell you that everything you are looking for is conveyed in this IRP notation for the GI Cable Protocol.
GI Cable looks like this
{38.7k,490}<1,-4.5|1,-9>(18,-9,F:8,D:4,C:4,1,-84,(18,-4.5,1,-178)*) {C = -(D + F:4 + F:4:4)}
Read my post above where I try to disect this
{38.7k,490} this is the frequency and the modulated time of 490us.
<1,-4.5|1,-9> this is the ratio for on off times for 0, and 1, each number is multipled by 490us.
The next portion describes how the signal is comprised.
(18,-9,F:8,D:4,C:4,1,-84,
18 * 490 is the lead-in-on- time, its neither a one, nor a zero
-9*490 is the lead-in-off-time as seen in your graph.
F:8 indicates the number of function bits of 8 comprised of zeros and ones.
D:4 indicates the 4 bits of device function which will usually remain the same among all the GI Cable signals eminating from a remote.
C:4 is the checksum, see the explanation above.
1 indicates the lead-out-on-time of 1*490us
-84, indicates the lead-out-of-time which is 84*490us
The next portion
(18,-4.5,1,-178)*
Shows the repeat frames, see the explantion in my previous post.
Here is a partial list of typical GI Cable boxes functions You might want to confirm these and then do the math to compute the checksums
Code: Select all
Function Decimal Hex
Power 10 50
1 1 80
2 2 40
3 3 C0
4 4 20
5 5 A0
6 6 60
7 7 E0
8 8 10
9 9 90
0 0 00
Enter
/ Music 16 08
Mute 15 F0
Vol + 13 B0
Vol - 14 70
Ch + 11 D0
Ch - 12 30
Last 19 C8
Exit 18 48
Info 51 CC
Up 52 2C
Down 53 AC
Left 54 6C
Right 55 EC
Select 17 88
Guide 48 0C
Menu 25 98