Blindscan on linux with tbs cards

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
697
Reaction score
420
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
Changing .i2c_speed to 3 (instead of the default 9) roughly halves the i2c transfer time from 50ms to
25ms. At first sight no problems occured.
I had to guess the value.

As a result, running two spectral scans on 2 sats (low+high band, Vertical+horizontal) takes 25 seconds.
So now everything seems to run at full speed. This is possible because while one demod is computing the
spectrum, the other one can download a spectrum it computed easier.
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
697
Reaction score
420
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
In the latest version of the driver code, spectrum acquistion is now much faster on tbs6904se:
11 seconds for a complete satellite, including both polarisations and both bands.....
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
697
Reaction score
420
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
Text below edited because I pasted the wrong log file. I had to remove some lines to keep the post small enough

I have been working on changing the kernel code to make better use of the many tuners in stid135 based cards.
The code is not yet uploaded, but a command like this
Code:
stid135-blindscan -cblindscan -a 0 1 2 3 4 5 6 7 -r 0   -U2
will scan one sattelite on uncommitted switch set to port 2 (5.0W in this case), and using RF input 0 in
less than 2 minutes and using 8 tuners. That means that for most (but not all) of the work,
scanning will be done in parallel.

To exploit these changes, you will need the very latest kernel driver (available next week)
and a new command line program called stid135-blindscan. Currently only the 6909x card
is supported. Also the stid135-blindscan program does not wait for service information. So '
it only produces a list of muxes which can be locked. That list is left in
/tmp/blindscan_rf0.dat
and contains entries like
Code:
S2 11015744 H 35293251 2/3 AUTO 8PSK
S2 11461063 H 5779899 3/4 AUTO QPSK
S2 11471283 H 9899754 4/5 AUTO QPSK
S2 11479487 H 3214947 3/4 AUTO 8PSK
S2 11675233 H 35293466 2/3 AUTO 8PSK
S1 11453669 H 542530 1/2 AUTO QPSK
S2 11464938 H 666988 3/5 AUTO 8PSK
Also it shows progress in the terminal (see below)

This required some changes to dvbapi. Existing programs should still be able to work with the
modified drivers, but this has not been tested much. In future versions of neumoDVB all tuners will be
able to reach LNBs on any of the RF inputs, whereas in existing drivers each tuner can only reach one
of the input cables.

Code:
adapter_no=0 1 2 3 4 5 6 7 
rf_in=0
frontend=0
start-freq=-1
end-freq=-1
step-freq=6000
pol=3
pls_codes[5]={ 4202496, 2048, 98139136, 134216704, 80015360, }
diseqc=UC: U=2 C=-1
Blindscan drivers found
=======================================
Blindscan using the following adapters:
    TBS 6909X #0 RF_IN=0
    TBS 6909X #1 RF_IN=0
    TBS 6909X #2 RF_IN=0
    TBS 6909X #3 RF_IN=0
    TBS 6909X #4 RF_IN=0
    TBS 6909X #5 RF_IN=0
    TBS 6909X #6 RF_IN=0
    TBS 6909X #7 RF_IN=0
==========================
Acquiring spectrum on adapter 0
SPECTRUM: 10700.000-11700.000 pol=H
Found 24 peaks
Adap0    Tuning to 10932.900H 62.500kS/s FAILED
Adap3    Tuning to 11114.900H 62.500kS/s FAILED
Adap6    Tuning to 11296.900H 62.500kS/s FAILED
Adap0    Tuning to 11015.800H 36625.000kS/s 
    freq=11015.755H Symrate=35293 Stream=4     pls_mode= 0:16416
    MATYPES: 4: 0xda 5: 0xda 1: 0xda 
    SIG=-45.78dB     SIG= 55% CNR=11.90dB CNR= 59% 
    DVB-S2 QPSK FEC_NONE INV_ON  PIL_OFF ROLL_20
..
Adap4    Tuning to 11461.000H 6312.500kS/s 
    freq=11461.074H Symrate=5779  Stream=-1    pls_mode= 0:    1
    SIG=-53.12dB     SIG= 47% CNR=13.20dB CNR= 66% 
    DVB-S2 QPSK FEC_3_4 INV_ON  PIL_OFF ROLL_20
Adap4    Tuning to 11589.500H 62.500kS/s FAILED
Adap3    Tuning to 11471.250H 10750.000kS/s 
    freq=11471.294H Symrate=9899  Stream=-1    pls_mode= 0:    1
    SIG=-51.01dB     SIG= 49% CNR=13.40dB CNR= 67% 
    DVB-S2 QPSK FEC_4_5 INV_ON  PIL_ON  ROLL_20
Adap7    Tuning to 11479.450H 3625.000kS/s 
    freq=11479.497H Symrate=3214  Stream=-1    pls_mode= 0:    1
    SIG=-52.68dB     SIG= 48% CNR=16.70dB CNR= 83% 
    DVB-S2 8PSK FEC_3_4 INV_ON  PIL_ON  ROLL_35
Adap4    Tuning to 11592.300H 1437.500kS/s 
    timed out
Adap3    Tuning to 11606.350H 2687.500kS/s 
    timed out
Adap6    Tuning to 11581.850H 8500.000kS/s 
    timed out
Adap0    Tuning to 11424.250H 34500.000kS/s 
    timed out
Adap7    Tuning to 11608.250H 1437.500kS/s 
    timed out
Adap1    Tuning to 11586.400H 812.500kS/s 
    timed out
Adap2    Tuning to 11453.650H 625.000kS/s 
    freq=11453.680H Symrate=542   Stream=-1    pls_mode= 0:    1
    SIG=-64.14dB     SIG= 36% CNR=14.30dB CNR= 71% 
    DVB-S  QPSK FEC_1_2 INV_ON  PILAUTO ROLL_35
Adap5    Tuning to 11464.900H 750.000kS/s 
    timed out
Adap4    Tuning to 11675.150H 37750.000kS/s 
    freq=11675.245H Symrate=35293 Stream=1     pls_mode= 0:16416
    MATYPES: 4: 0xc2 3: 0xc2 1: 0xc2 
    SIG=-47.66dB     SIG= 53% CNR=12.00dB CNR= 60% 
    DVB-S2 8PSK FEC_2_3 INV_ON  PIL_ON  ROLL_20
==========================
Acquiring spectrum on adapter 0
SPECTRUM: 11700.000-12750.000 pol=H
Found 25 peaks

Adap2    Tuning to 12581.950H 31375.000kS/s 
    freq=12584.327H Symrate=35499 Stream=11    pls_mode= 0:    8
    MATYPES: 11: 0xda 
    SIG=-47.39dB     SIG= 53% CNR=13.50dB CNR= 67% 
    DVB-S2 8PSK FEC_2_3 INV_ON  PIL_ON  ROLL_20
Adap0    Tuning to 12531.450H 1250.000kS/s 
    timed out
Adap7    Tuning to 12559.400H 1062.500kS/s 
    timed out
Adap6    Tuning to 12554.800H 8875.000kS/s 
    timed out
...
Adap0    Tuning to 12668.050H 35500.000kS/s 
        freq=12668.329H Symrate=35499 Stream=111   pls_mode= 0:    8
    MATYPES: 1: 0xda 111: 0xda 
    SIG=-48.15dB     SIG= 52% CNR=14.10dB CNR= 70% 
    DVB-S2 QPSK FEC_NONE INV_ON  PIL_OFF ROLL_20
Adap7    Tuning to 12703.150H 21500.000kS/s 
    timed out
Adap6    Tuning to 12716.250H 6500.000kS/s 
    timed out
Adap1    Tuning to 12723.550H 9000.000kS/s 
    timed out
==========================
Acquiring spectrum on adapter 0
SPECTRUM: 10700.000-11700.000 pol=V
Found 22 peaks
Adap4    Tuning to 10932.900V 62.500kS/s FAILED
Adap0    Tuning to 10722.250V 32562.500kS/s 
    timed out
Adap0    Tuning to 11114.900V 62.500kS/s FAILED
Adap1    Tuning to 10758.000V 33125.000kS/s 
    timed out
Adap2    Tuning to 10805.650V 32000.000kS/s 
    timed out
Adap3    Tuning to 10841.650V 32562.500kS/s 
    timed out
Adap3    Tuning to 11275.350V 62.500kS/s FAILED
Adap3    Tuning to 11296.900V 62.500kS/s FAILED
Adap3    Tuning to 11447.650V 62.500kS/s FAILED
Adap3    Tuning to 11450.700V 62.500kS/s FAILED
Adap5    Tuning to 10970.900V 32000.000kS/s 
    timed out
Adap4    Tuning to 11012.700V 36125.000kS/s 
    freq=11012.765V Symrate=35293 Stream=3     pls_mode= 0:16416
    MATYPES: 5: 0xd2 3: 0xd2 1: 0xd2 11: 0xd2 
    SIG=-45.98dB     SIG= 55% CNR=12.30dB CNR= 61% 
    DVB-S2 QPSK FEC_NONE INV_ON  PIL_OFF ROLL_20
Adap7    Tuning to 11054.000V 31812.500kS/s 
    timed out
Adap6    Tuning to 11095.850V 32000.000kS/s 
    timed out
Adap0    Tuning to 11136.800V 36500.000kS/s 
    freq=11137.264V Symrate=35293 Stream=51    pls_mode= 0:16416
    MATYPES: 50: 0xc2 51: 0xc2 52: 0xc2 
    SIG=-45.84dB     SIG= 55% CNR=11.30dB CNR= 56% 
    DVB-S2 8PSK FEC_2_3 INV_ON  PIL_ON  ROLL_20
Adap1    Tuning to 11178.250V 35562.500kS/s 
    freq=11178.763V Symrate=35293 Stream=6     pls_mode= 0:16416
    MATYPES: 6: 0xc2 4: 0xc2 5: 0xc2 
    SIG=-46.14dB     SIG= 54% CNR=13.20dB CNR= 66% 
    DVB-S2 8PSK FEC_2_3 INV_ON  PIL_ON  ROLL_20
Adap3    Tuning to 11470.800V 31750.000kS/s 
    timed out
Adap5    Tuning to 11512.000V 31625.000kS/s 
    timed out
Adap4    Tuning to 11553.800V 31937.500kS/s 
    timed out
Adap7    Tuning to 11637.300V 35875.000kS/s 
    freq=11636.755V Symrate=35293 Stream=10    pls_mode= 0:16416
    MATYPES: 7: 0xc2 10: 0xc2 8: 0xc2 1: 0xc2 
    SIG=-47.91dB     SIG= 53% CNR=13.30dB CNR= 66% 
    DVB-S2 8PSK FEC_2_3 INV_ON  PIL_ON  ROLL_20
Adap6    Tuning to 11678.000V 31687.500kS/s 
    timed out
Adap2    Tuning to 11199.450V 125.000kS/s 
    timed out
==========================
Acquiring spectrum on adapter 0
SPECTRUM: 11700.000-12750.000 pol=V
Found 23 peaks
Adap1    Tuning to 11964.900V 62.500kS/s FAILED
Adap0    Tuning to 11782.900V 62.500kS/s FAILED
Adap2    Tuning to 12146.900V 62.500kS/s FAILED
Adap3    Tuning to 12300.700V 62.500kS/s FAILED
Adap1    Tuning to 12505.100V 1812.500kS/s 
    timed out
Adap0    Tuning to 12506.750V 1750.000kS/s 
    timed out
Adap2    Tuning to 12509.900V 1687.500kS/s 
    timed out
Adap3    Tuning to 12511.400V 1562.500kS/s 
    timed out
Adap4    Tuning to 12508.350V 1687.500kS/s 
    timed out
Adap5    Tuning to 12512.900V 1500.000kS/s 
    timed out
Adap7    Tuning to 12515.750V 1562.500kS/s 
    timed out
Adap6    Tuning to 12514.300V 1500.000kS/s 
    timed out
Adap6    Tuning to 12563.350V 36125.000kS/s 
    freq=12563.339V Symrate=34285 Stream=-1    pls_mode= 0:    1
    MATYPES: 0: 0xb3 
    SIG=-54.56dB     SIG= 46% CNR=7.30dB CNR= 36% 
    DVB-S2 QPSK FEC_2_5 INV_ON  PIL_ON  ROLL(6)
Adap0    Tuning to 12646.850V 30250.000kS/s 
    freq=12647.314V Symrate=29499 Stream=2     pls_mode= 1:121212
    MATYPES: 3: 0xda 2: 0xda 1: 0xda 
    SIG=-50.99dB     SIG= 50% CNR=13.10dB CNR= 65% 
    DVB-S2 8PSK FEC_8_9 INV_ON  PIL_ON  ROLL_20
Adap3    Tuning to 12731.200V 29687.500kS/s 
    freq=12731.338V Symrate=29499 Stream=1     pls_mode= 1:50416
    MATYPES: 4: 0xd8 6: 0xd8 1: 0xd8 
    SIG=-51.88dB     SIG= 49% CNR=14.10dB CNR= 70% 
    DVB-S2 8PSK FEC_8_9 INV_ON  PIL_ON  ROLL_35

real    1m58.866s
user    0m0.187s
sys    0m0.032s
 
Last edited:

pk008

Member
Joined
Nov 2, 2021
Messages
28
Reaction score
0
Points
1
Age
30
My Satellite Setup
TBS6908, TBS6903-X
My Location
Asia
Hi, im getting error in installing media build.

CPU: Intel(R) Xeon(R) CPU E5-2690 v3 @ 2.60GHz
OS: Ubuntu 18.04.6 LTS
gcc version 8.4.0

Tried compiling in kernel versions gnulinux-5.10.0-051000-generic, gnulinux-5.9.0-050900-generic, gnulinux-4.15.0-189-generic and gnulinux-4.15.0-156-generic without any luck...

what can be the issue?!

installed these packages:
apt install patchutils apt-get install libcurl4-openssl-dev apt install ncurses-dev apt install bison apt-get install flex apt-get install libproc-processtable-perl

getting this error while ./install.sh
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
697
Reaction score
420
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
Hi, im getting error in installing media build.

CPU: Intel(R) Xeon(R) CPU E5-2690 v3 @ 2.60GHz
OS: Ubuntu 18.04.6 LTS
gcc version 8.4.0

Tried compiling in kernel versions gnulinux-5.10.0-051000-generic, gnulinux-5.9.0-050900-generic, gnulinux-4.15.0-189-generic and gnulinux-4.15.0-156-generic without any luck...

what can be the issue?!

installed these packages:
apt install patchutils apt-get install libcurl4-openssl-dev apt install ncurses-dev apt install bison apt-get install flex apt-get install libproc-processtable-perl

getting this error while ./install.sh
No idea. Typically there is little point in asking these questions without providing details on the problem. Also media_build
is never easy. The results vary according to the version of media_build, the version of media, and the version of the kernel.
 

pk008

Member
Joined
Nov 2, 2021
Messages
28
Reaction score
0
Points
1
Age
30
My Satellite Setup
TBS6908, TBS6903-X
My Location
Asia

pk008

Member
Joined
Nov 2, 2021
Messages
28
Reaction score
0
Points
1
Age
30
My Satellite Setup
TBS6908, TBS6903-X
My Location
Asia
after pulling to latest version of media_build im not able to load TBS 6909X cards with 6903X.
and if i try to reinstall from clean build getting compilation error: ./install.sh - Pastebin.com
 

Attachments

  • dmeg.txt
    61.7 KB · Views: 5

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
697
Reaction score
420
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
media_build is updated from time to time (not by me) and then new bugs start to occur. In this case the problem seems to be
that media_build applies patches for newer kernels to older ones. The ting to try then is to use an older version of media_builld
and hope for the best.

You can also try my own media_build which works for me on kernel 5.17.3

It is here: GitHub - deeptho/media_build: media_build for compiling media tree on this site
 

helmet

Member
Joined
Dec 6, 2021
Messages
13
Reaction score
2
Points
3
Age
32
My Satellite Setup
TBS 6903x - Inver.to Quad LNB
My Location
Belgium
Hello! Thanks for a promising piece of software. I managed to install the GUI version on Feodora a while ago but I am now trying to install the command line version on a Ubuntu 20.04 server. It is in production so I'm a bit locked in to the current OS.

I ran
git clone GitHub - deeptho/linux_media: TBS linux open source drivers -b deepthought ./media
git clone GitHub - tbsdtv/media_build
cd media_build
make dir DIR=../media
make distclean
make allyesconfig
make -j12

At this point I got the same error as vasi54 mentioned here: Blindscan on linux with tbs cards
In short an error that has to do with media_build and the version used. I tried many different versions but in the end was successful with the ./build.sh script provided in the latest version of media_build.

Now I have successfully built tbsdtv/media_build and the deeptho/linux_media -b deepthought but I still get this error when trying to run neumo_tune or neumo_blindscan

$ neumo-tune --command tune --adapter 2 --frequency 1210000 --pol 1

adapter=2
frontend=0
freq=1210000
pol=1
pls_codes[5]={ 4202496, 2048, 98139136, 134216704, 80015360, }
diseqc=UC: U=-1 C=-1
!!!!Blindscan drivers not installed - only regular tuning will work!!!!
Name of card: TurboSight TBS 6903x (Dual DVB-S/S2/S2X)
Tuning
==========================
Tuning to DVBS1/2 1210.000H
WARM TUNE search-range=10000
FE_SET_PROPERTY failed: Invalid argument
Tune FAILED

My kernel version is 5.4.0-126-generic

Any kind of guidance would be greatly appreciated.
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
697
Reaction score
420
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
Well, it is quite obvious that you forgot to actually install the drivers using make install.
You may have to reboot afterwards as well
 

helmet

Member
Joined
Dec 6, 2021
Messages
13
Reaction score
2
Points
3
Age
32
My Satellite Setup
TBS 6903x - Inver.to Quad LNB
My Location
Belgium
You are right I forgot to write that after I ran "./build" in the "media_build" folder I actually did run "sudo make install" and then "sudo reboot". The drivers seem to be installed and working since running "dmesg | grep frontend" gives me this output:
$ dmesg | grep frontend
[ 2.773079] usb 1-8: DVB: registering adapter 1 frontend 0 (Realtek RTL2832 (DVB-T))...
[ 4.612023] TBSECP3 driver 0000:04:00.0: DVB: registering adapter 0 frontend 0 (TurboSight TBS 6903x (Dual DVB-S/S2/S2X))...
[ 4.730720] TBSECP3 driver 0000:04:00.0: DVB: registering adapter 2 frontend 0 (TurboSight TBS 6903x (Dual DVB-S/S2/S2X))...
But running either neumo-tune or neumo-blindscan gives this kind of output:
$ ./neumo-blindscan --command blindscan --blindscan-method spectral-peaks --lnb-type universal --adapter 2 --start-freq 10950000 --end-freq 11700000 --pol BOTH

adapter=2
frontend=0
start-freq=10950000
end-freq=11700000
step-freq=6000
pol=3
pls_codes[5]={ 4202496, 2048, 98139136, 134216704, 80015360, }
diseqc=UC: U=-1 C=-1
!!!!Blindscan drivers not installed!!!
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
697
Reaction score
420
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
You are right I forgot to write that after I ran "./build" in the "media_build" folder I actually did run "sudo make install" and then "sudo reboot". The drivers seem to be installed and working since running "dmesg | grep frontend" gives me this output:

But running either neumo-tune or neumo-blindscan gives this kind of output:
This just means that you have some drivers (e.g., TBS or other) installed, but not necessarily the correct ones.

You can check using:
cat /sys/module/dvb_core/info/version

It should say something like:
type = "neumo";
version = "1.5";

The version number wlll probably be lower than 1.5

If this file is missing, the divers are not installed. Otherwise, there is some other problem
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
697
Reaction score
420
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
You are right I forgot to write that after I ran "./build" in the "media_build" folder I actually did run "sudo make install" and then "sudo reboot". The drivers seem to be installed and working since running "dmesg | grep frontend" gives me this output:

But running either neumo-tune or neumo-blindscan gives this kind of output:
This just means that you have some drivers (e.g., TBS or other) installed, but not necessarily the correct ones.

You can check using:
cat /sys/module/dvb_core/info/version

It should say something like:
type = "neumo";
version = "1.5";

The version number wlll probably be lower than 1.5

If this file is missing, the divers are not installed. Otherwise, there is some other problem
 

helmet

Member
Joined
Dec 6, 2021
Messages
13
Reaction score
2
Points
3
Age
32
My Satellite Setup
TBS 6903x - Inver.to Quad LNB
My Location
Belgium
This just means that you have some drivers (e.g., TBS or other) installed, but not necessarily the correct ones.

You can check using:
cat /sys/module/dvb_core/info/version

It should say something like:
type = "neumo";
version = "1.5";

The version number wlll probably be lower than 1.5

If this file is missing, the divers are not installed. Otherwise, there is some other problem
Yes you are right that path is empty so drivers not installed.

I tried with your fork of the media_build repository and during "make -j12" I get these errors:

Code:
$ make -j12 | grep error
/home/user/media_build/v4l/stid135_proc.c:105:21: error: variable 'fops_stid135' has initializer but incomplete type
 static const struct proc_ops fops_stid135 = {
                     ^~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:106:3: error: 'const struct proc_ops' has no member named 'proc_lseek'
  .proc_lseek = seq_lseek,
   ^~~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:106:16: warning: excess elements in struct initializer
  .proc_lseek = seq_lseek,
                ^~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:106:16: note: (near initialization for 'fops_stid135')
/home/user/media_build/v4l/stid135_proc.c:107:3: error: 'const struct proc_ops' has no member named 'proc_open'
  .proc_open = open_stid135,
   ^~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:107:15: warning: excess elements in struct initializer
  .proc_open = open_stid135,
               ^~~~~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:107:15: note: (near initialization for 'fops_stid135')
/home/user/media_build/v4l/stid135_proc.c:108:3: error: 'const struct proc_ops' has no member named 'proc_release'
  .proc_release = release,
   ^~~~~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:108:18: warning: excess elements in struct initializer
  .proc_release = release,
                  ^~~~~~~
/home/user/media_build/v4l/stid135_proc.c:108:18: note: (near initialization for 'fops_stid135')
/home/user/media_build/v4l/stid135_proc.c:109:6: error: 'const struct proc_ops' has no member named 'proc_read'
     .proc_read = read,
      ^~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:109:18: warning: excess elements in struct initializer
     .proc_read = read,
                  ^~~~
/home/user/media_build/v4l/stid135_proc.c:109:18: note: (near initialization for 'fops_stid135')
/home/user/media_build/v4l/stid135_proc.c:113:21: error: variable 'fops_soc' has initializer but incomplete type
 static const struct proc_ops fops_soc = {
                     ^~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:114:3: error: 'const struct proc_ops' has no member named 'proc_lseek'
  .proc_lseek = seq_lseek,
   ^~~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:114:16: warning: excess elements in struct initializer
  .proc_lseek = seq_lseek,
                ^~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:114:16: note: (near initialization for 'fops_soc')
/home/user/media_build/v4l/stid135_proc.c:115:3: error: 'const struct proc_ops' has no member named 'proc_open'
  .proc_open = open_soc,
   ^~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:115:15: warning: excess elements in struct initializer
  .proc_open = open_soc,
               ^~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:115:15: note: (near initialization for 'fops_soc')
/home/user/media_build/v4l/stid135_proc.c:116:3: error: 'const struct proc_ops' has no member named 'proc_release'
  .proc_release = release,
   ^~~~~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:116:18: warning: excess elements in struct initializer
  .proc_release = release,
                  ^~~~~~~
/home/user/media_build/v4l/stid135_proc.c:116:18: note: (near initialization for 'fops_soc')
/home/user/media_build/v4l/stid135_proc.c:117:6: error: 'const struct proc_ops' has no member named 'proc_read'
     .proc_read = read,
      ^~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:117:18: warning: excess elements in struct initializer
     .proc_read = read,
                  ^~~~
/home/user/media_build/v4l/stid135_proc.c:117:18: note: (near initialization for 'fops_soc')
/home/user/media_build/v4l/stid135_proc.c:121:21: error: variable 'fops_vglna' has initializer but incomplete type
 static const struct proc_ops fops_vglna = {
                     ^~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:122:3: error: 'const struct proc_ops' has no member named 'proc_lseek'
  .proc_lseek = seq_lseek,
   ^~~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:122:16: warning: excess elements in struct initializer
  .proc_lseek = seq_lseek,
                ^~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:122:16: note: (near initialization for 'fops_vglna')
/home/user/media_build/v4l/stid135_proc.c:123:3: error: 'const struct proc_ops' has no member named 'proc_open'
  .proc_open = open_vglna,
   ^~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:123:15: warning: excess elements in struct initializer
  .proc_open = open_vglna,
               ^~~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:123:15: note: (near initialization for 'fops_vglna')
/home/user/media_build/v4l/stid135_proc.c:124:3: error: 'const struct proc_ops' has no member named 'proc_release'
  .proc_release = release,
   ^~~~~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:124:18: warning: excess elements in struct initializer
  .proc_release = release,
                  ^~~~~~~
/home/user/media_build/v4l/stid135_proc.c:124:18: note: (near initialization for 'fops_vglna')
/home/user/media_build/v4l/stid135_proc.c:125:6: error: 'const struct proc_ops' has no member named 'proc_read'
     .proc_read = read,
      ^~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:125:18: warning: excess elements in struct initializer
     .proc_read = read,
                  ^~~~
/home/user/media_build/v4l/stid135_proc.c:125:18: note: (near initialization for 'fops_vglna')
/home/user/media_build/v4l/stid135_proc.c: In function 'chip_init_proc':
/home/user/media_build/v4l/stid135_proc.c:135:37: error: passing argument 4 of 'proc_create' from incompatible pointer type [-Werror=incompatible-pointer-types]
   proc_create(filename, 0777, NULL, &fops_stid135);
                                     ^~~~~~~~~~~~~
In file included from ./include/acpi/acpi_bus.h:83,
                 from ./include/linux/acpi.h:32,
                 from ./include/linux/i2c.h:13,
                 from /home/user/media_build/v4l/compat.h:1045,
                 from <command-line>:
./include/linux/proc_fs.h:50:24: note: expected 'const struct file_operations *' but argument is of type 'const struct proc_ops *'
 struct proc_dir_entry *proc_create(const char *name, umode_t mode, struct proc_dir_entry *parent, const struct file_operations *proc_fops);
                        ^~~~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:138:37: error: passing argument 4 of 'proc_create' from incompatible pointer type [-Werror=incompatible-pointer-types]
   proc_create(filename, 0777, NULL, &fops_vglna);
                                     ^~~~~~~~~~~
In file included from ./include/acpi/acpi_bus.h:83,
                 from ./include/linux/acpi.h:32,
                 from ./include/linux/i2c.h:13,
                 from /home/user/media_build/v4l/compat.h:1045,
                 from <command-line>:
./include/linux/proc_fs.h:50:24: note: expected 'const struct file_operations *' but argument is of type 'const struct proc_ops *'
 struct proc_dir_entry *proc_create(const char *name, umode_t mode, struct proc_dir_entry *parent, const struct file_operations *proc_fops);
                        ^~~~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:141:37: error: passing argument 4 of 'proc_create' from incompatible pointer type [-Werror=incompatible-pointer-types]
   proc_create(filename, 0777, NULL, &fops_soc);
                                     ^~~~~~~~~
In file included from ./include/acpi/acpi_bus.h:83,
                 from ./include/linux/acpi.h:32,
                 from ./include/linux/i2c.h:13,
                 from /home/user/media_build/v4l/compat.h:1045,
                 from <command-line>:
./include/linux/proc_fs.h:50:24: note: expected 'const struct file_operations *' but argument is of type 'const struct proc_ops *'
 struct proc_dir_entry *proc_create(const char *name, umode_t mode, struct proc_dir_entry *parent, const struct file_operations *proc_fops);
                        ^~~~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c: At top level:
/home/user/media_build/v4l/stid135_proc.c:105:30: error: storage size of 'fops_stid135' isn't known
 static const struct proc_ops fops_stid135 = {
                              ^~~~~~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:113:30: error: storage size of 'fops_soc' isn't known
 static const struct proc_ops fops_soc = {
                              ^~~~~~~~
/home/user/media_build/v4l/stid135_proc.c:121:30: error: storage size of 'fops_vglna' isn't known
 static const struct proc_ops fops_vglna = {
                              ^~~~~~~~~~
cc1: some warnings being treated as errors
make[3]: *** [scripts/Makefile.build:270: /home/user/media_build/v4l/stid135_proc.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[2]: *** [Makefile:1762: /home/user/media_build/v4l] Error 2
make[1]: *** [Makefile:53: default] Error 2
make: *** [Makefile:26: all] Error 2

I have tried with kernels 5.5, 5,17 and 5.19 but had no success. Maybe the errors above indicate if the issue is still kernel related? If so I will try more kernels.
 

helmet

Member
Joined
Dec 6, 2021
Messages
13
Reaction score
2
Points
3
Age
32
My Satellite Setup
TBS 6903x - Inver.to Quad LNB
My Location
Belgium
@deeptho

I'll be using my laptop with a clean Linux install in due course, but meanwhile I have my PC working now with Ubuntu. This has a TBS6903 installed.

On trying a spectrum scan on 28.2E I have some errors. (DVBlast finds the TBS6903 and scans TPs OK).

Would you please check my output and possibly advise on the errors?

Also, what is c in the command line? I don't see it in the available options.

Thanks in anticipation.

Code:
david@david-desktop:~/deepthought/blindscan-master/build/src$ neumo-blindscan  -c spectrum

adapter=0
frontend=0
start-freq=10700000
end-freq=12750000
step-freq=6000
pol=3
pls_codes[5]={ 4202496, 2048, 98139136, 134216704, 80015360, }
diseqc=UC: U=0 C=0
FE_GET_EXTENDED_INFO: Unknown error 524FE_SET_PROPERTY clear failed: Bad file descriptor
EPOLL Failed: err=Invalid argument
neumo-blindscan: /home/david/deepthought/blindscan-master/src/neumo-blindscan.cc:1453: int main_spectrum(int): Assertion `s==0' failed.
Aborted (core dumped)
david@david-desktop:~/deepthought/blindscan-master/build/src$ neumo-blindscan c spectrum -U3 -pH -a0 --spectrum-method sweep --spectral-resolution 500
The following arguments were not expected: spectrum c
Run with --help for more information.

david@david-desktop:~/deepthought/blindscan-master/build/src$ neumo-blindscan -c spectrum -U3 -pH -a0 --spectrum-method sweep --spectral-resolution 500

adapter=0
frontend=0
start-freq=10700000
end-freq=12750000
step-freq=6000
pol=1
pls_codes[5]={ 4202496, 2048, 98139136, 134216704, 80015360, }
diseqc=UC: U=3 C=0
FE_GET_EXTENDED_INFO: Unknown error 524FE_SET_PROPERTY clear failed: Bad file descriptor
EPOLL Failed: err=Invalid argument
neumo-blindscan: /home/david/deepthought/blindscan-master/src/neumo-blindscan.cc:1453: int main_spectrum(int): Assertion `s==0' failed.
Aborted (core dumped)
david@david-desktop:~/deepthought/blindscan-master/build/src$
.
It seems you did manage to install this on Ubuntu. May I ask which kernel you are on and which version of Ubuntu?
I have been trying on Ubuntu 20.04, kernel 5.4.0-42-generic but have not succeeded yet.

Edit: I can see now that you solved it with majortom's prebuilt kernels. Will give it a go. Blindscan on linux with tbs cards
 
Last edited:

Llew

cerca trova...
Staff member
Joined
Jan 1, 2000
Messages
16,226
Reaction score
4,197
Points
113
Age
81
My Satellite Setup
Triple Dragon, Dreambox 8000, Echostar AD3000ip, TBS6522,6925,6983 PCie cards.
Gibertini 1.25m motorised dish driven by the AD3000, with either Inverto BU Quad or Norsat / XMW Ka LNBs . SMW 1.05m + 3 other dishes. Speccy: Promax HD Ranger+
My Location
The Flatlands of East Anglia
Edit: I can see now that you solved it with majortom's prebuilt kernels. Will give it a go.
Not sure if that kernel still works on that project, I haven't used it for a while since deeptho updated it. It hasn't worked for me on neumoDVB since version 0.8. (no spectrum or blindscan available).

Working fine now in neumoDVB using Ubuntu 20.04.1 with kernel 5.15.0-48 and deeptho's media and media_build in blindscan_kernel.
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
697
Reaction score
420
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
Usually these problems are related to media_build: not following instructions to the letter, not using the
correct git for media, probelsm in media_build itself, making a mistake which leaves media_build in some permanently-failing state, or even some weirdness in the ubuntu kernel module installation procedure leading to permamently failing graphics drivers (which is in fact completely unrelated to the neumodvb drivers)...

The only sure thing is that the instructions in the documentation (the one I provided) has worked at
some point in time. I have even tested them on ther people's computers.
 

helmet

Member
Joined
Dec 6, 2021
Messages
13
Reaction score
2
Points
3
Age
32
My Satellite Setup
TBS 6903x - Inver.to Quad LNB
My Location
Belgium
Usually these problems are related to media_build: not following instructions to the letter, not using the
correct git for media, probelsm in media_build itself, making a mistake which leaves media_build in some permanently-failing state, or even some weirdness in the ubuntu kernel module installation procedure leading to permamently failing graphics drivers (which is in fact completely unrelated to the neumodvb drivers)...

The only sure thing is that the instructions in the documentation (the one I provided) has worked at
some point in time. I have even tested them on ther people's computers.
I'm sure that's absolutely correct. The challenge is to find that right point in time of media_build since it is updated quite often.

@Llew maybe you could give me the hash of the specific commits that you have used to build successfully as it seems I am using the same setup as you but still failing at "make allyesconfig"? I have tried the shortcut of using ./build and ./install.sh and they often seem to build ok but when looking for the blindscan drivers with "cat /sys/module/dvb_core/info/version" I find nothing.
 

Llew

cerca trova...
Staff member
Joined
Jan 1, 2000
Messages
16,226
Reaction score
4,197
Points
113
Age
81
My Satellite Setup
Triple Dragon, Dreambox 8000, Echostar AD3000ip, TBS6522,6925,6983 PCie cards.
Gibertini 1.25m motorised dish driven by the AD3000, with either Inverto BU Quad or Norsat / XMW Ka LNBs . SMW 1.05m + 3 other dishes. Speccy: Promax HD Ranger+
My Location
The Flatlands of East Anglia
I'm sure that's absolutely correct. The challenge is to find that right point in time of media_build since it is updated quite often.

@Llew maybe you could give me the hash of the specific commits that you have used to build successfully as it seems I am using the same setup as you but still failing at "make allyesconfig"? I have tried the shortcut of using ./build and ./install.sh and they often seem to build ok but when looking for the blindscan drivers with "cat /sys/module/dvb_core/info/version" I find nothing.
I use the compile instructions in deeptho's media file helmet, not as in media_build, or "make allyesconfig" as in the TBS media_build instructions.

So,
cd media_build
make dir DIR=../media
make distclean
./install.sh
 

helmet

Member
Joined
Dec 6, 2021
Messages
13
Reaction score
2
Points
3
Age
32
My Satellite Setup
TBS 6903x - Inver.to Quad LNB
My Location
Belgium
I use the compile instructions in deeptho's media file helmet, not as in media_build, or "make allyesconfig" as in the TBS media_build instructions.

So,
cd media_build
make dir DIR=../media
make distclean
./install.sh
Ah yes, thank you. I have tried that sequence of commands and a few others as well. It all comes down to a conflict between the version of tbsdtv/media_build and my kernel 5.15.0-48. Since it has worked for you on that same kernel I suspect that the reason is the updates that have happened recently to media_build. To get to the bottom of that it would be great to know approximately when you downloaded your copy from github so that I can try to use a version from around that date.
Would be greatly appreciated as I am now in on my 4th day of trying to get this to work ;D.
 
Top