mirror of
				https://github.com/DigitalDevices/dddvb.git
				synced 2025-03-01 10:35:23 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			131 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			131 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
 | 
						|
Modulator channels will automatically be enabled if you redirect data 
 | 
						|
from a demodulator to it. 
 | 
						|
E.g._:
 | 
						|
 | 
						|
first demod on bridge 0 TAB1, modulator on bridge 1.
 | 
						|
 | 
						|
echo "00 10" > /sys/class/ddbridge/ddbridge0/redirect
 | 
						|
 | 
						|
Currently it is fixed to QAM256. Controls will be added later.
 | 
						|
Rate control is experimental and PCR correction also not
 | 
						|
implemented yet. So, depending on the reception device
 | 
						|
there can be disturbances in playback.
 | 
						|
 | 
						|
It is now also possible to chain redirects.
 | 
						|
E.g., demod and modulator as above, CI on bridge 0 TAB 2:
 | 
						|
 | 
						|
echo "00 01" > /sys/class/ddbridge/ddbridge0/redirect
 | 
						|
echo "02 10" > /sys/class/ddbridge/ddbridge0/redirect
 | 
						|
 | 
						|
The stream is also still available at the demux device 
 | 
						|
belonging to the demod devices.
 | 
						|
 | 
						|
Now write and start an application (not provided) that 
 | 
						|
talks to the CI to decrypt the desired services.
 | 
						|
For testing one can use a standard application that
 | 
						|
supports decryption. Additionally to seeing the
 | 
						|
decoded service on the PC it will then also be streamed
 | 
						|
into cable by the modulator.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
The modulator device can be controlled with the
 | 
						|
following properties:
 | 
						|
 | 
						|
MODULATOR_FREQUENCY:
 | 
						|
 | 
						|
Set the frequency on Version 2 (FSM) cards
 | 
						|
units - Hz
 | 
						|
range - 114000000-874000000
 | 
						|
allowed values - 114 + 8000000*X
 | 
						|
 | 
						|
For older cards you have to use the
 | 
						|
DVB_MOD_SET ioctl.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
MODULATOR_SYMBOLRATE:
 | 
						|
 | 
						|
Set the symbol rate
 | 
						|
units - Hz
 | 
						|
range - Version 1 cards: only 6900000
 | 
						|
        Version 2 cards(FSM): X-7100000
 | 
						|
 | 
						|
 | 
						|
MODULATOR_MODULATION:
 | 
						|
 | 
						|
Set the modulation type
 | 
						|
range: QAM_16 .. QAM_256
 | 
						|
 | 
						|
 | 
						|
 | 
						|
MODULATOR_ATTENUATION:
 | 
						|
 | 
						|
range - 0-31
 | 
						|
unit  - 1 dB
 | 
						|
 | 
						|
 | 
						|
MODULATOR_GAIN:
 | 
						|
 | 
						|
range - 0-255
 | 
						|
unit  - 0.125 dB
 | 
						|
 | 
						|
 | 
						|
The MODULATOR_ATTENUATOR is based on a switched resistor network,
 | 
						|
also it is backward compatible to our old modulator.
 | 
						|
the MODULATOR_GAIN is based on a variable gain amplifier, so it is less
 | 
						|
accurate then the attenuator.
 | 
						|
High gain values will drive the output amplifier into clipping. The
 | 
						|
limit depends on # of channels active.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
MODULATOR_INPUT_BITRATE:
 | 
						|
 | 
						|
The modulator will ALWAY insert null packets if it
 | 
						|
does not get enough data.
 | 
						|
If you specify the input bitrate it will insert additional
 | 
						|
null packets according to the difference between input
 | 
						|
and output bit rate.
 | 
						|
The latter is determined by symbol rte and modulation.
 | 
						|
So, this property should be set last.
 | 
						|
 | 
						|
unit - 2^-32 Hz
 | 
						|
 | 
						|
 | 
						|
 | 
						|
Debugging features:
 | 
						|
 | 
						|
MODULATOR_STATUS and MODULATOR_RESET have been added to debug
 | 
						|
possible problems with too high temperatures (overtemperature)
 | 
						|
or PLL lock loss on FSM type cards.
 | 
						|
 | 
						|
The MODULATOR_STATUS property returns a __u32 with the following status bits:
 | 
						|
 | 
						|
- bit 0  : Lock status 1=lock OK, 0 = lock lost
 | 
						|
 | 
						|
- bit 1  : Sticky lock lost indicator
 | 
						|
           0 = no PLL lock loss since last status read
 | 
						|
	   1 = lock has been lost since last status read 
 | 
						|
 | 
						|
- bit 2  : 0 = no overtemperature
 | 
						|
           1 = overtemperature detected
 | 
						|
 | 
						|
- bit 4  : 0 = PCIe link OK
 | 
						|
           1 = PCIe link lost
 | 
						|
 | 
						|
In case of overtemperratur or PCIe link loss you will have to reboot the PC.
 | 
						|
 | 
						|
 | 
						|
Putting a MODULATOR_STATUS property with value 2 will enable the lost lock
 | 
						|
interrupt. This will set the gain to 0 and the attenuation to 31 in case
 | 
						|
of a lost PLL lock.
 | 
						|
 | 
						|
 | 
						|
The MODULATOR_RESET property can be used to reset the modulator without
 | 
						|
needing to reload the driver or rebooting in case of PLL lock loss.
 | 
						|
All channels should be stopped before using it and restarted after using it.
 | 
						|
Otherwise, results are unpredictable.
 |