catalinii / minisatip

minisatip is an SATIP server for linux using local DVB-S2, DVB-C, DVB-T or ATSC cards
https://minisatip.org
327 stars 81 forks source link

DVBS Unicable/JESS first tune failed. #313

Closed tunip closed 7 years ago

tunip commented 8 years ago

I use minisatip in a JESS setup. If I tune the first time, tuning fails (tuner1). Then the TV server (Tvheadend) retunes (tuner2) and then it works. Changed also tuner priorities to check if its happens only on tuner1. IT is reproducible on every tuner order. If one tuner is in use, every next tuner starts immediately. 8 parallel streams on aller tuners works fine. Only the first/initial tuning doesn't start instantly.

Start parameter: minisatip -f -R /data/html -j 0:0-1210,1:1-1420,2:2-1680,3:3-2040,4:4-1005,5:5-1050,6:6-1095,7:7-1140 (tried also -u for unicable)

Tuner: Digital Devices Max S8 (driver 0.9.26)

LNB: DUR-line UK 124 - Unicable LNB

Log: http://pastebin.com/v70TvzLh

catalinii commented 8 years ago

Hi,

To summarize, only the first tune fails. But the tune on other adapters after the first tune works.

1) tuning later on tuner 0 fails as well? 2) in the log you have tuned on the same frequency but on different slot and base frequency ... are you sure the jess switch is properly set? 3) are all the adapters connected to the same cable? If yes, setting -j 0:1-1420,1:0-1210,2:2-1680,3:3-2040,4:4-1005,5:5-1050,6:6-1095,7:7-1140 does it make difference on the first tune?

Thanks

tunip commented 8 years ago

It is replicable on every first tune.

1) No, if a tuner could tune, the remaining 7 tuners are very fast in switching channel (all 8 tuners works simultaneously fine) 2) What you see in the log is the behavior of Tvheadend. If a tuner fails, Tvheadend is trying the next free tuner. I am using a unicable/jess LNB/LNC not a switch. One cable from the LNB/LNC directly to the tv-card. (http://www.durasat.de/lnb-lnc/unicable-23-mm-flansch-8er-lnb/uk-124-einkabel-lnb-fuer-24-teilnehmer.html) (http://www.digital-devices.eu/shop/de/max-serie/max-serie/218/8-tuner-tv-karte-full-spectrum-dd-max-s8-4/8-tv-card) 3) Yes, all adapters connected to one cable (Modus 3 on the tv-card). Your settings make no difference on the first tune.

I ordered this unicable/jess LNB/LNC because a lot of VU+ Solo 4K (linux tv receiver) users are using this one without a issue. Connected the same way as I (LNB/LNC directly connected to the receiver with one cable).

Thx

chefmagier commented 8 years ago

I suppose you need the "master"-feature because your DVB-card can only use 4 different parameters: "Master Tuner" So: 4x master and 4x slave. I don't own the card, but looks like your solution

catalinii commented 8 years ago

Hi

Is this still an issue?

Thanks

teissler commented 8 years ago

Hi,

at least for me on e9345b965492b4b2c2e6cf9795d43ad15c8758cc this is still an issue.

If you made any changes regarding this since, i have to verify this with a new version.

Kind regards

teissler commented 8 years ago

I also have this issue on b124ec94fe54187b524673fae1588a2f523be091.

[Uploading minisatip_log_1st_jess_tune_failed.txt…]()

catalinii commented 8 years ago

Did the suggestion about master help?

Thanks

tunip commented 8 years ago

You don't need a master for this tuner card. Question is more, where we can resolve this issue. In minisatip or on client side (tvheadend). If i put this card in a octopus net case mit digital devices satip server, there is no issue with the first tune. Everything works as expected. Maybe a look into the source code can help. https://github.com/DigitalDevices/octonet

teissler commented 8 years ago

I use pure vlc as client, so this is definitely an issue of the server component and not the client.

catalinii commented 8 years ago

Hi,

can you post the log again ?

it got deleted.

Thanks

teissler commented 8 years ago

minisatip_log_1st_jess_tune_failed.txt Sure.

tunip commented 8 years ago

Any news on this? Can we help in testing ? Do you need more logs? Let us know...

estimadarocha commented 8 years ago

i am with same problem... first tune always fail... them and after that all works good

i am using a inverto unicable 2 that suplies 2 digibit r1 each one with satipaxe!

tunip commented 8 years ago

My JESS LNB is directly connected to the tv-card. This means, the tv-card is powering the LNB on first tune. Is there an option in minisatip where the LNB is still powered in idle-state or you can adjust some timings? Maybe this is the culprit?

9000h commented 8 years ago

maybe the easiest way to fix this issue is to use a power inserter power-inserter picture from meintechblog.de

or you can try to use an option at module load, but this is depending on the fronted implementation

dvb_core

dvb_powerdown_on_sleep Turn LNB power off on sleep Values: integer Default: 1 (enabled)

like options dvb_core dvb_shutdown_timeout=0 options dvb_core dvb_powerdown_on_sleep=0

catalinii commented 8 years ago

Hi,

can you please send me the logs again with -l -l -l

This log level shows the unicable log messages.

Thanks

9000h commented 8 years ago

I have Inverto IDLU-UWT110-CUO1O-32P Unicable 2 Multischalter here (external powered), and have not seen any issue like this.

estimadarocha commented 8 years ago

@catalinii lets see if @tunip can do it quickly because he's using minisatip directly and i am using it inside satipaxe... however problem seens similar.

tunip commented 8 years ago

@9000h Thx for your suggestion, but you can't buy the power inserter seperate. Nowhere found to buy it.

@catalinii After the below messages it repeats (tvheadend is trying to tune more then one time): [25/10 13:31:20.059 AD0]: no data sent for more than 1s sid: 0 for 172.18.0.5:52376 Message repeated 2 times [25/10 13:31:22.868 signal]: get_signal took 11 ms for adapter 0 handle 7 (status: 0, ber: 0, strength:76,snr: 0, max_strength: 19646, max_snr: 1 0) [25/10 13:31:23.164 AD0]: no data sent for more than 1s sid: 0 for 172.18.0.5:52376 Message repeated 5 times

And the full log (95KB): minisatip.log.txt

Note: I disabled the other 7 tuners from the 8 tuner-card in Tvheadend. If I test with only 1 tuner, this shows the issue much more in deep (tuning fails always).

9000h commented 8 years ago

@tunip you can use also other vendors like: axing_

9000h commented 8 years ago

@tunip is the DD Max S8 a revision V2, if yes do have the dddvb 0.9.26 as the driver installed? there was a fix for the V2 revision https://github.com/DigitalDevices/dddvb/commit/a98a7c95a8e81ca367995a72d380df61f7d08636

tunip commented 8 years ago

@9000h Many Thanks! Lets see if catalinii can fix this tuning-issue in minisatip before I invest 30€. Should v2 and yes I use dddvb version 0.9.26. Card works fine with tvheadend and vdr. It also works with minisatip if I enable more than 1 tuner (with the first tuning fails of course).

9000h commented 8 years ago

@tunip did you try to load the module dvb_core with this options?

options dvb_core dvb_shutdown_timeout=0 options dvb_core dvb_powerdown_on_sleep=0

9000h commented 8 years ago

@tunip is your DD Max S8 V2 going hot?

catalinii commented 8 years ago

Hi, can u try the last commit if it makes a difference ?

Thanks

tunip commented 8 years ago

@catalinii Thx for the quick update. Unfortunately the same issue.

Full log: minisatip_2.log.txt

@9000h DD Max S8 V2 is quite "cool" (in the front of my case i have 3 120mm fans in the direction of the card. And i case of Unicable/JESS the card gets not so hot as you use all 4 ports). Have to test your module options later.

9000h commented 8 years ago

ok if your DD Max S8 V2 is quite "cool" the you have a good one, there where some out with wrong SMD resistors these are going hot.

9000h commented 8 years ago

one of the latest changes messed up the unicable

9000h commented 8 years ago

git reset --hard f534c5935e9728dadeec9f1b035e43af2d932514 this is working fine here

9000h commented 8 years ago

the latest commit did not fix the issue, at least the vertical pol is not working

9000h commented 8 years ago

the issue is probably timing, after the code change the diseqc_cmd is using msleep(d->before_cmd); only one time

catalinii commented 8 years ago

Hi,

Can you upload a debug with -l -l -l before the change and after?

Thanks

9000h commented 8 years ago

did sent the logs to you the difference is the get_signal took 3 ms is not working and get_signal took 61 ms its working

9000h commented 8 years ago

so d->committed_no is 0 looks like the root cause is in adapter.c

9000h commented 8 years ago

looks good now

9000h commented 8 years ago

for those having a DD Max S8 V1.2 and it's going hot and not under warranty there is a fix available, but better ask DD for replacement/repair https://forum.cesbo.com/uploads/monthly_10_2016/post-1-0-94501400-1476079889.png

teissler commented 8 years ago

For me the current build 61186abf00504677f46765e46b8c94ebcd3701c5 doesn't fix this.

Do you need logfiles?

tunip commented 8 years ago

The latest changes doesn't fix the issue for me too.

1 tuner enabled (tuning is never possible): minisatip_1tuner.log.txt

2 tuner enabled (first tuning attempt fails, after that tuning is possible): minisatip_2tuner.log.txt

9000h commented 8 years ago

looks like there is still a timing issue with jess, 10ms to get_signal is to fast [02/11 10:57:43.315 signal]: get_signal took 10 ms for adapter 1 handle 9 (status: 0, ber: 0, strength:118, snr: 0, max_strength: 30306, max_snr: 1 0)

tunip commented 8 years ago

@9000h I think so, but only for the first/initial tune. If you start from "idle" (all tuners are offline in webinterface), which means the LNB is not powered by the tv-card. Where can i play in the code with the timings if all tuners are offline?

9000h commented 8 years ago

did you really check out the latest git and also do a make clean before compile?

tunip commented 8 years ago

Of course :-)...

Maybe we need something like this?

1) If all tuners/adapters are "offline" (ad_enabled == 0), then more permissively timing for get_signal in unicable/jess mode;

if (ad_enabled == 0); then
   more permissively timing for get_signal in unicable/jess mode;
fi

OR

2) If all tuners/adapters are "offline" (ad_enabled == 0), then first power on the LNB before tune a channel;

Maybe these options could help. But in which direction/way should I tune this settings? --diseqc --diseqc-timing

9000h commented 8 years ago

I did test here with -u and -j and it looks ok, please double check if you really use the new compiled version [02/11 13:31:28.514 main]: send_jess fd 15, freq 1880, ufreq 984, pos = 0, pol = 0, hiband = 1, slot 4, diseqc => 71 26 f4 01 d0 ... [02/11 13:31:32.083 signal]: get_signal took 74 ms for adapter 4 handle 15 (status: 31, ber: 0, strength:103, snr: 59, max_strength: 26536, max_snr: 15200 0)

tunip commented 8 years ago

@9000h Were your tests performed with or without a power inserter? You wrote that you have no issues, because you external powered your IDLU-UWT110-CUO1O-32P.

9000h commented 8 years ago

yes I have a powered switch , but the 50 - 74 ms get_signal did come from the msleep's before and after the diseqc commands and mandatory

before https://github.com/catalinii/minisatip/commit/61186abf00504677f46765e46b8c94ebcd3701c5 there where a change which did broke the timing and I had also "get_signal took 3ms" with unicable/jess

unicable1

tunip commented 8 years ago

But the timing issue still exist.

I did a rm -rf minisatip and then a git clone https://github.com/catalinii/minisatip.git. I am using 100% the latest git-code.

The main reason for this issue was, hopefully we could resolve this by software with some optimized timings. If this is not possible, it is not a big problem, then I would buy a Quattro LNB with a powerd switch and JESS output like you use.

The Unicable/JESS LNBs are on the market and working fine with e.g. Vu+ Solo 4K (if you look into the support forums or amazon reviews). That was my intention I could use this LNB with minisatip too.

catalinii commented 8 years ago

Hey guys,

1) the get_signal has nothing to do with tuning as it is in a different thread. 2) I do not have access to a system with this configuration so it is kinda of hard for me to figure out what is missing (if I would it would be easier). 3) If you guys have an idea what is missing let me know and I can implement it. 4) If I would have access to a system that works, and maybe you know another software that does work (and have available sources) I can look what is missing.

Thanks

estimadarocha commented 8 years ago

@catalinii i have a system with tvheadend receiving from 2 satipaxe from perexg that was minisatip in its code. Satipaxe receives from jess lnb.

By the way and sorry for off topic does a small contribution may help you with this and the kernel buffers issue???

chefmagier commented 8 years ago

Hi all, I am no programmer, but please have a look at the current git of tvheadend. I just got the JESS compatibility in one of the last patches with my DUR-Line JESS LNB and my Max S8. They added an "unicable II switch" to differ between the standards. Works perfectly.

Gesendet mit meinem HTC

----- Nachricht beantworten ----- Von: "estimadarocha" notifications@github.com An: "catalinii/minisatip" minisatip@noreply.github.com Cc: "chefmagier" listenmitglied@arcor.de, "Comment" comment@noreply.github.com Betreff: [catalinii/minisatip] DVBS Unicable/JESS first tune failed. (#313) Datum: Do., Nov. 3, 2016 01:41

@catalinii i have a system with tvheadend receiving from 2 satipaxe from perexg that was minisatip in its code. Satipaxe receives from jess lnb.

By the way and sorry for off topic does a small contribution may help you with this and the kernel buffers issue???

—You are receiving this because you commented.Reply to this email directly, view it on GitHub, or mute the thread.

{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/catalinii/minisatip","title":"catalinii/minisatip","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/catalinii/minisatip"}},"updates":{"snippets":[{"icon":"PERSON","message":"@estimadarocha in #313: @catalinii i have a system with tvheadend receiving from 2 satipaxe from perexg that was minisatip in its code. Satipaxe receives from jess lnb. \r\n\r\nBy the way and sorry for off topic does a small contribution may help you with this and the kernel buffers issue???"}],"action":{"name":"View Issue","url":"https://github.com/catalinii/minisatip/issues/313#issuecomment-258041496"}}}

tunip commented 8 years ago

@catalinii If you want/need access to my system, let me know it.

Working solutions are VDR, Tvheadend (partly), Vu+ STBs.

VDR: ftp://ftp.tvdr.de/vdr/vdr-2.2.0.tar.bz2

Tvheadend: https://github.com/tvheadend/tvheadend/commit/766f2fdac4f872ec0a4f7520f3fd6b4c5c604798 https://github.com/tvheadend/tvheadend/commit/3f79dff5c02eea389dc5a395d4d457a5849ccd02

Vu+ STB: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=commit;h=7b7a80a1f979b0bd9c68aa33af968db25bf63f81

@chefmagier If you only enable 1 tuner/adapter in Tvheadend (without minisatip) and restarting the daemon, the first tune also fails.

[   INFO] http: 10.10.17.2: using ticket A89474FA15591C4323F72A402103C63C47FC1441 for /stream/channelid/2109665682
[   INFO] mpegts: 11493.75H in Astra - tuning on MXL5XX : DVB-S #0
[   INFO] subscription: 0001: "HTTP" subscribing on channel "Das Erste HD", weight: 100, adapter: "MXL5XX : DVB-S #0", network: "Astra", mux: "11493.75H", provider: "ARD", service: "Das Erste HD", profile="transcode-mobile", hostname="10.10.17.2", client="VLC/3.0.0-git LibVLC/3.0.0-git"
[WARNING] subscription: 0001: service instance is bad, reason: No input detected
[WARNING] subscription: 0001: restarting channel Das Erste HD
[   INFO] mpegts: 11493.75H in Astra - tuning on MXL5XX : DVB-S #0
[   INFO] subscription: 0001: "HTTP" subscribing on channel "Das Erste HD", weight: 100, adapter: "MXL5XX : DVB-S #0", network: "Astra", mux: "11493.75H", provider: "ARD", service: "Das Erste HD", profile="transcode-mobile", hostname="10.10.17.2", client="VLC/3.0.0-git LibVLC/3.0.0-git"

But every next tune on this tuner/adapter is successful. Tvheadend is still powering the LNB also when it is not in use (my server is connected to a UPS with power consumption display - the different is 7 Watt if the LNB is powered). If I enable powersave option (switch off LNB) in Tvheadend (like minisatip?), every tuning also fails in Tvheadend.

VDR is always powering the LNB if you use the tuners or not, because the tuners are in "use" (no powersave option here).

Can't say about the Vu+ STBs, because I do not have one.

In minisatip with only 1 tuner/adapter enabled first tuning fails, but if I stop and start the tuning again, tuning is successful (LNB is then powered from the first unsuccessful attempt).