Subscribe to EDN
RSS
Reprints/License
Print
Email

Circuit forms satellite-dish command decoder

Edited by Bill Travis

Mark Giebler, Oakdale, MN -- EDN, March 4, 2004

By decoding the commands sent by a direct-broadcast satellite receiver that uses the DISEQC (digital-satellite-equipment-control) protocol, you can troubleshoot the commands or simply listen in. Eutelsat Corp (www.eutelsat.com) offers the DISEQC protocol. The technique uses only the coaxial cable between the receiver and the dish to send commands for actions such as changing the low-noise-block frequency range or switching between dishes for multisatellite reception. The DISEQC protocol specifies a bit time of 1.5 msec and bit values as shown in Figure 1, the timing diagram of bit modulation on the coaxial cable. The signal's ac portion is a 22-Hz burst whose amplitude ranges from 300 to 600 mV. A voltage-doubler circuit detects the 22-Hz portion, producing a pulse stream in which constant-voltage pulses having amplitudes of 0.6 to 1.2V replace the 22-Hz bursts.

Decoding this bit stream into ASCII hex values is an ideal job for a low-cost 8-bit microcontroller. Using a microcontroller with onboard flash memory, such as the NEC Electronics µPD78F9418A (www.necelam.com), eliminates the need for external memory. The only external components are a few discrete devices for the signal detector and the coaxial-cable loop-through (Figure 2). You can add an RS-232 driver if you want to display the ASCII codes on a laptop computer via HyperTerminal. You can also use the µPD78F9418A's onboard LCD controller to display the codes on a dedicated display.

One of the µPD78F9418A microcontroller's 10-bit A/D converters performs pulse detection and acts as a simple timing device. Using a reference voltage of 5V, the converter provides approximately 4.88 mV per step. An A/D-converter conversion value greater than 120 counts (585 mV) represents a valid pulse. Set the A/D converter's conversion time to 28.8 µsec and wait to detect a pulse edge by reading the A/D converter until its value exceeds 120 and then perform a loop while doing analog-to-digital conversions. If the loop count reaches 24 with ADC values greater than 120, the bit is a zero. If the pulse has gone away, the bit is a one. Any extra delay from executing instructions in the loop has little effect, because the bit windows leave plenty of margin.

Check out our Best of Design Ideas section!

RSS
Reprints/License
Print
Email
Canon Resource Center

Featured Company


Most Recent Resources

Advertisement
Related Content

No related content found.

  • 0 rated items found.
Advertisement

KNOWLEDGE CENTER

Datasheets.com Parts Search

185 million searchable parts
(please enter a part number or hit search to begin)
Engineering Careers
Jobs sponsored by
Advertisement
About EDN   |   Site Map   |   Contact Us   |   Subscription   |   RSS
© 2012 UBM Electronics. All rights reserved.
Use of this Web site is subject to its Terms of Use | Privacy Policy

Please visit these other UBM Canon sites

UBM Canon | Design News | Test & Measurement World | Packaging Digest | EDN | Qmed | Pharmalive | Appliance Magazine | Plastics Today | Powder Bulk Solids | Canon Trade Shows