label = name
enable = 0|1
description = text
protocol = reader protocol
camd35|cs357x
cccam
cs378x
constcw
gbox
ghttp
internal
mouse
mp35
newcamd|newcamd525
newcamd524
pcsc
radegast
scam
sc8in1
serial
smargo
smartreader
device = [<readertype>;]serial:serialnum|bus:device|
<device|device:slot>|
<ip|hostname>,<port>[,<lport>]|
<ip|hostname>,<gboxpport>|
<ip|hostname>,<scamport>|
pcsc|
<0|1>>|
constantcw
readertype: set reader type
SR: Smartreader+ (default)
Infinity: Infinity USB
TripleP1: Smargo Triple Reader port 1
TripleP2: Smargo Triple Reader port 2
TripleP3: Smargo Triple Reader port 3
bus:device: bus name and device name of the Smartreader+ or
Infinity USB (get the names with lsusb 'Bus'
and 'Device')
serialnum: serial number of reader of the Smartreader+ or
Infinity USB
device: device name
device:slot: device name and slot number sc8in1 [1-8]
(only one SC8in1 reader supported)
ip|hostname: IP address or host name
port: TCP/IP port
lport: remapping to local TCP/IP port
gboxpport: UDP port for remote gbox peer
PCSC: number of PCSC reader, starting with 0
0|1: for Coolstream HD-1 STB only: select reader 0 or
reader 1
constantcw: constant CW file name
constant CW file format:
CAID:Provider ID:Service ID:PMT ID:ECM PID::key (16 Bytes seperated by spaces)
example: 1234:123456:1234:2345:3456::00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
CAID:Provider ID:Service ID:PMT ID:ECM PID:Video PID:key (16 Bytes seperated by spaces)
example: 1234:123456:1234:2345:3456:7890:00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
detect = [!]CD|[!]DSR|[!]CTS|[!]RING|[!]NONE|[!]gpio[1-7]
cardmhz = mhz
mhz = frequency
autospeed = 0|1
deprecated = 0|1
1 = use deprecated SC mode only, default:0
mode = mode
smargopatch = 0|1
sc8in1_dtrrts_patch = 0|1
use_gpio = 0|1
ins7e = payload
ins7e11 = TA1 byte
fix07 = payload
= payload
force_irdeto = 0|1
nagra_read = 0|1|2
0 = disabled (default)
1 = read all records with expired rights
2 = read records with valid rights only
rsakey = RSA key
fix9993 = 0|1
boxkey = box key
pincode = pincode
boxid = NDS box ID
ndsversion = 0|1|12|2
0 = autodetection (default)
1 = NDS Videoguard 1
12 = NDS Videoguard 1+
2 = NDS Videoguard 2
aeskeys = CAID #0@provid:AES key #0 CAID #0[,AES key #1 CAID #0],...[;CAID #1@provid:AES key #0 CAID #1[,AES key #1 CAID #1],...]...
special AES keys:
00 = do not return any CW, no AES key specified
FF = return CW received from the S, no AES key specified
example:
aeskeys = 0500@012345:000102030405060708090a0b0c0d0e0f;0500@543210:000102030405060708090a0b0c0d0e0f,0,0f0e0d0c0b0a090807060504030201
key = DES key
user = name
password = password
mg-encrypted = D: { <IP|hostname> { <local port> <remote port> { <password> { <level> <level> }}}}[,<local MAC address>]
services = [!]services[,[!]<services>]...
caid = <CAID>[&<mask>][:<target CAID>][,<CAID>[&<mask>][:target <CAID>]]...
example: caid = 0100
caid = 0200&ffee:0300
caid = 0400&ff00:0500,0600
caid = 0702,0722
caid = 0702&ffdf (shortcut for the example above)
ident = <CAID>:<provid>[,provid]...[;<CAID>:<provid>[,provid]...]...
example: ident = 0100:123456,234567;0200:345678,456789
class = [!]class[,[!]class]...
example: class = 01,02,!1b,!2b
chid = CAID:ChID
example: chid = 0100:12
group = 1..64[,1..64]...
audisabled = 0|1
auprovid = provider ID
example: auprovid = 123456
disableserverfilter = 0|1
inactivitytimeout = seconds
reconnecttimeout = seconds
reconnectdelay = milli-seconds
connectoninit = 0|1
keepalive = 0|1
fallback = 0|1
fallback_percaid = <CAID>[:<ident>[,ident]]...[;<CAID>[:<ident>[,ident]]...]....
example: fallback_percaid = 1234:234567;89;10:345678
emmcache = usecache,rewrite,logging
usecache = 0|1||2
0 = EMM caching disabeld (default)
1 = enable EMM caching and save EMMs to file after
stopping OSCam
2 = enable EMM caching, don't save EMMs to file
after stopping OSCam
rewrite = determines how often one and the same EMM is
written, default:0
logging = EMM logging mask:
0 = EMM logging disabled (default)
1 = logging EMM errors
2 = logging written EMMs
4 = logging skipped EMMs
8 = logging blocked EMMs
16 = logging disabled AU
example: emmcache = 1,3,2
cacheex = 0|1|2|3
0: disable cache exchange mode (default)
1: enable cache exchange pull mode
2: enable cache exchange push mode for camd 3.5x / 3.57x and CCcam
protocol
3: enable reverse cache exchange push mode for camd 3.5x / 3.57x
and CCcam protocol
Identical cache exchange modes must be set on local OSCam server and remote OSCam user asccount.
Please consider memory consumption.
cacheex_maxhop = hops
csp_ecm_filter = [caid][&mask][@provid][$servid],n
cacheex_drop_csp = 0|1
cacheex_allow_request = 0|1
cacheex_allow_filter = 0|1
ecmwhitelist = [CAID[@provid]:]length[,length]...[;[CAID[@provid]:]length[,length]...]...
example: ecmwhitelist = 10,20,0a,0b
ecmwhitelist = 0100:10,20;0200@123456:0a,4b
In normal operation mode this parameter is not required.
ecmheaderwhitelist = [CAID[@provid]:]header[,header]...[;[CAID[@provid]:]header[,header]...]...
ratelimitecm = count
ecmnotfoundlimit = count
resetcycle = count
ratelimitseconds = seconds
ecmunique = 0|1
srvidholdseconds = seconds
cooldown = delay,duration
delay: delay in seconds for which the reader is allowed to do
more ECM requests than defined by ecmratelimit,
default: none
duration: duration in seconds the reader needs to cooldown,
default:none
ratelimitecm and ratelimitseconds are required
blocknano = nano[,nano]...|all
example: blocknano = 45,93,7a,ff
blocknano = all
blockemm-u = 0|1
blockemm-s = 0|1
blockemm-g = 0|1
blockemm-unknown = 0|1
blockemm-bylen = [length range,length range]...
example: blockemm-bylen = 1-10,11-
via_emm_global = 0|1
read_old_classes = 0|1 (Viaccess SCs only)
saveemm-u = 0|1
saveemm-s = 0|1
saveemm-g = 0|1
saveemm-unknown = 0|1
savenano = nano[,nano]....|all (obsolete)
example: savenano = 45,93,7a,ff
savenano = all
readnano = [path]filename
example: readnano = write.emm
readnano = /var/oscam/write.emm
dropbadcws = 0|1
disablecrccws = 0|1
In normal operation mode this parameter is not required. Parameter is incompatible with DVB standard.
ident = <CAID1>[:<ident1>[,<ident2>]...][;<CAID2>[:<ident3>[,<ident4>]...]]...
lb_whitelist_services = <services>,<services>...
lb_weight = weight
It's an divider for the average responstime.
lb_force_fallback = 0|1
cccversion = <main version>.<version>.<sub version>
example: cccversion = 1.2.34
cccmaxhops = hops
-1 = disabled
0 = remote local SCs only
1 = remote local SCs and + 1 hop
2 = remote local SCs and + 2 hops
and so on
After reading this SC hop will be incremented by one.
ccchop = hop
cccreshare = hop
-1 = reshare value off cccam in global config
0 = resharing for direct peer only
x = resharing for direct peer and share level x
cccwantemu = 0|1
ccckeepalive = 0|1
cccreconnect = timeout
cccmindown = number
gbox_reshare = level
gbox_max_distance = distance
gbox_max_ecm_send = number
use_ssl = 0|1
For Dreambox and other internal readers the highest possible clockrate will be auto detected. The mhz parameter lets you override the values chosen by OSCam, if it differs from 357 and 358, but usually you will not set any value for mhz.
For certain Dreamboxes (especially PPC clones) the default mhz parameter leads to slow ECM times and/or "not found" ECMs. By setting mhz to values like 200, 300, 400, ... 1600 you can find a value that works for your receiver and your card. The higher the mhz value, the slower the ECM time (strange enough).
If you choose the value too low, your card is not recognized (no ATR or "card not supported"). If you choose the value too high, you get slow ECM times. Our experience is that either no mhz line, or a line mhz = 1000 works best.
Overclocking does not work with Windows and Mac OS X. Set mhz equivalent to the frequency of the reader. OSCam can not set the frequency of the reader.
Use protocol = smargo for the FDDI kernel drivers (no libusb needed) or (not recommended) use protocol = smartreader for OSCam's driver implementation based on libusb.
Set the reader frequency with the native Smargo Smartreader+ tool (srp_tools). If not setting mhz and cardmhz, OSCam tries to set the baudrate automatically, according to the maximum speed indicated by ATR. Overclocking is possible.
OSCam tries to set the baudrate automatically. A standard serial port has limited baudrate settings, so SC overclocking might not work. When using a serial reader the best way for overclocking is connecting it to a FTDI based USB to serial port adapter.
If overclocking does not work, verify the effective baudrate in the logfile. If it deviates too much from the requested baudrate, the SC will not be recognized (no ATR) and the value for mhz should be adjusted again. The higher the baudrate, the more accurate the effective baudrate can be.
ECM requests will be forwarded to the remote cache exchange partner. If the CW could not be found in the cache of the remote exchange partner, a not found will be answered. If the CW could not be found in the cache of the remote exchange partner but a pending ECM request is open, the request will be re-initiated after the wait time defined in cacheexwaittime.
CWs from the remote cache exchange partner will be forwarded to the local cache. Forwarding only works while the camd camd 3.5x / 3.57x or CCcam protocol connection between the local and remote OSCam has been established.
CWs from the local cache will be forwarded to the remote cache exchange partner. Forwarding only works while the camd camd 3.5x / 3.57x or CCcam protocol connection between the remote and local OSCam has been established.
[reader]
label = mypcscreader
protocol = pcsc
device = 0
aeskey = 0102030405060708090a0b0c0d0e0f10
group = 6
caid = 0600
[reader]
label = mysmartreader
protocol = smartreader
device = 001:002
aeskey = 0102030405060708090a0b0c0d0e0f10
group = 7
caid = 0700
[reader]
label = myinternalreader
protocol = internal
device = /dev/sci0
group = 8
caid = 0800
[reader]
label = mysc8in1reader
protocol = sc8in1
device = /dev/ttyUSB0:1
group = 9
caid = 0900
[reader]
label = myconstantcw
protocol = constcw
device = /var/keys/constant.cw
group = 10
[reader]
label = mygboxreader
protocol = gbox
device = 192.168.0.4,45678,56789
user = user4
password = password4
group = 11
caid = 1100