Rotor(Motor) Support Latest Information.
Added by Gary Brown over 10 years ago
PLEASE READ ALL OF THIS POST AND THEN BEFORE POSTING HERE AND DON'T EMAIL ME
CURRENT STATUS OF ROTOR SUPPORT: Working since commit from 4th August 2014 version 3.9.1139 and later but stopped for me after an update from git (not sure which update as was doing it remotely for parents)
OPENELEC's version of tvheadend is behind this commit. please let them know you want it updating before attempting this on that OS.
MY SETUP:
OS:Ubuntu Server 14.04.1 LTS (GNU/Linux 3.13.0-32-generic x86_64)
Tvheadend: v3.9.1499
dvb-s card: Mystique SaTiX-S2 Sky PCI (http://www.amazon.co.uk/Mystique-SaTiX-S2-Sky-PCI-DiseqC/dp/B005IFWDIY)
rotor: Alsat Superior Dark Motor
dish: Alsat 1m mesh dish
GUIDE (needs an update for recent master:
1.first set some networks and give them names ( I use individual satellites but you could add more and do it by providers if you wanted to)
2.in tv adaptors, in your card select advanced for satconf
3.in advanced enter your amount of satellites you want to receive in orbital positions.
4.for each orbital position you enable usals by selecting it in the rotor drop down box.
5.fill in the data in that new page.
0.8w
18w
13e Hotbird
POINTERS:
positive numbers for east and negative for west.
Don't Rely on GPS or Google for your site latitude or longitude use the values from your receiver or older program. (compare mine to to Sunderland, England SR4 and see the difference in mine.)
Rate:
in the Rate Column it needs a value of ms per each .1 of a degree. the text needs fixing to say that. I have the following rotor http://www.amazon.co.uk/SUPREME-MOTOR-METAL-DiSEqC-USALS/dp/B005THZL30/ref=pd_sxp_grid_i_0_1
it runs at Max. Speed: 1.9 / sec (at 13V) ; 2.5 / sec (at 18V) by the specs and manual.
tvheadend sets to 18v so 2.5 degrees each second.
1 / 25 = 0.4 seconds per degree multiplied by 1000 to change to miliseconds giving me a value of 400 to use in rate and it's perfect. when I wrote the code I made sure it always rounds up the result to seconds to allow extra time for the rotor to settle.
If you leave Rate empty or 0 it will wait 120 seconds between each move.
ANY QUESTIONS PLEASE ASK IN THIS THREAD AND PLEASE ANSWER THESE QUESTIONS TO SPEED UP HELP.
what version/build of tvheadend are you using? (look in the about section and paste the bold top line ie. "HTS Tvheadend 3.9.1499~g97999e4")
on what system is tvheadend running? linux pc 32bit or 64bit or other (nas/openelec etc)
what is your tuner card?
what is the rotor your using?
what is the rate set at?
PEOPLES QUESTIONS
if I use the latest stable Openelec version and tvheadend from it will I have the proper versions?
I've just asked in there IRC chat room and was told they are running version 3.9.1083 you need at least version 3.9.1139 have a look at the following link if your brave enough to update it yourself.
http://openelec.tv/forum/79-tvheadend/67708-update-to-newest-tvheadend
I also have a cline I use from a friend. Can you please help me how to configure tvh and oscam to use the cline I have?
Please ask questions about OSCAM in Descrambling section as This thread is for the rotor only.
I'm also not sure how to scan for all the channels on a sat by following your guide.
once you have configured the information above you do it the same way as normal (Pre-defined Muxes in Networks or by adding the muxes individually making sure to choose the correct network when it asks for it)
What OSCam am I Using
it's irrelavent but OSCam r9792 but please note If people are trying to use an encrypted channel then the problem may not be with the rotor but your oscam setup. please check with unencrypted channels to see if the rotor is the problem.
Replies (140)
RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago
Ron L wrote:
Yes, that was it. Only sends gotox when switching to a channel on a different sat now. The grace period seems to be calculating very realistic wait times now too. I think you have a winner
Great.
BTW: Another topic about the rate configs:
For USALS: the rate is in "Rate (millis/deg)" which is implemented 1/1000 sec resolution per one degree.
For GOTOX: the rate is in "Rate (millis/click)" which is implemented as 1/100 sec resolution per one degree.
My idea is to use only one resolution 1/1000 sec but I'm not sure what's the standard...
RE: Rotor(Motor) Support Latest Information. - Added by Levente Cseh almost 10 years ago
Can I ask please for some setting details for the page attached?
I'm using 3.9.2252~g1145484, but now I'm not sure if the sat card works anymore, it will not even scan at all.
How can you guys monitor if the rotor turns the dish? Should that appear in the debug window?
RE: Rotor(Motor) Support Latest Information. - Added by Levente Cseh almost 10 years ago
Okay, seems I've been too impatient. Scanning started, but I still don't see any sign of rotor movement in the log. The fact that it started scanning another satellite might show this can you confirm?
My dish is out of alignment, so I need to set that, it finds 13° Hotbird services at 28.2° Astra, but that's not an issue. I need to understand how TVheadend handles this, as the current dish setup was working with my Samsung smart TV USALS setup.
2014-12-15 13:15:04.525 subscription: 009D: "scan" subscribing to mux, weight: 4, adapter: "Cine S2 : DVB-S #0 1", network: "28.2E:Astra", mux: "11785H", hostname: "", username: "", client: ""
2014-12-15 13:15:26.000 mpegts: 11785H in 28.2E:Astra - scan no data, failed
2014-12-15 13:15:26.000 subscription: 009D: "scan" unsubscribing
2014-12-15 13:16:31.000 mpegts: 10910V in 13.0E:Hotbird - tuning on Cine S2 : DVB-S #0 1
2014-12-15 13:16:32.891 opentv-ausat: registering mux 10910V in 13.0E:Hotbird
2014-12-15 13:16:32.893 subscription: 009E: "scan" subscribing to mux, weight: 4, adapter: "Cine S2 : DVB-S #0 1", network: "13.0E:Hotbird", mux: "10910V", hostname: "", username: "", client: ""
2014-12-15 13:16:47.000 mpegts: 10910V in 13.0E:Hotbird - scan no data, failed
2014-12-15 13:16:47.000 subscription: 009E: "scan" unsubscribing
2014-12-15 13:16:47.000 mpegts: 11075V in 13.0E:Hotbird - tuning on Cine S2 : DVB-S #0 1
2014-12-15 13:16:48.835 opentv-ausat: registering mux 11075V in 13.0E:Hotbird
RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago
Sorry to all, but I reshuffled code again to make logic more clear. I think that I found another issue which may solve Levante's problem. Also, I moved USALS setup log from trace to debug to see something in log event without --enable-trace.
v3.9-2259-gcfc78ab
Note that the site coordinates and motor rate (1/1000sec) are shared for all positions now to keep configuration more easy (and logical).
RE: Rotor(Motor) Support Latest Information. - Added by Ron L almost 10 years ago
Still looks good. Motor rate should be good. Might want to consider changing the Max Rotor Movement (seconds): to something along the line of Initial Rotor Setup Time (sec): to make it easier to figure out what that does. This value can be small but the grace time will still calculate a higher value if the sats are far apart. If you remember what sat you left the dish parked on and start with a channel on that sat this value only needs to be a second or two. Otherwise if you set it high you wait a long time for tuning initially.
My V-Box should be here this week. I suspect this code is going to work just fine.
RE: Rotor(Motor) Support Latest Information. - Added by Philip Reynolds almost 10 years ago
Hello,
commit 2248 works perfectly for me with USALS, but in 2263 it seems broken again.
The dish doesn't move to the correct position. Will try to delete networks and rescan.
Best regards,
Phil.
Ooops- forgot to add- should 'max rotor movement' be the time taken for the rotor to move 160 degrees (thats from end to end in my case).
RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago
Philip Reynolds wrote:
Hello,
commit 2248 works perfectly for me with USALS, but in 2263 it seems broken again.
The dish doesn't move to the correct position. Will try to delete networks and rescan.
I don't see any error in the code. Note that "Latitude Direction South" and "Longtitude Direction West" should be probably unchecked for you. Provide some logs to check (diseqc).
Ooops- forgot to add- should 'max rotor movement' be the time taken for the rotor to move 160 degrees (thats from end to end in my case).
Probably yes, it's time to wait for the initial movement (the tvheadend does not know the motor position after start, so this time is used).
RE: Rotor(Motor) Support Latest Information. - Added by Philip Reynolds almost 10 years ago
Hi Jaroslav,
checking the logs from diseqc, for 0.8W version 2248 will move the rotor 27.7 counter-clockwise, but 2263 will move it to 26 counter-clockwise.
Version 2248-
Dec 15 20:11:00 JungleServer tvheadend17398: mpegts: 10872H in Thor 0.8W - tuning on TurboSight TBS 6923 DVBS/S2 frontend : DVB-S #0
Dec 15 20:11:00 JungleServer tvheadend17398: diseqc: initial tone off
Dec 15 20:11:00 JungleServer tvheadend17398: diseqc: rotor angle azimuth 208.9241 elevation 18.0122
Dec 15 20:11:00 JungleServer tvheadend17398: diseqc: rotor USALS goto 0.8W (motor 27.7 counter-clockwise)
Dec 15 20:11:00 JungleServer tvheadend17398: diseqc: sending diseqc (len 5) E0 31 6E D1 BB
Dec 15 20:11:00 JungleServer tvheadend17398: diseqc: waiting 4 seconds to finish setup for USALS
Version 2263-
Dec 15 20:19:12 JungleServer tvheadend18882: mpegts: 10872H in Thor 0.8W - tuning on TurboSight TBS 6923 DVBS/S2 frontend : DVB-S #0
Dec 15 20:19:12 JungleServer tvheadend18882: diseqc: rotor angle azimuth 207.1830 elevation 18.3989
Dec 15 20:19:12 JungleServer tvheadend18882: diseqc: rotor USALS goto 0.8W (motor 26.0 counter-clockwise)
Dec 15 20:19:12 JungleServer tvheadend18882: diseqc: sending diseqc (len 5) E0 31 6E D1 A0
Dec 15 20:19:13 JungleServer tvheadend18882: diseqc: waiting 4 seconds to finish setup for USALS
My long and lat is the same. Any ideas?
Best regards,
Phil.
RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago
Philip Reynolds wrote:
Dec 15 20:11:00 JungleServer tvheadend17398: diseqc: rotor angle azimuth 208.9241 elevation 18.0122
Dec 15 20:19:12 JungleServer tvheadend18882: diseqc: rotor angle azimuth 207.1830 elevation 18.3989
The input values must be different. The azimuth and elevation is computed from:
Site Latitude, Site Longtitude, Site Altitude and Satellite Longtitude values.
RE: Rotor(Motor) Support Latest Information. - Added by Philip Reynolds almost 10 years ago
Very odd,
The values entered are exactly the same. I'll try one more time.
Br,
Phil.
Edit- just the same with identical values, position off by 1.7. Bugger.
RE: Rotor(Motor) Support Latest Information. - Added by Trevor Tate almost 10 years ago
just updated to 3.9.2270~gf39f7b8
stream not playing in vlc unless i select universal lnb mode instead of usals, the usals code is moving the dish i believe, the signal and s/noise alive at 75% and 72% my end, just not playing!
RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago
I added ROTOR_TEST code, use it as follows:
$ gcc -DROTOR_TEST -lm -o rotor_test ./src/input/mpegts/linuxdvb/linuxdvb_rotor.c
$ ./rotor_test Usage: <site_latitude> <site_lontitude> <site_altitude> <sat_longtitude>
$ ./rotor_test 48.9742 14.4723 430 4.8 Input values: Site Latidude: 48.9742 Site Longtitude: 14.4723 Site Altitude: 430.0000 Satellite Longtitude: 4.8000 Result: Azimuth: 192.8230 Elevation: 33.0293 Angle: 10.8 counter-clockwise
The azimuth/elevation values match http://www.dishpointer.com/ for my site. I also added the input values to tvh trace log now.
RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago
Trevor Tate wrote:
just updated to 3.9.2270~gf39f7b8
stream not playing in vlc unless i select universal lnb mode instead of usals, the usals code is moving the dish i believe, the signal and s/noise alive at 75% and 72% my end, just not playing!
I don't understand. In advanced settings, you can configure universal lnb type, too... Which is identical to simplified universal LNB config in the SatConfig checkbox...
RE: Rotor(Motor) Support Latest Information. - Added by Trevor Tate almost 10 years ago
yes, in advanced settings
I select universal lnb and vlc opens up ok with picture, I then reselect USALS , picture does not load, the signal strength status is ok (not changed, same as in universal lnb) , so dish must be in correct position. for some reason vlc does not open the picture,
RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago
Trevor Tate wrote:
yes, in advanced settings
I select universal lnb and vlc opens up ok with picture, I then reselect USALS , picture does not load, the signal strength status is ok (not changed, same as in universal lnb) , so dish must be in correct position. for some reason vlc does not open the picture,
Provide some logs - --trace diseqc to see what's wrong for you. Note that tvh waits for the max/init rotor time seconds for the first tune to ensure that rotor finished the movement. This value is 120 seconds by default (2 minutes).
RE: Rotor(Motor) Support Latest Information. - Added by Richard Bolster almost 10 years ago
Jaroslav Kysela wrote:
Trevor Tate wrote:
yes, in advanced settings
I select universal lnb and vlc opens up ok with picture, I then reselect USALS , picture does not load, the signal strength status is ok (not changed, same as in universal lnb) , so dish must be in correct position. for some reason vlc does not open the picture,
Provide some logs - --trace diseqc to see what's wrong for you. Note that tvh waits for the max/init rotor time seconds for the first tune to ensure that rotor finished the movement. This value is 120 seconds by default (2 minutes).
This is exactly the same problem which I described in my previous post. I do have the same problem. Added a log file.
Suppose he has the same tuning problem I mentioned.
I noticed this also in previous v3.9.1567. But now usals/rotor positioning is working fine was hoping this would be solved using never release.
Added a log file in which I first tune at fixed dish 23.5E tv gelderland which works and second tune with rotor at 28.2E bbc scotland which doesn't give image, though there is a lock and signal. In de log is repeatedly printed:
http: /comet/poll?boxid=35401848648b012eb340c6caa14fa03573fb7c21&immediate=0{{Host=192.168.1.50:9981,Connection=keep-alive,Content-Length=58,Origin=http://192.168.1.50:9981,X-Requested-With=XMLHttpRequest,User-Agent=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/37.0.2062.120 Chrome/37.0.2062.120 Safari/537.36,Content-Type=application/x-www-form-urlencoded,Accept=*/*,Referer=http://192.168.1.50:9981/extjs.html?,Accept-Encoding=gzip,deflate,Accept-Language=nl-NL,nl;q=0.8,en-US;q=0.6,en;q=0.4,de;q=0.2,Cookie=ys-api/mpegts/service=(removed the rest -> see log)
access: 192.168.1.46:<no-user> [SATWRE*], conn=0, chmin=0, chmax=0, profile=ANY, dvr=ANY, tag=ANY
Instead of restarting tvheadend can do a mux scan at this frequency and then it works.....for a while....and have to do the same at other frequencies.
RE: Rotor(Motor) Support Latest Information. - Added by Trevor Tate almost 10 years ago
just tried to compile your test code
gcc -DROTOR_TEST -lm -o rotor_test ./src/input/mpegts/linuxdvb/linuxdvb_rotor.c
/tmp/ccn83abI.o: In function `to_rev':
linuxdvb_rotor.c:(.text+0x93): undefined reference to `floor'
/tmp/ccn83abI.o: In function `sat_azimuth_and_elevation':
linuxdvb_rotor.c:(.text+0x1b6): undefined reference to `sin'
linuxdvb_rotor.c:(.text+0x207): undefined reference to `cos'
linuxdvb_rotor.c:(.text+0x251): undefined reference to `sqrt'
linuxdvb_rotor.c:(.text+0x2ec): undefined reference to `cos'
linuxdvb_rotor.c:(.text+0x336): undefined reference to `sin'
linuxdvb_rotor.c:(.text+0x3c8): undefined reference to `sqrt'
linuxdvb_rotor.c:(.text+0x3da): undefined reference to `atan'
linuxdvb_rotor.c:(.text+0x4cd): undefined reference to `atan'
linuxdvb_rotor.c:(.text+0x518): undefined reference to `atan'
linuxdvb_rotor.c:(.text+0x5c0): undefined reference to `cos'
linuxdvb_rotor.c:(.text+0x601): undefined reference to `sin'
/tmp/ccn83abI.o: In function `sat_angle':
linuxdvb_rotor.c:(.text+0x824): undefined reference to `cos'
linuxdvb_rotor.c:(.text+0x868): undefined reference to `sin'
linuxdvb_rotor.c:(.text+0x88d): undefined reference to `sin'
linuxdvb_rotor.c:(.text+0x8ad): undefined reference to `cos'
linuxdvb_rotor.c:(.text+0x8d9): undefined reference to `sin'
linuxdvb_rotor.c:(.text+0x8fe): undefined reference to `cos'
linuxdvb_rotor.c:(.text+0x92a): undefined reference to `atan'
linuxdvb_rotor.c:(.text+0xa16): undefined reference to `round'
linuxdvb_rotor.c:(.text+0xa64): undefined reference to `round'
linuxdvb_rotor.c:(.text+0xaa3): undefined reference to `round'
collect2: error: ld returned 1 exit status
RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago
Richard Bolster wrote:
Instead of restarting tvheadend can do a mux scan at this frequency and then it works.....for a while....and have to do the same at other frequencies.
You may try to enable "Full DiseqC" switch, if it changes something..
RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago
Trevor Tate wrote:
just tried to compile your test code
gcc -DROTOR_TEST -lm -o rotor_test ./src/input/mpegts/linuxdvb/linuxdvb_rotor.c/tmp/ccn83abI.o: In function `to_rev':
linuxdvb_rotor.c:(.text+0x93): undefined reference to `floor'
This symbol is from the math library (libm), but it's requested to be linked with -lm . Do you have this library in another directory ?
$ ls -la /lib/libm.so.6 lrwxrwxrwx 1 root root 12 Oct 2 12:43 /lib/libm.so.6 -> libm-2.18.so
RE: Rotor(Motor) Support Latest Information. - Added by Ron L almost 10 years ago
Can you get someone to go outside and watch the dish to see if it turns when you flip between usals and not usals? If the dish doesn't move between config changes and it works on Universal but not usals only thing I can think of is 22Khz. Might not be selecting the band on the lnbf.
Not sure how accurate the signal strength indicator is in TVH. I don't think may of the kernel drivers give accurate signal strength info.
RE: Rotor(Motor) Support Latest Information. - Added by Philip Reynolds almost 10 years ago
Hello Jaroslav,
my libm.so.6 is in /lib/x86_64-linux-gnu/ I'm getting the same error as Trevor.
Is it possible to change it somehow?
Thanks,
Phil.
RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago
Philip Reynolds wrote:
Hello Jaroslav,
my libm.so.6 is in /lib/x86_64-linux-gnu/ I'm getting the same error as Trevor.
Is it possible to change it somehow?
No idea, -lm should work when gcc and libc is configured properly.
http://www.linuxquestions.org/questions/programming-9/what-exactly-does-the-lm-option-of-gcc-787841/
EDIT: You may try to add the /lib/x86_64-linux-gnu path to library search patch: -L/lib/x86_64-linux-gnu
gcc -DROTOR_TEST -L/lib/x86_64-linux-gnu -lm -o rotor_test ./src/input/mpegts/linuxdvb/linuxdvb_rotor.c
RE: Rotor(Motor) Support Latest Information. - Added by Philip Reynolds almost 10 years ago
Hello again,
well, whatever I try it wont compile. Ubuntu is using libm-2.19.so if that makes a difference.
If you have time, could you test these values-
./rotor_test 60.64 24.87 115 -0.8 (if -0.8 is correct for west?)?
These are the exact values used in 2248 and 2263.
Thanks for your patience,
Phil.
RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago
Philip Reynolds wrote:
Hello again,
well, whatever I try it wont compile. Ubuntu is using libm-2.19.so if that makes a difference.
If you have time, could you test these values-
./rotor_test 60.64 24.87 115 -0.8 (if -0.8 is correct for west?)?
It gives wrong values, but I found the culprit so fix is in v3.9-2274-g932ade3 .
RE: Rotor(Motor) Support Latest Information. - Added by Philip Reynolds almost 10 years ago
You are the man
That was it, thank you very much.
Best regards,
Phil.