DiSEqC Communication


DiSEqC is the standard protocol / language used for serial communication between the sat receiver and other devices on the end of the coax (similar to i2c). If you have some sort of switch or motor in series with the LNB on the dish, this is the current modern method used to talk to the devices in-between. This works by using a 22kHz tone up the wire in the direction of the LNB, by pulsing / modulating it with data on top.

Switching of the LNB polarization was always traditionally done through the switching of a voltage on the line, but this can also be done through DiSEqC for some of the new LNB's. It would appear that for most sat receivers they seem to do both (DiSEqC and voltage switching) just to be sure / backwards compatible.

With a standalone receiver there are several standards in place for the protocol, each version increases the capabilities of the last

taken straight from wikipedia

  • DiSEqC 1.0 - switching 4 satellite sources
  • DiSEqC 1.1 - switching 16 satellite sources
  • DiSEqC 1.2 - Allows the use of a Horizontal Panning motor
  • DiSEqC 2.0 - Bi-directional communication

In some cases DiSEqC 1.3 has been used to refer to DiSEqC 1.2 + USALS

most modern cheap FTA (Free to Air) standalone Sat receivers appear to support DiSEqC 1.2 / USALS no problem (but it's always best to check the spec online)

I've taken an interest in this myself because I've got a USALS Motor attached on the line and I need the ability to rotate the dish to different sats


With DiSEqC 1.2 you always needed to tell the motor specifically which angle it needs to go to for which satellites. This could make the initial setup of a dish more difficult as it was always a question of getting the angles right

With USALS this added a form of automatic calculation into the mix for the receiver to work out for itself which angle the motor should be pointing to, for a given sat.

  • you enter in your current location on the map (longitude / latitude) into the reciever
  • you enter in the angle of the sat your looking for (e.g. 19.2E for Astra)
  • The receiver makes an automatic calculation
  • the resultant angle is set for the motor

For a PC / Linux, the calculation would need to be made client side within software
This is a thread I've located mentioning the algorithm used

It looks as if this is currently supported within vdr / MythTv

PC / USB Device Support

From what I've seen, from a hardware point of view a USB / PC Sat receiver such as the Pinnacle 452e can probably send or receive any form of DiSEqC command down the coax to the device on the other end. It could probably even support the bi-directional 2.0 protocol, assuming it's written into the client software that's issuing the DiSEqC commands through the DVBS API.

The main limitation appears to be the software driver / application supplied with the device, with the standard Windows driver it would appear that a multi-switch is supported (DiSEqC 1.1) to select more than one LNB or dish, but not a Motor (DiSEqC 1.2 / USALS)

Since we have a much greater freedom with the Linux Driver I hope to be able to send / receive commands down the line using this method. It would appear MythTv / vdr have support for motor / USALS, but the current command line tools within V4L (Video 4 Linux) only support DiSEqC switches
**TODO look into command line program for DiSEqC 1.2 / USALS**


Last modified 2008/03/02 13:55:46.
Creative Commons LicenseDonatePowered by PHPValid XHTML 1.0Valid CSSDriven by DokuWiki