w scan cpp
w_scan_cpp is a command line utility used to perform frequency scans for DVB and ATSC transmissions, using local DTV cards, or accessing a remote SAT>IP server.
It replaces by the older tool w_scan with similar syntax, and creates channel data in several different formats.
Obtaining w_scan_cpp
The last w_scan_cpp version can be obtained at https://www.gen2vdr.de/wirbel, where also the last version of the older w_scan is stored.
There's also a github page on w_scan_cpp, used for development and backup purposes only. Use always latest version from homepage.
Documentation
Detailed information can be found in the w_scan_cpp man page (i.e. from a console, run man w_scan_cpp
).
Running w_scan_cpp with the -h parameter gives a summary of it's basic command line options.
In general, when using w_scan_cpp you should at least specify three parameters: frontend type, country/satellite and output format.
The following table summarizes the basic usage of w_scan_cpp. For further features and use cases, use extended help: w_scan_cpp -H.
w_scan_cpp [options...] >> channels.conf
Parameter | Argument | Description & Options |
---|---|---|
Frontend Type | -fType |
a = ATSC (North America, cable and terrestrial) NOTE:
|
ATSC Type | -AType |
(ignored for DVB-S/S2, DVB-C and DVB-T/T2) |
Country ID | -cID |
(mandatory for ATSC, DVB-C, DVB-T/T2) |
Satellite ID | -sID |
(mandatory for DVB-S/S2) |
SAT>IP | -t, --satip |
Use a SAT>IP remote tuner. NOTE:
|
Output Format | -Format |
-I, --output-ini = generate transponder ini NOTE:
|
Monitor signal reception |
-F <VDR_Channel>, |
Monitor Signal Lock, Strength, Quality NOTE:
|
Help Level | -Level |
h = basic help |
Some working examples, cobbled together from the basics given in the above table, are provided below.
Note: Experts or experienced users may use some of the other options available, but usually this is not needed. (For example, w_scan_cpp searches /dev/dvb/adapterX/frontendY for DVB/ATSC cards matching to option "-f", therefore specifying the adapter "-a XX" is not recommended.)
Examples
Scanning ATSC VSB (United States, Over-the-Air)
$ w_scan_cpp -fa -A1 -c US -X
Scanning ATSC QAM annex B (United States, digital cable TV)
$ w_scan_cpp -fa -A2 -c US -X
Scanning DVB-T/T2 (Germany, Over-the-Air, VDR output)
$ w_scan_cpp -ft -c DE
Scanning DVB-S/S2 (Astra 19.2east)
$ w_scan_cpp -fs -s S19E2
Scanning DVB-S/S2 (Astra 19.2east, using SAT>IP server)
$ w_scan_cpp -fs -s S19E2 --satip
Scanning DVB-C (Germany, SAT>IP, choose server)
$ w_scan_cpp -fc -c DE --satip --satip-server 192.168.2.66|DVBC-1|minisatip
Scanning DVB-S (Hotbird, 4-port DiSeqC switch, hotbird at port 3)
$ w_scan_cpp -fs -s S13E0 -D2c
Note: ports are counting from '0'.
Scanning DVB-S/S2 (Astra 19.2east, SCR/EN50494 @ CH0/1076MHz/Satpos A)
$ w_scan_cpp -fs -s S19E2 -u 0:1400:A Note:
* SCR is sometimes wrong called Unicable. * Channel ID (0..7) needs to fit userband frequency.
Generating dvbv5-scan tuning data
Exactly as above, just specify output format dvbv5-scan with "-x":
$ w_scan_cpp -f <FRONTEND_TYPE> {-c <COUNTRY>,-s <SATELLITE>} -x >cc-Ttttt
If you choose to create an initial scan file (and you know the name of your local transmitter or cable provider), you can send the resulting file to the dvb mailing list after checking that it hasn't already been posted or added to their repos.
Monitoring reception of SAT.1 Gold HD on Astra 19.2 using SAT>IP
$ w_scan_cpp -fs -sS19E2 --satip --femon "SAT.1 Gold HD;ProSiebenSat.1:11111:HC23M5O35P0S1:S19.2E:22000:255=27:0;259=deu@106:32:1830,1860,1843,98C,9C4,186A,98D,186D,1842,4B64,4AF4:12500:1:1043:0" /******************************************************************************* * w_scan_cpp Version 20210807 ******************************************************************************/ /******************************************************************************* * devices ******************************************************************************/ skip DVB devices - using satip plugin. using SELFSAT-IP@192.168.2.47 Device0 plg: SAT>IP 0 Device1 plg: SAT>IP 1 monitoring device 'SAT>IP 0' lock 0 | lock 0 | quality 0% | lock 1 | signal 69.58dBuV | quality 93% | lock 1 | signal 69.58dBuV | quality 93% | lock 1 | signal 69.58dBuV | quality 100% | lock 1 | signal 69.58dBuV | quality 100% |
NOTE:
* SAT>IP servers report signal a limited set of reception stats only: Frontend lock, Signal level(0..255, w_scan_cpp translates to dBuV), Signal quality(0..15 -> 0..100%). * Level is reported in dBuV or percent * Quality is reported as percent * unsupported features are not reported at all.
Monitoring reception of Das Erste HD on local DVB-C frontend
$ ./w_scan_cpp -fc -cDE --femon "Das Erste HD;ARD:314000:C0M256:C:6900:5101=27:5102=deu@3,5103=mis@3;5106=deu@106:5104;5105=deu:0:10301:1:1019:0" /******************************************************************************* * w_scan_cpp Version 20210807 ******************************************************************************/ /******************************************************************************* * devices ******************************************************************************/ Device0 dvb:a0f0: Sony CXD2843ER DVB-T/T2/C/C2 demodulator Device1 dvb:a1f0: Sony CXD2843ER DVB-T/T2/C/C2 demodulator Device2 dvb:a2f0: Sony CXD2854ER DVB-T/T2/C and ISDB-T demodulator Device3 dvb:a3f0: Sony CXD2854ER DVB-T/T2/C and ISDB-T demodulator Device4 dvb:a6f0: Silicon Labs Si2168 monitoring device 'Sony CXD2843ER DVB-T/T2/C/C2 demodulator' lock 0 | quality 0% | lock 1 | signal 74.78dBuV | quality 100% | snr 38.75dB | ber 3.641546e-06 lock 1 | signal 75.04dBuV | quality 100% | snr 38.75dB | ber 3.641546e-06 lock 1 | signal 75.17dBuV | quality 100% | snr 38.66dB | ber 3.621538e-06 lock 1 | signal 74.72dBuV | quality 100% | snr 39.04dB | ber 3.601748e-06 lock 1 | signal 74.72dBuV | quality 100% | snr 38.75dB | ber 3.582173e-06 lock 1 | signal 74.91dBuV | quality 100% | snr 38.66dB | ber 3.562810e-06
Monitoring reception of Euronews HD on local DVB-T2 frontend /dev/dvb/adapter6
$ ./w_scan_cpp -a6 -ft -cDE -F "Euronews HD;MEDIA BROADCAST:570000000:B8D0G19128S1T16Y0P1Q7766X0:T:27500:2385=36:0:0:0:17027:8468:16498:0" /******************************************************************************* * w_scan_cpp Version 20210815 ******************************************************************************/
/******************************************************************************* * devices ******************************************************************************/ Device0 dvb:a6f0: Silicon Labs Si2168 monitoring device 'Silicon Labs Si2168' lock 0 | signal 0% | lock 0 | signal 0% | lock 0 | signal 0% | lock 0 | signal 0% | lock 0 | signal 0% | lock 0 | signal 0% | lock 1 | signal 0% | quality 100% | snr 26.75dB | ber 2.192e-01 (too high) lock 1 | signal 57.75dBuV | quality 100% | snr 26.25dB | ber 2.217e-01 (too high) lock 1 | signal 57.75dBuV | quality 100% | snr 26.25dB | ber 2.254e-01 (too high) lock 1 | signal 57.75dBuV | quality 100% | snr 26.25dB | ber 2.291e-01 (too high) lock 0 | signal 57.75dBuV | lock 1 | signal 57.75dBuV | quality 100% | snr 26.75dB | ber 2.351e-01 (too high) lock 0 | signal 57.75dBuV | lock 1 | signal 57.75dBuV | quality 100% | snr 26.75dB | ber 2.399e-01 (too high) lock 1 | signal 57.75dBuV | quality 100% | snr 26.25dB | ber 2.434e-01 (too high) lock 1 | signal 57.75dBuV | quality 100% | snr 26.75dB | ber 2.469e-01 (too high) lock 1 | signal 57.75dBuV | quality 100% | snr 26.75dB | ber 2.504e-01 (too high) lock 1 | signal 57.75dBuV | quality 100% | snr 26.25dB | ber 2.538e-01 (too high)
Note:
* Demod signal lock takes too long here, about six seconds. * Bit Error Rate is marked as too high * frontend even looses Signal Lock sometimes. * conclusion: Something is not working properly here.
Building w_scan_cpp
Before building the tool, you may want to check, if your distribution already ships w_scan_cpp.
AUR, Debian and VDR related distributions plus a few Raspberry distris are known to ship w_scan_cpp.
Building requires several deps, see README, 'make download' requires network access and git + wget.
tar xf w_scan_cpp-YYYYMMDD cd w_scan_cpp-YYYYMMDD make download make -j8 make install