Project

General

Profile

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.

Screenshot.png (83.6 KB) Screenshot.png
1.png (44.7 KB) 1.png
2.png (6.98 KB) 2.png
4.png (23.8 KB) 4.png
5a.png (12.4 KB) 5a.png
5b.png (12.2 KB) 5b.png
5c.png (11.8 KB) 5c.png

Replies (140)

RE: Rotor(Motor) Support Latest Information. - Added by Richard Bolster almost 10 years ago

Prof Yaffle wrote:

Build it from source using git checkout <hash> - that allows you to move to a specific version before you compile. Clone it as per the instructions, then checkout that specific version immediately before running configure or Autobuild.sh.

Thank you very much for your help. Compiled version v3.9.2178 and was able to scan and watch 4.8E, 13.0E and 28.2E using usals. Tomorrow will try the repository version again and use the same configuration.

RE: Rotor(Motor) Support Latest Information. - Added by Levente Cseh almost 10 years ago

Some of the rotors, like the SG2100 ( https://www.satcruiser.com/PubFiles/SG_2100.pdf ) have a built-in table of satellite positions (page 7). Would that be possible to align to this? Note that Samsung Smart TVs that are equipped with sat tuners do support this, and allow you to select the satellites from a menu in an easy way.
I tried the setup depicted above, and the rotor is supposed to have 2,5°/s speed at 18V, so even the rate should be similar, but it turns to an unknown position instead.

Is there a way to measure the voltage applied to the rotor? I'm not convinced it has 18V btw. Haven't seen any such circuitry on the Cine S2 card that would transform 12V to 18V. Of course I may be wrong...

RE: Rotor(Motor) Support Latest Information. - Added by Gary Brown almost 10 years ago

Sorry Guys but Long time no Post, I'm in my 3rd year of uni and have very little time

o o wrote:

Another thing that would be nice to know is if Garys system is working well with the latest build.

Sorry I never got back to you (see above) but my rotor is not working with the latest master. it did stop working in the last 2-3 months so something was changed along the way breaking my system. (this could be either the software or even my rotor as I've had one rotor stop working all together on me during the summer and needed replacement.) there is also the wind factor for me as I think my dish has been blown out of alignment as well. guess i'm going to need to loan a set top box to check if its my rotor before I confirm anything really. I'll post once I know though.

Levente Cseh wrote:

I tried the setup depicted above, and the rotor is supposed to have 2,5°/s speed at 18V, so even the rate should be similar, but it turns to an unknown position instead.

it sounds like your site lat/long is incorrect Are you using the values in the pictures or your own?

Is there a way to measure the voltage applied to the rotor? I'm not convinced it has 18V btw. Haven't seen any such circuitry on the Cine S2 card that would transform 12V to 18V. Of course I may be wrong...

All dvb-s devices have the 12-18v built in as this is the way the LNB is switched between polarisations.

I'm Just going to point out that the code Is probably broken and i cannot findout until later this week when I go up to my parents house and check the setup.

RE: Rotor(Motor) Support Latest Information. - Added by Levente Cseh almost 10 years ago

I'm using my own coordinates of course.
Will wait for your fix, and I'll give a try next week. Do you plan to include it in a forthcoming release?

RE: Rotor(Motor) Support Latest Information. - Added by Philip Reynolds almost 10 years ago

Hello again,
I seem to be having the same problem as Richard- USALS is working for me in 2178, but not in 2218.
The dish moves to the wrong position in 2218. I have rechecked my dish alignment and 0 position is still correct at 0.
I've also tested with a satellite meter which has USALS built in, and the rotor will move to the correct position.

Both latitude and longitude are correct, and I've left 'zero sat position' at 0. But, I can make the rotor move to the correct
position if I enter -12 in the 'zero sat position' which is roughly half of my longitude.

Any ideas?

Thanks,
Phil.

RE: Rotor(Motor) Support Latest Information. - Added by Richard Bolster almost 10 years ago

Can't find any logic till now. Installed the repository version again and same problems. Then compile the latest version, no success.
Back to 2178 version and stopped working properly. So sometimes it works, stops, throw away configuration and if lucky it works again for a while.
Build version 1499 en 1526 moves my rotor to the right position but then I have error "comet failure [e=Cannot read property 'getById' of null]" (which I haven't seen before). Never the less transponder is being scanned succesfully. Though BBC HD at Astra 28.2 takes quite a while.
Next problem is that in Xbmc client (and also Vlc) I can watch television at my fixed dish and at rotor the Hotbird but other transponders and sat from rotor are giving me issues like "comet failure [e=Cannot read property 'getById' of null]
2014-12-12 10:06:56.000 subscription: No transponder available for subscription "192.168.1.46 [ xbmc | XBMC Media Center ]" to channel "BBC One HD" ".

When I connect my set top box it works well and very good signal. Same with fixed compiled version of mythtv.

Anyone a proposal which build to try? :-)

RE: Rotor(Motor) Support Latest Information. - Added by Richard Bolster almost 10 years ago

Read one of Philip's previous post after his remark. So used version 3.9.1567 and everything was working much better. No errors anymore like "comet failure".
Also know now why I got "No transponder available for subscription". When switching to another satellite the rotor doesn't move because it keeps busy with epg scan. Disabling EIT epg scan for all muxes prevents this and don't get errors "No transponder available for subscription". So to use mux scheduler? Suppose epg scan should unsubscribe automatically when changing satellite/transponder?!
Then only problem which remains (at least in my setup) is that while switching channels/satellite with rotor it moves to the correct position but status remains "testing". After I do an active scan at same mux then it works again. This happens frequently.
Is the above known?
Greetings, Richard

RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago

I think that the best way to solve this in latest tvh is to create a new issue - https://tvheadend.org/projects/tvheadend/issues . Add a "good log" and "bad log" there with identical starting position and identical streaming to compare timings and diseqc commands. I need log for "--trace linuxdvb,diseqc" .

RE: Rotor(Motor) Support Latest Information. - Added by Richard Bolster almost 10 years ago

Jaroslav Kysela wrote:

I think that the best way to solve this in latest tvh is to create a new issue - https://tvheadend.org/projects/tvheadend/issues . Add a "good log" and "bad log" there with identical starting position and identical streaming to compare timings and diseqc commands. I need log for "--trace linuxdvb,diseqc" .

Thank you very much for your help. Reported it as bug #2548 and hopefully printed the log files well. To me as non-expert it seems like diseqc rotor usals goto changed.

RE: Rotor(Motor) Support Latest Information. - Added by Philip Reynolds almost 10 years ago

Me again,
should 'zero sat longitude' really be part of USALS setup? I thought that the main point of USALS was to align you dish and rotor to true south, and the rotor/software would take care of the rest once you enter your correct long/lat?
I mean, I've aligned my dish to the nearest true south satellite in Finland, but that isn't 0 on the rotor. Or am I talking scooby doo again?

Regards,
Phil.

RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago

For USALS, I changed the formula in the recent code to follow Enigma2 code. It's in v3.9-2234-gad16b3d . Report errors in https://tvheadend.org/issues/2548 .

RE: Rotor(Motor) Support Latest Information. - Added by Philip Reynolds almost 10 years ago

Thanks Mr.J,
you are formula 1 guy.

Will checkout.

Br,
Phil.

RE: Rotor(Motor) Support Latest Information. - Added by Gary Brown almost 10 years ago

I've just updated to latest and it seems to be running better for me. My dish has been knocked off by the wind though so cannot get a lock and will need to get that sorted at some point.

RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago

Gary Brown wrote:

I've just updated to latest and it seems to be running better for me. My dish has been knocked off by the wind though so cannot get a lock and will need to get that sorted at some point.

Unfortunately, I forgot to remove some "debug" code which gave wrong results. The fixed version is v3.9-2237-g388f57e .

RE: Rotor(Motor) Support Latest Information. - Added by Richard Bolster almost 10 years ago

Jaroslav Kysela wrote:

Unfortunately, I forgot to remove some "debug" code which gave wrong results. The fixed version is v3.9-2237-g388f57e .

It seems to be fixed for me [[https://tvheadend.org/issues/2548#note-12]]
Great and compliments!
Curious how it will work for Philip, Gary and all others.

RE: Rotor(Motor) Support Latest Information. - Added by Trevor Tate almost 10 years ago

had another go with tvheadend today, updated to latest git this afternoon

I inserted the following code at line 364 of linuxdvb_rotor.c (I set site longitude=0 and latttide=0 in USAL options)
This turns my dish perfect. however what I have noticed is the first time I start tvheadend, and click on a service it will not tune in, i have to stop and start it again for it to work. At some point i will dig out my dreambox 800 , put a new image on it and try usals on that.

int integer = (int) lr->lr_sat_lon;
uint8_t angle_1=0;
uint8_t angle_2=0;
int fraction = (int) (((lr->lr_sat_lon - integer) * 16.0) + 0.9) & 0x0f;

if ((lr->lr_site_lon==0) && (lr->lr_site_lat==0)) {
//if (fraction==15) fraction--;
switch(fraction) {
case 1:
case 4:
case 7:
case 9:
case 12:
case 15:
fraction--;
break;
}
if (lr->lr_sat_lon < 0.0) angle_1 = 0xD0; // West is a negative angle value
else angle_1 = 0xE0; // East is a positive angle value

integer = abs(integer);
angle_1 |= ((integer / 16) & 0x0f);
integer = integer % 16;
angle_2 |= ((integer & 0x0f) << 4) | fraction;
printf ("Sending Direct DISEQC 0x6E Command with angles %01x %01x\n",angle_1,angle_2);
for (i = 0; i <= ls->lse_parent->ls_diseqc_repeats; i++) {
if (linuxdvb_diseqc_send(fd, 0xE0, 0x31, 0x6E, 2,
angle_1, angle_2)) {
tvherror("diseqc", "failed to send USALS command");
return -1;
}
usleep(25000);
}
}
else

RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago

Trevor Tate wrote:

had another go with tvheadend today, updated to latest git this afternoon

I inserted the following code at line 364 of linuxdvb_rotor.c

What does not work for you with enigma2 USALS code in latest tvh ? Do you have tried it ?

RE: Rotor(Motor) Support Latest Information. - Added by Ron L almost 10 years ago

Just playing with the new commits from today as well. Have a V-Box on order, but not here as yet so can't verify what is actually working, just watching trace and seeing what commands are sent. Noticed some things.

Just set up a couple sats with GOTOX. Entered all the Position, Longitude, Rate correctly as far as I can tell. Here is how it's working.

One sat 101W another 107.3W actually port 1 and port 2 on a diseqc switch.

Channel tuned on 107.3W. Select another on same sat. Says already positioned on 107.3W doesn't send gotox just tunes. Perfect.

Select channel on 101W. Sends gotox. Seems to calculate a time, tunes. Perfect.

Select another channel on 101W. Doesn't say already positioned. Sends gotox. Waits Max rotor movement time then tunes. So Max time to change channels on that same sat.

Select channel back on 107.3W. Sends gotox, but doesn't seem to calculate. Waits Max time then tunes.

So getting better. It would really help to not have to wait for max rotor time when changing channels on the same sat. Not sure why it works on one sat and not another. Seems weird that the message says positioned @ 107.3W as it always gives that even if I change Longitude in config. Are you relying on NIT data to figure out what satellite you are positioned on? NIT data will often be incorrect or missing. Relying on Longitude entered into config by the user would be the only way to really keep track. You are going to have a separate satconfig and separate network for each position, so one should be able to safely assume channels in the same network don't need gotox sent again. Just tune. Channels in the same MUX don't even need to tune, just swap PIDs.

RE: Rotor(Motor) Support Latest Information. - Added by Richard Bolster almost 10 years ago

Jaroslav Kysela wrote:

What does not work for you ......

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, so was hoping this would be solved.
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.
Di I miss something or should report it as a bug

trace_watch_tv_gelderland_bbc_scotland (624 KB) trace_watch_tv_gelderland_bbc_scotland tv_gelderland at fixed dish and bbc_scotland at rotor

RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago

Version v3.9-2250-gd9bb16e should rely only on the position values from the rotor configs. Previously the NIT tables were used to get the orbital position for a network.

RE: Rotor(Motor) Support Latest Information. - Added by Ron L almost 10 years ago

OK testing 2250. It's calculating wait time both ways now. However it's now sending GOTOX everytime no matter if the channel is on the same sat or not.

RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago

Ron L wrote:

OK testing 2250. It's calculating wait time both ways now. However it's now sending GOTOX everytime no matter if the channel is on the same sat or not.

It should be fixed in v3.9-2252-g1145484 .

RE: Rotor(Motor) Support Latest Information. - Added by Ron L almost 10 years ago

Still sending gotox everytime. I'm testing it over HTTP at the moment if that makes a difference.

RE: Rotor(Motor) Support Latest Information. - Added by Jaroslav Kysela almost 10 years ago

Ron L wrote:

Still sending gotox everytime. I'm testing it over HTTP at the moment if that makes a difference.

I found another minor bug in the position cache code - v3.9-2253-g70c65a3 it out.

RE: Rotor(Motor) Support Latest Information. - Added by Ron L almost 10 years ago

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 :)

(76-100/140)