Re: Mantis and MB86A16 (VP-1034) and DiseqC commands not working.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Manu Abraham wrote:
Freq+symrate is correct; I tried several freqs / pols / symbol rates on
sat=2.

I am quite sure that the problem is simple and diseqc related, for the
several reasons:

=> my normal sat receiver is working fine on all 16 sat feeds (4*4)

=> KNC1 DVB-C is also working fine on all sats / pols / bands; the fact
that it is capable to select different sats proves that its diseqc
commands are working.

=> however VP1034 is working only on first satellite (out of 4). This
seems to be caused by 18/13V+22kHz signaling (not diseqc),
So in fact DiSEqC is not failing for you, but 22k tone for SEC_A/B
I think that you are referring to the use of a 22 kHz tone to operate a
switch to select between 2 satellite inputs (22 kHz ON/OFF)? I am not
using 22k tone, not for SEC_A/B, and also not for band selection.

I am using (and in fact must use) DiSEqC 1.0 for my switch to operate
properly (OK, DiSEqC uses 22 kHz pulse width modulation, but that is
different).

Perhaps I haven't explained my setup very well.

I have a dish with 4 Quattro LNBs, ie. 16 cables. I use a Spaun 17089NF
switch, with 16 inputs and 8 outputs. The switch is controlled by DiSEqC
1.0, and allows to select from 4 sats, 2 pols and 2 bands, i.e. 16
possible combinations = 16 inputs. Inputs are aligned as follows:
1: sat=1 band=low pol=V
2: sat=1 band=low pol=H
3: sat=1 band=high pol=V
4: sat=1 band=high pol=H
5: sat=2 band=low pol=V
6: sat=2 band=low pol=H
...
16: sat=4 band=high pol=H

In order to select eg. sat=2/band=low/pol=H (i.e 10832H/22000 on second
satellite) the VP1034 should send the following DiSEqC string: "e0 10 38
f6", which will select input#6 from the switch as the source (see
http://www.eutelsat.com/satellites/pdf/Diseqc/associated%20docs/applic_info_turner-receiver.pdf).
I have verified that this the VP1034 is in fact sending (or trying to
send) the correct string (see log file in previous email).

As mentioned: all of this works fine with KNC1 DVB-S. Also working
perfect with any normal sat receiver.

But with VP1034 DVB-S it does not work; although the driver is logging
the correct DiSEqC string. But in fact it switches to input#2, which has
same pol and band, but is on sat=1. So I wondered how this was possible
if DiSEqC wasn't working at all ... then I found out the reason: the
VP1034 is sending both the appropriate DiSEqC command, and using the
conventional 18/13V+22kHz signaling at the same time. So although DiSEqC
is not working, my switch responds to 18V to select Horizontal
polarization, and the absence of 22 kHz tone to select the lower band.
Selection of the satellite however fails then of course, and apparently
defaults to sat=1. So I end up being connected to input#2 instead of
input#6.

To further verify my assumptions, I connected the VP1034 directly to
input#6 feed (sat=2,low,H) of my Spaun switch, and it works immediately.
This points to a selection problem, and shows that the freq+symrate etc
is correct.

So it seems to me that either DiSEqC functionality is not switched on

sounds like you don't have the tone burst working. Looking in there..
Can you please try the modified burst callback ? You may/may not need to
play a bit with a bit of sleep after the break in each case.

Sorry Manu, but this is not about diseqc-burst either ...

Unless our mutual terminology is inconsistent, "diseqc-burst" is a simple enhancement method of controlling an individual 2-state switch, in addition to existing conventional control by 18/13V for pol selection and 22kHz for band selection (see: http://www.eutelsat.com/satellites/pdf/Diseqc/Reference%20docs/bus_spec.pdf).

What I need is DiSEqC 1.0 support, as specified in the above document, where the entire control information (sat,pol,band) is being passed by means of a digital message. No voltages or tones. The modulation method happens to be PWM / 22 kHz, but that is different from 22 kHz tones or 22 kHz bursts.

So in my opinion, it is the 22 kHz PWM that is not working, for whatever reason. Either there is no DiSEqC output at all, because it is somehow disabled, or there is a timing problem.

Do you happen to have an oscilloscope? It should be easy to see if a proper 22 kHz enveloped pulse train is actually being generated, as defined in the bus_spec.pdf document.

Z.


static int mb86a16_send_diseqc_burst(struct dvb_frontend *fe,
fe_sec_mini_cmd_t burst)
{
	struct mb86a16_state *state = fe->demodulator_priv;

	switch (burst) {
	case SEC_MINI_A:
		if (mb86a16_write(state, MB86A16_TONEOUT1, 0x5b) < 0)
			goto err;
		if (mb86a16_write(state, MB86A16_TONEOUT2, 0x00) < 0)
			goto err;
		if (mb86a16_write(state, MB86A16_DCC1, MB86A16_DCC1_DISTA |
						       MB86A16_DCC1_TBEN  |
						       MB86A16_DCC1_TBO) < 0)
			goto err;
		if (mb86a16_write(state, MB86A16_DCCOUT, MB86A16_DCCOUT_DISEN) < 0)
			goto err;
		break;
	case SEC_MINI_B:
		if (mb86a16_write(state, MB86A16_TONEOUT1, 0x5b) < 0)
			goto err;
		if (mb86a16_write(state, MB86A16_TONEOUT2, 0x00) < 0)
			goto err;
		if (mb86a16_write(state, MB86A16_DCC1, MB86A16_DCC1_DISTA |
						       MB86A16_DCC1_TBEN) < 0)
			goto err;
		if (mb86a16_write(state, MB86A16_DCCOUT, MB86A16_DCCOUT_DISEN) < 0)
			goto err;
		break;
	}

	return 0;
err:
	dprintk(verbose, MB86A16_ERROR, 1, "I2C transfer error");
	return -EREMOTEIO;
}

properly in the register settings (I cannot verify if any DiSEqC pulses
comes out, because my oscilloscope is broken) or perhaps there is some
kind of timing problem. In fact I notice in the source code of the KNC1
driver that there are some wait_diseqc_idle() calls and another
diseqc-related functions call.

Are you working under NDA

Yes

I tried these changes anyway, just to see what would happen, but no
result. Anyway, my switch does not listen to sat-selection by 22 kHz
tone, but uses 22 kHz tone or band selection (low/high) instead.


ah, ok




_______________________________________________
linux-dvb mailing list
linux-dvb@xxxxxxxxxxx
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

[Index of Archives]     [Linux Media]     [Video 4 Linux]     [Asterisk]     [Samba]     [Xorg]     [Xfree86]     [Linux USB]

  Powered by Linux