[linux-dvb] More on the cx24123

Todd nospam at tippyturtle.com
Fri Apr 7 21:35:36 CEST 2006

I am fairly certain it does with the patch he attached to the email you 
responded to.  Yeasah Pell stated:
>>> The only other thing I would note is that in order to get my positioner 
>>> to accept disqec commands reliably I had to increase the delay between 
>>> the tone shutoff/voltage change and the diseqc command

...I would guess it works even better than he stated since he has patched it 
further since this quote.  Did you apply the patch?  Did you on the debug 
messages as he suggested?  What are you seeing?  The DiSEqC commands now 
work flawlessly on my messy cascaded switches.

Good luck,

----- Original Message ----- 
From: "Garnet MacPhee" <garnet at signalpeak.net>
To: <linux-dvb at linuxtv.org>
Sent: Friday, April 07, 2006 7:47 AM
Subject: Re: [linux-dvb] More on the cx24123

>I have a Stab Rotor Sat HH90 dish positioner that uses the DiSEqC 1.2 
>protcol. My receiver card is a Kworld DVB-S 100 with the cx24123 
>demodulator. Is it possible to send DiSEqC commands to position the dish 
>with V4l/DVB as it now stands? Or will support for DiSEqC dish positioning 
>be written soon? In checking the web, I have not found any references to 
>dish positioning with a cx24123, or any references to dish positioning in 
>the apps I have installed (mplayer, kaffeine, xawtv).
> I am running Slackware 10.2 with Kernel 2.6.17-rc1 and Yeasah Pell's 
> latest cx24123.patch applied.
> Thanks, Garnet
> Yeasah Pell wrote:
>> I took a closer look at this, and I believe I have found the problem. The 
>> cx24123_send_diseqc_msg() function did not wait for the busy bit to be 
>> cleared before sending the message, only after. That behavior makes some 
>> intiutive sense, since the driver is the only one that should ever be 
>> sending messages through the card, but experiments show that nevertheless 
>> the diseqc queue is sometimes marked as busy at the time the diseqc 
>> command is sent, and previously the driver would just blast the message 
>> through anyway, and it would presumably be lost. Some other condition 
>> must cause the queue to become busy -- it looks like changing the LNB 
>> voltage or tone status might do this. This is certainly why adding extra 
>> delay made my positioner more reliable -- I assume it also applied to 
>> switches, but I must have not noticed for some reason.
>> I've revised the patch to have the driver wait for the busy bit both 
>> before and after sending a disqec message.
>> Yeasah Pell wrote:
>>> From what I've seen, some DiSEqC switches can be *really* picky, and 
>>> I've seen lots of reports of switches working fine on one card but not 
>>> working at all on another (or working unreliably) I can't offer any more 
>>> detail or explanation than that though -- just my observation of reports 
>>> online.
>>> My understanding is that the main difference between DiSEqC 1.x and 2.0 
>>> is that 2.0 is bidirectional, which this card does seem to support, but 
>>> this driver doesn't. But that should just mean you won't get status back 
>>> from the devices -- the control aspect ought to still work fine. You 
>>> wouldn't get status back unless the disqec commands were set to request 
>>> it anyway, which the software you are using probably isn't doing.
>>> I can confirm that on my DVB-S 100, with either my patch or vadim's 
>>> original diseqc patch, I am able to control a 4 port generic diseqc 
>>> switch which claims to be "1.0/2.0" compliant, as well as a dish 
>>> positioner.
>>> One thing you might try is enabling debug messages in the cx24123 module 
>>> (i.e. by putting a line saying "options cx24123 debug=1" in 
>>> /etc/modprobe.conf and reloading the modules or rebooting), that way you 
>>> should see confirmation messages in dmesg of the diseqc messages being 
>>> sent. That will at least confirm that 1) you are definitely loading the 
>>> patched driver and 2) diseqc commands are in fact being issued to the 
>>> card. You should see some lines including the text 
>>> "cx24123_send_diseqc_msg", and hopefully no error indications.
>>> The only other thing I would note is that in order to get my positioner 
>>> to accept disqec commands reliably I had to increase the delay between 
>>> the tone shutoff/voltage change and the diseqc command being sent in the 
>>> software I use. I didn't have that problem with the switch, but I 
>>> certainly would put that sort of timing issue high up on the list of 
>>> suspected causes -- this card might take longer than normal for its LNB 
>>> voltage to stabilize, or to actually stop sending the tone.
>>> The popular timing seems to be to wait 15 msec, I upped that to 100 msec 
>>> to get it to work with my positioner. It probably doesn't need that much 
>>> of an increase, that's just what I tried first, and it doesn't really 
>>> add a significant amount of time to the total command sequence from a 
>>> user perspective. I was using other software, but if you want to try the 
>>> change in dvbscan, change the first msleep(15) in the diseqc_send_msg 
>>> function in diseqc.c to msleep(100), and recompile -- in fact you could 
>>> try lengthening all the delays in that function, it certainly can't hurt 
>>> to wait longer on any of those steps (apart from making the command 
>>> sequence take longer)
>>> If you find that adding delays helps, please let us know, as it means we 
>>> should probably put some delays into the driver ioctls.
>>> Todd wrote:
>>>> I applied the your attached "cx24123.patch" to the Kernel (it 
>>>> "took" just fine).  I still can't get the DiSEqC  functionality to 
>>>> work.  I am using dvbscan from here:
>>>> http://www.phobos.ca/dvb/
>>>> ...on some DishPro switches (supposedly DiSEqC  2.0 switches).  It 
>>>> works fine with my "Sky2PC/SkyStar 2 DVB-S" card, but not this kworld 
>>>> card. (Same tools, same commands; literally cut and pasted between SSH 
>>>> windows...even switch cabling into switch)
>>>> Is this patch dated?...is there a new one?  Does the kworld card 
>>>> support DiSEqC  2.0?  (the marketing hype claims 2.x compatibility: 
>>>> http://www.kworld.com.tw/en/product/dvb-s/001/dvb-s100.htm )
>>>> Thanks in advance,
>>>> Todd
>>> _______________________________________________
>>> linux-dvb mailing list
>>> linux-dvb at linuxtv.org
>>> http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
> _______________________________________________
> linux-dvb mailing list
> linux-dvb at linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

More information about the linux-dvb mailing list