catalinii / minisatip

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

REQUEST: Time to support DVB-S2X ? #1063

Closed lars18th closed 3 months ago

lars18th commented 1 year ago

Hi @catalinii ,

After reading the issue #978 I feel it's time to add support for DVB-S2X. I've started checking the 19.2E 11008.50V DVB-S2X QPSK 22000 11/20 transponder. My first try is with this URL: http://192.168.1.133:8080/?freq=11008&src=1&pol=v&msys=dvbs2x&mtype=qpsk&sr=22000&pids=0,1,16,17,18

However it doesn't work. The target is a Edision OS nino pro with a DVB-S2X tuner running the last version of minisatip.

Acording to the documentation: https://dvb.org/wp-content/uploads/2021/02/A179_Service-discovery-and-delivery-protocols-for-a-DVB-Home-Broadcast-system_Feb-2021.pdf the URL is valid (check page 37).

At time I don't recommend to support something complex impossible to test it (for example bonding support tunning multiple frequencies at the same time). However, as we have some transponders to test it I suggest to try to add some basic tunning support.

You agree?

Note: Another transponder for testing is: 13E 11200V DVB-S2X 16APSK 34290 32/45.

catalinii commented 1 year ago

I think it is perfectly fine to support dvb-s2x. I just do not have the hardware for it.

lars18th commented 1 year ago

I think it is perfectly fine to support dvb-s2x. I just do not have the hardware for it.

Opps, sorry! In my case I've one Edision OS Nino pro (second hand) with a compatible DVB-S2X tuner. I feel it's the cheaper option to have a compatible S2X tuner in a Linux box. Anyway, if you will start some implementation for it, I can check it.

Regards.

Note: Perhaps the best is to try to start adding support for this tunning mode in the satipc module. I'll try to find one SAT>IP server compatible for initial tests. In any case, for the SAT>IP client side perhaps the code could start parsing the new msys mode and the optional parameters. What you think?

catalinii commented 1 year ago

I can try to work on it, but I think I will need remote access to the box.Otherwise it will be a lot of back and forth with a long development time.

Yuri666 commented 1 year ago

Seems also needs support in dvb drivers, but isn't: https://github.com/Duckbox-Developers/buildsystem-ddt/blob/master/patches/armbox/vuplus_common/3_14_dvbs2x.patch

lars18th commented 1 year ago

Hi @Yuri666 ,

Seems also needs support in dvb drivers, but isn't: https://github.com/Duckbox-Developers/buildsystem-ddt/blob/master/patches/armbox/vuplus_common/3_14_dvbs2x.patch

So first we need to found almost one Linux box with valid drivers capable of tuning one of the available DVB-S2X transponders. You have some idea?

Yuri666 commented 1 year ago

Ok, I have x86 linux box with dvb-s2x card and dish to 13E :)

lars18th commented 1 year ago

Ok, I have x86 linux box with dvb-s2x card and dish to 13E :)

Therefore, please could you try to tune 13E 11200V DVB-S2X 16APSK 34290 32/45 with some linux tool and share with us the results?

Yuri666 commented 1 year ago

I don't see in my dvb card frontend driver code fec=32/45, why needs try to tune? It won't work static struct tas2101_modfec tas2101_modfec_modes[] = { { SYS_DVBS, QPSK, FEC_AUTO }, { SYS_DVBS, QPSK, FEC_1_2 }, { SYS_DVBS, QPSK, FEC_2_3 }, { SYS_DVBS, QPSK, FEC_3_4 }, { SYS_DVBS, QPSK, FEC_4_5 }, { SYS_DVBS, QPSK, FEC_5_6 }, { SYS_DVBS, QPSK, FEC_6_7 }, { SYS_DVBS, QPSK, FEC_7_8 }, { SYS_DVBS, QPSK, FEC_8_9 }, { SYS_DVBS2, QPSK, FEC_1_2 }, { SYS_DVBS2, QPSK, FEC_3_5 }, { SYS_DVBS2, QPSK, FEC_2_3 }, { SYS_DVBS2, QPSK, FEC_3_4 }, { SYS_DVBS2, QPSK, FEC_4_5 }, { SYS_DVBS2, QPSK, FEC_5_6 }, { SYS_DVBS2, QPSK, FEC_8_9 }, { SYS_DVBS2, QPSK, FEC_9_10 }, { SYS_DVBS2, PSK_8, FEC_3_5 }, { SYS_DVBS2, PSK_8, FEC_2_3 }, { SYS_DVBS2, PSK_8, FEC_3_4 }, { SYS_DVBS2, PSK_8, FEC_5_6 }, { SYS_DVBS2, PSK_8, FEC_8_9 }, { SYS_DVBS2, PSK_8, FEC_9_10 }, { SYS_DVBS2, APSK_16, FEC_2_3 }, { SYS_DVBS2, APSK_16, FEC_3_4 }, { SYS_DVBS2, APSK_16, FEC_4_5 }, { SYS_DVBS2, APSK_16, FEC_5_6 }, { SYS_DVBS2, APSK_16, FEC_8_9 }, { SYS_DVBS2, APSK_16, FEC_9_10 }, { SYS_DVBS2, APSK_32, FEC_3_4 }, { SYS_DVBS2, APSK_32, FEC_4_5 }, { SYS_DVBS2, APSK_32, FEC_5_6 }, { SYS_DVBS2, APSK_32, FEC_8_9 }, { SYS_DVBS2, APSK_32, FEC_9_10 }, };

lars18th commented 1 year ago

Hi @Yuri666 ,

Why not try with fec=auto? The info is from here: https://en.kingofsat.net/pos-13E.php However, I feel is wrong as https://www.lyngsat.com/Hotbird-13B-13C-13E.html indicates: 11200 V | DVB-S2 16APSK 34285 3/4. Therefore try with fec=34 and fec=auto.

lars18th commented 1 year ago

Great news!

Using current version of the minisatip running in a Edision OS nino pro, this request it's sufficient to tune the 13E DVB-S2X testing transponder: ?freq=11200&pol=v&msys=dvbs2&mtype=auto&sr=34290&pids=0,1,16,18,512,4112,7166.

In this request the msys is incorrect, but the driver seems to select the correct one, because the dvb-fe-tool -a 0 -f 0 -g -m -v shows:

Device DVB-S2X (External) (/dev/dvb/adapter0/frontend0) capabilities:
     CAN_2G_MODULATION
     CAN_FEC_1_2
     CAN_FEC_2_3
     CAN_FEC_3_4
     CAN_FEC_4_5
     CAN_FEC_5_6
     CAN_FEC_6_7
     CAN_FEC_7_8
     CAN_FEC_8_9
     CAN_FEC_AUTO
     CAN_INVERSION_AUTO
     CAN_MULTISTREAM
     CAN_QPSK
     CAN_RECOVER
DVB API Version 5.10, Current v5 delivery system: DVBS2
Supported delivery systems:
    [DVBS2]
     DVBS
Frequency range for the current standard:
From:             950 MHz
To:              2,15 GHz
Step:            1,00 MHz
Tolerance:       5,00 MHz
Symbol rate ranges for the current standard:
From:                 0Bauds
To:              60,0 MBauds
Got parameters for DVBS2:
FREQUENCY = 1450000
INVERSION = AUTO
SYMBOL_RATE = 0
INNER_FEC = 3/4
MODULATION = APSK/16
PILOT = OFF
ROLLOFF = AUTO
POLARIZATION = OFF
STREAM_ID = 4294967295
DELIVERY_SYSTEM = DVBS2
FREQUENCY = 1450000
INVERSION = AUTO
SYMBOL_RATE = 0
INNER_FEC = 3/4
MODULATION = APSK/16
PILOT = OFF
ROLLOFF = AUTO
POLARIZATION = OFF
STREAM_ID = 4294967295
DELIVERY_SYSTEM = DVBS2
Got parameters for DVBS2:
FREQUENCY = 1450000
INVERSION = AUTO
SYMBOL_RATE = 0
INNER_FEC = 3/4
MODULATION = APSK/16
PILOT = OFF
ROLLOFF = AUTO
POLARIZATION = OFF
STREAM_ID = 4294967295
DELIVERY_SYSTEM = DVBS2

And here the modulation is correct "APSK/16".

From this we can assume that:

Regards.

Yuri666 commented 1 year ago

Of course i'm tryed fec=auto, fec=3/4, mod=16apsk, mod=auto but without any luck (and any lock). My tbs6504 very sensitive to stream parameters - for example it can't lock dvb-s2 transponder if in parameters set dvb-s. I will try tbs6590 soon. it more tolerant to parameters. But I doubt to success anyway. I think dvb-s2x set top boxes have modified dvb drivers.

lars18th commented 1 year ago

Hi @Yuri666 ,

I think dvb-s2x set top boxes have modified dvb drivers.

I don't know, however, now I'm waching the Eutelsat demo channel (just 576p H.264 loop program with 1.5Mbps) from my minisatip central server that uses the Edision STB running another minisatip slave instance. So, at time I feel it isn't necessary to implement new enhancements. Almost until the drivers will be more mature and more transponders will be available.

For reference only: If someone wants to test DVB-S2X tunning (with minisatip) try 13E position with this request: ?freq=11200&pol=v&msys=dvbs2&mtype=auto&sr=34290&pids=0,1,16,18,512,4112,7166 or ?freq=11200&pol=v&msys=dvbs2&mtype=dvbs2&sr=34290&pids=0,1,16,18,512,4112,7166

Regards.

Yuri666 commented 1 year ago

mtype=auto Device TurboSight TBS 6504 DVB-S/S2/S2X/T/T2/C/C2/ISDB-T (/dev/dvb/adapter2/frontend0) capabilities: CAN_2G_MODULATION CAN_FEC_1_2 CAN_FEC_2_3 CAN_FEC_3_4 CAN_FEC_5_6 CAN_FEC_7_8 CAN_FEC_AUTO CAN_GUARD_INTERVAL_AUTO CAN_HIERARCHY_AUTO CAN_INVERSION_AUTO CAN_MULTISTREAM CAN_MUTE_TS CAN_QAM_16 CAN_QAM_32 CAN_QAM_64 CAN_QAM_128 CAN_QAM_256 CAN_QAM_AUTO CAN_QPSK CAN_TRANSMISSION_MODE_AUTO DVB API Version 5.11, Current v5 delivery system: DVBS2 Supported delivery systems: DVBS [DVBS2] DSS Frequency range for the current standard: From: 950 MHz To: 2,15 GHz Symbol rate ranges for the current standard: From: 1,00 MBauds To: 45,0 MBauds Got parameters for DVBS2: FREQUENCY = 1450000 INVERSION = AUTO SYMBOL_RATE = 34290000 INNER_FEC = AUTO MODULATION = QAM/AUTO PILOT = AUTO ROLLOFF = AUTO POLARIZATION = OFF STREAM_ID = 4294967295 DELIVERY_SYSTEM = DVBS2 FREQUENCY = 1450000 INVERSION = AUTO SYMBOL_RATE = 34290000 INNER_FEC = AUTO MODULATION = QAM/AUTO PILOT = AUTO ROLLOFF = AUTO POLARIZATION = OFF STREAM_ID = 4294967295 DELIVERY_SYSTEM = DVBS2

mtype=16apsk Device TurboSight TBS 6504 DVB-S/S2/S2X/T/T2/C/C2/ISDB-T (/dev/dvb/adapter2/frontend0) capabilities: CAN_2G_MODULATION CAN_FEC_1_2 CAN_FEC_2_3 CAN_FEC_3_4 CAN_FEC_5_6 CAN_FEC_7_8 CAN_FEC_AUTO CAN_GUARD_INTERVAL_AUTO CAN_HIERARCHY_AUTO CAN_INVERSION_AUTO CAN_MULTISTREAM CAN_MUTE_TS CAN_QAM_16 CAN_QAM_32 CAN_QAM_64 CAN_QAM_128 CAN_QAM_256 CAN_QAM_AUTO CAN_QPSK CAN_TRANSMISSION_MODE_AUTO DVB API Version 5.11, Current v5 delivery system: DVBS2 Supported delivery systems: DVBS [DVBS2] DSS Frequency range for the current standard: From: 950 MHz To: 2,15 GHz Symbol rate ranges for the current standard: From: 1,00 MBauds To: 45,0 MBauds Got parameters for DVBS2: FREQUENCY = 1450000 INVERSION = AUTO SYMBOL_RATE = 34290000 INNER_FEC = AUTO MODULATION = APSK/16 PILOT = AUTO ROLLOFF = AUTO POLARIZATION = OFF STREAM_ID = 4294967295 DELIVERY_SYSTEM = DVBS2 FREQUENCY = 1450000 INVERSION = AUTO SYMBOL_RATE = 34290000 INNER_FEC = AUTO MODULATION = APSK/16 PILOT = AUTO ROLLOFF = AUTO POLARIZATION = OFF STREAM_ID = 4294967295 DELIVERY_SYSTEM = DVBS2

no lock

lars18th commented 1 year ago

Hi @Yuri666 ,

Try with "mtype=16apsk" and

SYMBOL_RATE = 0
INNER_FEC = 3/4
PILOT = OFF

These three values are different in my case.

Yuri666 commented 1 year ago

symbol_rate = 0 is impossible, dvb card can't autodetect symbolrate. Other options do not affect

lars18th commented 1 year ago

symbol_rate = 0 is impossible, dvb card can't autodetect symbolrate. Other options do not affect

Therefore I can't help you. 😢

Jalle19 commented 1 year ago

Is there anything actionable that can be done to this ticket? Or does DVB-S2X work now? I don't have any such feeds available myself so I'm unable to test.

Yuri666 commented 1 year ago

As far as I understand, there is no support DVB-S2X in linux drivers now

9000h commented 1 year ago

dddvb at least for supported cards from Digital Devices should have it

sundtek commented 1 year ago

just FYI Sundtek Dual S2 supports DVB-S2X. I think some here own such a unit? SkyTV 8 (single tuners) since 2019 support S2X too.

Jalle19 commented 3 months ago

I think we should close this until there's something that needs to actually be changed in minisatip for DVB-S2X to work on more devices. Driver changes are out of scope here.

Would be nice if someone with Digital Devices hardware could test. I don't have access to any satellites with DVB-S2X streams so I can't test regardless of hardware.