This detector is no longer produced (recall that the CD player is manufactured in the late '90). For the PC mod, I will use compatible detector from Sharp (GP1UM271RK0F, shown on the left above). This unit has the same band-pass filter center frequency (38 kHz) as GP1U51X and also has the exact same height profile as GP1U571X. The latter guarantees the GP1UM271RK0F to fit properly with the front panel plastic molding.
Experimenting with GP1U571X and the Onkyo remote
To test the IR detector, I hooked it up straight to 5V source and scope probe:
Here's the signal received when POWER button is pressed:
The detector outputs low (0 V) or high (4.5 V) levels. The output signal is normally high, and the beginning of received message begins with an extended period of low level (~9.11 ms), followed by a shorter period of high (~4.45 ms). The ensuing pulsing pattern defines the remote control command. But how is the information coded?
Upon closer inspection, we see that the low period duration is consistent all the time (~0.61 ms) while the high period duration is bi-modal (either 0.52 ms or 1.63 ms long). Hence, most likely it is pulse-length coded. There are 32 high periods during pulsating period; therefore, each button is coded with 32 bits (4 bytes).
For our convention, we let the short period to represent 0 Bit and the long period to represent 1 Bit. Also, the bits are transmitted in MSB first fashion. Accordingly, the 32-bit codes (in hex) associated with all 60 keys are listed below.
Row | Col | Code | Button Name |
1 | 1 | 0x4bb520df | POWER |
1 | 2 | 0x4bb59b64 | SPEAKER A |
1 | 3 | 0x4bb55ba4 | SPEAKER B |
1 | 4 | 0x4b36f807 | INPUT SELECTOR PREV |
1 | 5 | 0x4b367887 | INPUT SELECTOR NEXT |
2 | 1 | 0x4bb510ef | SLEEP |
2 | 2 | 0x4b3612ed | TIMER |
2 | 3 | 0x4b36c23d | TIMER SETTING PREV |
2 | 4 | 0x4b3642bd | TIMER SETTING NEXT |
2 | 5 | 0x4b36629d | TIMER ENTER |
3 | 1 | 0x4bb548b7 | DECK-A REWIND |
3 | 2 | 0x4bb58877 | DECK-A FAST FORWARD |
3 | 3 | 0x4bb5708f | DECK-A REVERSE PLAY |
3 | 4 | 0x4bb530cf | DECK-A STOP |
3 | 5 | 0x4bb5b04f | DECK-A FORWARD PLAY |
4 | 1 | 0x4bb558a7 | DECK-B REWIND |
4 | 2 | 0x4bb59867 | DECK-B FAST FORWARD |
4 | 3 | 0x4bb56897 | DECK-B REVERSE PLAY |
4 | 4 | 0x4bb5c837 | DECK-B STOP |
4 | 5 | 0x4bb5a857 | DECK-B FORWARD PLAY |
5 | 1 | 0x4bb518e7 | DECK-B RECORD/PAUSE |
5 | 2 | 0x4bb5906f | TUNER FM |
5 | 3 | 0x4bb550af | TUNER AM |
5 | 4 | 0x4bb5807f | TUNER PRESET PREV |
5 | 5 | 0x4bb500ff | TUNER PRESET NEXT |
6 | 1 | 0x4b7422dd | MD REPEAT |
6 | 2 | 0x4b7458a7 | MD RECORD |
6 | 3 | 0x4b7438c7 | MD STOP |
6 | 4 | 0x4b74f807 | MD PAUSE |
6 | 5 | 0x4b74d827 | MD PLAY |
7 | 1 | 0x4b74609f | MD DISPLAY |
7 | 2 | 0x4b74e01f | MD SCROLL |
7 | 3 | 0x4b7450af | MD RANDOM |
7 | 4 | 0x4b747887 | MD PREV TRACK |
7 | 5 | 0x4bb5d827 | MD NEXT TRACK |
8 | 1 | 0x4bb57986 | CD DISC |
8 | 2 | 0x4b361ae5 | CD DISPLAY |
8 | 3 | 0x4bb538c7 | CD STOP |
8 | 4 | 0x4bb5f807 | CD PAUSE |
8 | 5 | 0x4bb5b847 | CD PLAY |
9 | 1 | 0x4bb50af5 | CD 1 |
9 | 2 | 0x4bb58a75 | CD 2 |
9 | 3 | 0x4bb54ab5 | CD 3 |
9 | 4 | 0x4bb57887 | CD PREV TRACK |
9 | 5 | 0x4bb5b847 | CD NEXT TRACK |
10 | 1 | 0x4bb5ca35 | CD 4 |
10 | 2 | 0x4bb52ad5 | CD 5 |
10 | 3 | 0x4bb5aa55 | CD 6 |
10 | 4 | 0x4b36ea15 | CD RANDOM |
10 | 5 | 0x4bb5a05f | MUTING |
11 | 1 | 0x4bb56a95 | CD 7 |
11 | 2 | 0x4bb5ea15 | CD 8 |
11 | 3 | 0x4bb51ae5 | CD 9 |
11 | 4 | 0x4b366a95 | CD REPEAT |
11 | 5 | 0x4bb540bf | VOLUME UP |
12 | 1 | 0x4bb55aa5 | CD --/--- |
12 | 2 | 0x4bb59a65 | CD 10/0 |
12 | 3 | 0x4bb5eb14 | CD MEMORY |
12 | 4 | 0x4bb51be4 | CD CLEAR |
12 | 5 | 0x4bb5c03f | VOLUME DOWN |
Note that the 8 MSBs (i.e., the first 2 hex digits) are always 0x4b, which can be used to identify the remote quickly. Otherwise, the codes appear fairly random. It would be interesting to know how they are chosen.
No comments:
Post a Comment