jerryw@teksce.SCE.TEK.COM (Jerry Willard) (06/02/90)
A while back I posted a request for ideas for a circuit to simulate my TV's remote control on-off output so I could modify my clock radio to turn on my TV. I got several suggestions, but most were not very elegant or practical. Several suggested some kind of contraption to press the on-off button on my present remote. But at least one person agreed with me that the best plan was to somehow decode the output of my present remote and build something to duplicate it. (As you may remember, the original IC was no longer available.) One big problem I had (and would guess everyone would have) is the difficulty in deciphering the pulse location and spacing with a conventional oscilloscope. You get a lot of fuzzy jumble and can't easily find the starting point of the sequence. Eventually I was able to use a pulse timing instrument to get a clean display, and was able to identify the leader, custom and data codes. Now all I needed was a circuit to produce it. My first idea was to use a 555 timer for the 40 KHz carrier, and other ICs for a clock, address counter and ROM to generate the actual code. This added up to a lot of parts, so a second idea was to use a PAL to reduce the parts count. I could have also used a bunch of one- shots etc., but that would have meant even more parts. Once I was up to PAL complexity, a microcomputer looked attractive. With advice from our department's uP expert, I ended up selecting the Signetics 87C751. It was the smallest programable part I could find (24 pin "Skinny DIP"), and its 16K of EPROM was plenty for the task. Having selected the 751, we looked into having it generate the whole signal, carrier and all. A nice one-IC solution. The problem with this idea is that you have to generate an 8.3 uS minimum pulse width (1/40 KHz, 30% duty cycle), and a very long bit sequence. We could handle the long sequence, but even at a 12 MHz clock rate, the 751 didn't have time to do all of the necessary subroutines. So, I resigned myself to using the 555 for the carrier and the 751 to modulate it. Two ICs to replace one custom circuit - not bad. Next was how to use the 751 to generate all of the required pulse widths and delays. Its internal timers seemed obvious. However, the I2C timer doesn't produce the correct code, and the fixed rate timer doesn't output to an external pin. It could be used to time the various pulses and delays, but it was easier just to program timing loops in the software. When the circuit was all done, the thing didn't work. After much debugging, the problem was found to be a missing bit on the end of the code. It was real easy to miss it. I had one more problem after I got the circuit installed in the radio. When the alarm turned on, the radio put out a short blurp before the muting took affect. I fixed this by putting a low-ohm MOSFET in series with the speaker and an R/C delay in its gate. Now the whole thing works perfectly. Jerry Willard, Tektronix jerryw@teksce.SCE.TEK.COM
paul@hpldola.HP.COM (Paul Bame) (06/07/90)
If you're just looking to turn on your TV at a pre-determined time(s), several of the "trainable" IR remote controls have timers just for this purpose. Just train them and program the timer and leave the remote pointing at the TV. Not very hands-on perhaps but pretty effective. It's kinda handy since for VCR recording sometimes since they sometimes have more programmable events than the VCR. -Paul "Spice is the Variety of Life" paul@hpldola.hp.com N0KCL