DiSEqC 1.2 for SkyStar2 v1.7
----------------------------

Instructions:
-------------

I have modified function in SkyNET.sys which is called when tuning the tuner and which is responsible for setting DiSEqC. In the original version only various LNB can be set (Write Port Group E0 10 38 xx).
In the modified version, it's possible to use any DiSEqC command in the length of 3-8 bytes. This command must be somehow delivered to the driver. For this purpose SS2DiSEqC.ese is used.
SS2DiSEqC buttons are used for making DiSEqc 1.2 command easier and after pressing the appropriate button, the command is sent to the driver.
The driver will execute this command immediatelly.

And now the detailed description how to make it run
===================================================

SKYNET.SYS
----------
-  Save old SkyNET.sys from windows\system32\drivers directory
-  Copy new SkyNET.sys to windows\system32\drivers directory
-  Restart PC or in My Computer-> Hardware->Device Manager->Network Adapters->B2C2 ... Disable and Enable driver

ProgDVB, MyTheatre
------------------
-  Copy SS2DiSEqC.exe, SS2DiSEqC.dll & directory Satellites to directory ProgDVB or/and MyTheatre\Plugins
-  Run your ProgDVB (MyTheatre) and tune any channel on your favourite satellite
-  Select plugin SS2DiSEqC->Configure  (you can Drag&Drop directory Transponders to SS2DiSEqC main window in ProgDVB)
-  Set your correct Longitude,Latitude and H-H Motor Type, Range and Goto x.x support etc.

H-H Motor with support Goto x.x
--------------------------------
-  Press 'Auto Goto x.x', theoretical positions are computed for all satellites
-  Select your tuned satellite in list and press 'Send', motor is driving
-  If no signal ocurres use 'Goto x.x' button with some increments (some functional channel have to be tuned in ProgDVB, MyTheatre)
-  For getting maximal signal press 'Max signal' and modify position
-  Press 'Auto Goto x.x' again and use current satellite as referential, all satellite positions are corrected
-  Select other satellite in SS2DiSEqC and press 'Send', motor is driving to new position
-  Try 'Max Signal' with finding the strongest transponder, if new position are different save it
-  Repeat this two steps for any satellite and fine tune right position
-  Close SS2DiSEqC
-  Now if you select new channel from other satellite, H-H motor is driving

H-H Motor without support Goto x.x
-----------------------------------
-  Select your tuned satellite in list
-  Press 'Drive motor East/West' witk step eg. 10 and try find the signal (some functional channel have to be tuned in ProgDVB, MyTheatre)
-  For getting maximal signal press 'Max signal'
-  Use 'Store nn' with ascending counter for saving to the motor's memory
-  Use 'Goto nn' with current position and press 'Modify'
-  Repeat this steps for all satellites until motor's memory isn't full
-  Close SS2DiSEqC
-  Now if you select new channel from other satellite, H-H motor is driving


How to install the H-H motor correctly:
---------------------------------------
1.  Make sure that mounting pole is exactly vertical to the Earth before installation.
2.  Fix H-H motor onto the mounting pole and attach Antenna dish to the motor (drive motor to 0 position before instalation, dish has to be at the center
		of mounting tube).
3.  Rotate the motor together with antenna toward TRUE SOUTH (you can use time from SS2DiSEqC 'True South' and Sun's shadow for right setting).
4.  Set Elevation Angle of the motor (use 'Elevation' from Cofiguration)
5.  Set Angle of the Dish (use 'Declination' from Cofiguration). See motor documentation.
6.  Use SS2DiSEqC and DVB Prog to drive motor to satellite nearest South.
7.  If no signal, rotate the motor together with antenna for fine settings.


Sending DiSEqC commands programatically:
----------------------------------------

1. You have to get 'NetCfgInstanceId' value for SS2 from registry
 (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318} and subkey with 'Service'='SKYNET')
2. Open SkyNET device: eg. NetCfgInstanceId ={ACA1F431-5351-4E59-A113-6009A7E26672} 
	HANDLE ghSKY=CreateFile("\\\\.\\{ACA1F431-5351-4E59-A113-6009A7E26672}",GENERIC_READ,0,0,OPEN_EXISTING,0,0);
3. Send DiSEqC command to driver
	if(ghSKY != INVALID_HANDLE_VALUE) 
	{ 
		UCHAR gszCMD[32]="\xE0\x31\x68\xFE" //motor driving 2 steps to East  E0 31 68 FE
		DeviceIoControl(ghSKY,0x220000,gszCMD,4,NULL,0,NULL,NULL);
		CloseHandle(ghSKY); 
	} 
4. Motor is driving



History:
--------
v1.7 (2004-06-06)
- new SkyNET.sys patch version 4.2.11
- new graphical design
- you can use SDP4 algorythm for accurate satelite position (if you hunt satellite with big inclination)
- automatic PC startup LNB off
- some improvements
- repaired some buggs

v1.6  (2004-01-22)
- new SkyNET.sys patch version 4.2.2 and 4.2.8
- add 'H-H Motor Type'
- add 'DiSEqC Timing'
- some improvements
- repaired some buggs

v1.5a (2003-10-21)
- new SkyNET.sys patch version 4.2.2 and 4.2.8
- DiSEqC timing corrected in SkyNET.sys
- SKYNET.sys works with locked SkyStar2 maybe !!!

v1.5 (2003-08-08)
- plugin supports Win98
- new SKYNET.sys works with SkyStar2 rev2.6B

v1.4 (2003-07-25)
- new plugin for ProgDVB and MyTheatre
- some new configuration items
- configuration is common for ProgDVB and MyTheatre
- repaired some buggs

v1.3 (2003-06-28)
- add Goto x.x East fix
- add Tuner Info
- add 'Sun time'
- add 'Max Signal'
- add 'LNB Power'
- add 'Configuration'
- add 'Support Goto x.x'
- add 'High Speed'
- motor can drive slow or high speed
- add 'True South'
- add MD Plugin v1.0
- button 'Move' rename to 'Send'
- corrected SkyNET.sys
- repaired some buggs

v1.2 (2003-06-03)
- removed button 'Run', commands are send now directly to SS2 (you don't need to tune any channel in DVB prog from now)
- you don't need to set 'DiSEqC Setting' in your DVB prog
- add Tooltips for every button and control
- add Azimuth,Elevation, ... for every satellite
- modified 'Auto x.x'
- add Longitude,Latitude and H-H Motor range
- computed H-H motor Elevation and Dish Declination
- corrected SkyNET.sys

v1.1 (2003-05-13)
- add storing any DiSEqC command for satellite (Button 'Modify' saves command from 'Raw' for selected satellite and 'Move' send this command to driver)
- add Auto Goto x.x function (computes and saves angular positions for satellites between two satellites)

v1.0 (2003-05-01)
First release



MiBi
SS2@email.cz

Forums:
http://tvfreak.center.sk/diskuze/index.php
http://forums.dvbnetwork.com/

Fresh transponders INI
http://joshyfun.peque.org/transponders/
