On 21.02.2013 00:21, Antti Hartikainen wrote:
On Wed, Feb 20, 2013 at 11:11:31PM +0100, Klaus Schmidinger wrote:
On 20.02.2013 21:52, Teemu Suikki wrote:
I'm replying to an old message, because soon I will have similar setup so I'm 
interested. :)

I currently have two tuners with fixed dish to S1.0W, and third tuner with 
diseqc motor. I'm using diseqc.conf and the gotoxx patch, it works very well!

I mgot gotoxx working too. For some reason my motor doesn't work with 18V so 
needed to change it to use

However I'm adding fourth tuner soon. It will be connected to the motor dish 

I have been examining vdr's Device Bonding feature. If two devices are bonded 
and Diseqc is enabled, vdr will compare the diseqc strings of the already tuned 
master, with the diseqc string of the new channel on the other device. If they 
match, channel change is accepted.

So basically it should work if you simply have same diseqc config for both 
bonded devices.

However, there is a problem that also the polarisation and low/high frequency 
range is compared. This means that the bonded device is restricted to same 
polarisation and frequency range. This would need some patching in dvbdevice.c..

And what exacly would you want to patch there?
Bonded devices are connected to the same antenna cable, and on one cable you
can only convey one polarization (H or V) and one frequency band (high or low)
at the same time. So the restriction to same polarisation and frequency range
is necessary for device bonding, and I don't see how using a motor dish would
make any difference there.

To connect 2 tuners to one motor, need to do a little patch to restrict both 
tuners to same source,
instead of restricting high/low freqs and polarisation, as both tuners would 
have own cables.

Oh, I see. I guess I misunderstood your posting and assumed there was
only a single antenna cable.

I have made ugly hack to dvbdevice.c to send diseqc positioning commands using 
only tuner which is
connected to the motor. Basicly I just took fd_frontend of device connected to 
the motor and use it for
diseqc commands ioctl().

If both tuners are used with my hack as is, motor is turning wildly between 
satellites on source change.
Lets take an example: At begining both tuners are tuned to 1.0W and I change to 
channel which is on 13E.
Tuner #1 stays tuned to 1.0W and wants motor to go there, and at the same time 
tuner #2 is trying to get
motor to 13E. So some patching is needed to restrict selected tuners to same 
source with eachother.

So what you're trying to do is to "bond" the two devices in a way that
only takes into account the antenna position.
Maybe you could achieve this by changing cDvbTuner::GetBondingParams() in a way 
extracts the positioning part from the DiSEqC commands and returns just that.
Then, with bonded devices, it should use only one of them for positioning,
and both will only tune to transponders from that position.


vdr mailing list

Reply via email to