[linux-dvb] Mantis and MB86A16 (VP-1034) and DiseqC commands not working.

Manu Abraham abraham.manu at gmail.com
Tue May 1 08:48:06 CEST 2007


Zoilo Gomez wrote:
> Manu Abraham wrote:
>> Zoilo Gomez wrote:
>>  
>>> Manu Abraham wrote:
>>>    
>>>> Zoilo Gomez wrote:
>>>>  
>>>>      
>>>>> Manu Abraham wrote:
>>>>>           
>>>>>> Michel Verbraak wrote:
>>>>>>  
>>>>>>               
>>>>>>> Manu, list,
>>>>>>>
>>>>>>> I was testing DiseqC to control my rotor (Palm H-H 2100A) and
>>>>>>> because i
>>>>>>> could not get a scan done I finally pulled my rotor from my roof
>>>>>>> top and
>>>>>>> placed it next to the pc.
>>>>>>>
>>>>>>> I found the following results:
>>>>>>>
>>>>>>> - When I boot my pc and modprobe the mantis module the card powers
>>>>>>> on. I
>>>>>>> see a green light lighting up on my rotor.
>>>>>>> - When I tried the goto position 0 diseqc command I saw my light
>>>>>>> change
>>>>>>> from green to red to green. This normal when the command string is
>>>>>>> send
>>>>>>> to the rotor ( I do have another card which show the same
>>>>>>> effect). But
>>>>>>> the rotor does not change position.
>>>>>>> - When I tried the goto X diseqc command saw my light change from
>>>>>>> green
>>>>>>> to red to green.  But the rotor does not change position.
>>>>>>>
>>>>>>> The only difference I could see is that the change in colour is
>>>>>>> faster
>>>>>>> for the VP-1034 card than my other card a VP-1020a (which is
>>>>>>> working as
>>>>>>> it should).
>>>>>>>
>>>>>>>                         
>>>>>> I think probably the MB86A16 driver could use some delays in between
>>>>>> for
>>>>>> communicating with SEC devices.
>>>>>> SEC devices are not taht fast in response and hence could possibly
>>>>>> be an
>>>>>> answer for the problem.
>>>>>>                   
>>>>> Was this ever resolved?
>>>>>
>>>>>             
>>>> I think so, I think Michel got his positioner working a while back.
>>>>
>>>>  
>>>>      
>>>>> Today I tried to get diseqc running with my VP-1034, to control my
>>>>> Spaun
>>>>> switch, but no success.
>>>>>
>>>>> With a KNC1 DVB-S card diseqc is working fine, switching correctly
>>>>> between different feeds/sats etc. So this seems to point in the
>>>>> direction of a problem with the diseqc implementation in the Mantis
>>>>> driver ...
>>>>>
>>>>> I tried to introduce some msleep_interruptible(100) calls, in
>>>>> particular
>>>>> before and after the 4-byte diseqc command is being sent, but no
>>>>> positive results.
>>>>>             
>>>> Do you get any I2C transaction errors ?
>>>>         
>>> No.
>>>
>>>    
>>>>> The diseqc message itself is OK; I verified the message content as
>>>>> it is
>>>>> being written into the registers 0x18-0x1b.
>>>>>
>>>>>             
>>>> Can you paste the logs ?
>>>>         
>>> Here you go; I am trying to tune to 10832 H 22000 on the second
>>> satellite out of 4, so "F6" seems to be the correct diseqc byte.
>>>
>>>
>>>
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x20],Data[0x04]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x16],Data[0x80]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x1e],Data[0x00]
>>> May  1 02:12:26 localhost vp1034_set_voltage (0): Polarization=[18v]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x16],Data[0x80]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x1e],Data[0x00]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x20],Data[0x04]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x18],Data[0xe0]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x19],Data[0x10]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x1a],Data[0x38]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x1b],Data[0xf6]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x16],Data[0x94]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x1e],Data[0x01]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x16],Data[0x98]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x1e],Data[0x01]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x20],Data[0x04]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x16],Data[0x80]
>>> May  1 02:12:26 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x1e],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_set_fe: freq=1082 Mhz, symbrt=22000
>>> Ksps
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x32],Data[0x02]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x06],Data[0xdf]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0a],Data[0x3d]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x58],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x59],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x08],Data[0x16]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2f],Data[0x21]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x39],Data[0x38]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x3d],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x3e],Data[0x1c]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x3f],Data[0x20]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x40],Data[0x1e]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x41],Data[0x23]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x54],Data[0xff]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x00],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2d],Data[0x1a]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x49],Data[0x7a]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2a],Data[0x32]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x36],Data[0x06]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x33],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x03],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x04],Data[0x64]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x05],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x13]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x21]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0xd1]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x13]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x22]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0xd4]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x0f]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x13]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x21]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0xa1]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0x2c]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x13]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x22]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0x31]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0xa7]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x0f]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x13]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x21]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0x81]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0xa7]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x0f]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_set_fe: ------ Signal detect ------
>>> [swp_freq=[1071000, srate=22000]]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x13]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x21]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0x81]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0xa7]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x0f]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x36],Data[0x26]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x03],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x04],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x05],Data[0x02]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x03],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x04],Data[0x64]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x05],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x03],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x04],Data[0xc7]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x05],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x36],Data[0x06]
>>> May  1 02:12:27 localhost mb86a16_set_fe: ***** Signal Found *****
>>> May  1 02:12:27 localhost mb86a16_set_fe:  Start Freq Error Check
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x33],Data[0x39]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x03],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x04],Data[0x64]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x05],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x49],Data[0x7e]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2a],Data[0x12]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x58],Data[0xa7]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x59],Data[0x0f]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x03],Data[0x0a]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x04],Data[0x64]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x05],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2a],Data[0x2a]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2d],Data[0x10]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x19]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x20]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x42]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0x41]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0x05]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x19]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x20]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x42]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0x71]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0xe5]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x0f]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x19]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x20]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x42]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0xa1]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0xc3]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x0f]
>>> May  1 02:12:27 localhost mb86a16_set_fe: SWEEP Frequency = 1062792
>>> May  1 02:12:27 localhost mb86a16_set_fe: Adjusting .., DELTA Freq = 0,
>>> SWEEP Freq=1062792
>>> May  1 02:12:27 localhost mb86a16_set_fe: NO  --  SIGNAL !
>>> May  1 02:12:27 localhost sync_chk: Status = 00,
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x32],Data[0x02]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x06],Data[0xdf]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0a],Data[0x3d]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x58],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x59],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x08],Data[0x16]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2f],Data[0x21]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x39],Data[0x38]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x3d],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x3e],Data[0x1c]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x3f],Data[0x20]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x40],Data[0x1e]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x41],Data[0x23]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x54],Data[0xff]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x00],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2d],Data[0x1a]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x49],Data[0x7a]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2a],Data[0x32]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x36],Data[0x06]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x33],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x03],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x04],Data[0x64]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x05],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x13]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x21]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0xd1]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x13]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x22]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0xd4]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x0f]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x13]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x21]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0xa1]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0x2c]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x13]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x22]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0x31]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0xa7]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x0f]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x13]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x21]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0x81]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0xa7]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x0f]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_set_fe: ------ Signal detect ------
>>> [swp_freq=[1071000, srate=22000]]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x21],Data[0x13]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x22],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x23],Data[0x21]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x24],Data[0x81]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x25],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2b],Data[0xa7]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x2c],Data[0x0f]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x36],Data[0x26]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x03],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x04],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x05],Data[0x02]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x03],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x04],Data[0x64]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x05],Data[0x01]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x03],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x04],Data[0xc7]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x05],Data[0x00]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x0c],Data[0x04]
>>> May  1 02:12:27 localhost mb86a16_write: writing to
>>> [0x08],Reg[0x36],Data[0x06]
>>> May  1 02:12:27 localhost mb86a16_set_fe: !!!!! No signal !!!!!, try
>>> again...
>>>     
>>
>> If the frequency/symbol rate is correct, this does look like a bug (of
>> course this is not relevant to diseqc switching, but can also result
>> from switching positions)
>>   
> 
> 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
looking at which, can you change the tone function to look like this ?

static int mb86a16_set_tone(struct dvb_frontend *fe, fe_sec_tone_mode_t
tone)
{
	struct mb86a16_state *state = fe->demodulator_priv;

	switch (tone) {
	case SEC_TONE_ON:
		if (mb86a16_write(state, MB86A16_TONEOUT2, 0x5b) < 0)
			goto err;
		if (mb86a16_write(state, MB86A16_DCC1, MB86A16_DCC1_DISTA |
						       MB86A16_DCC1_CTOE) < 0)

			goto err;
		if (mb86a16_write(state, MB86A16_DCCOUT, MB86A16_DCCOUT_DISEN) < 0)
			goto err;
		break;
	case SEC_TONE_OFF:
		if (mb86a16_write(state, MB86A16_TONEOUT2, 0x5f) < 0)
			goto err;
		if (mb86a16_write(state, MB86A16_DCC1, MB86A16_DCC1_DISTA) < 0)
			goto err;
		if (mb86a16_write(state, MB86A16_DCCOUT, 0x00) < 0)
			goto err;
		break;
	default:
		return -EINVAL;
	}
	return 0;

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


>  which is
> applied simultaneously with the diseqc command. However, switching to a
> different sat is impossible, because diseqc is not working.

i think the 22k tone might be failing and not DiSEqC. can you check
whether the mentioned change does help ?






More information about the linux-dvb mailing list