Tvheadend oscam ziggo » History » Version 3
William Peters, 2010-03-24 20:53
Add changes for EMM support for oscam
| 1 | 1 | William Peters | This article describes how to build and configure oscam. |
|---|---|---|---|
| 2 | |||
| 3 | Make sure you have cmake and subversion installed, these are required for checking out and building oscam. |
||
| 4 | |||
| 5 | create the required directories |
||
| 6 | |||
| 7 | {{{ |
||
| 8 | mkdir -p /opt/oscam/src/ |
||
| 9 | }}} |
||
| 10 | |||
| 11 | Now we need to checkout the oscam source code using SVN |
||
| 12 | |||
| 13 | {{{ |
||
| 14 | svn co http://oscam.ump2002.net/svn/oscam/trunk/ /opt/oscam/src/ |
||
| 15 | }}} |
||
| 16 | |||
| 17 | Now we need to build oscam |
||
| 18 | |||
| 19 | {{{ |
||
| 20 | cd /opt/oscam/src/ |
||
| 21 | make |
||
| 22 | }}} |
||
| 23 | 2 | William Peters | |
| 24 | After oscam is built you should have a file like 'oscam-0.99.4svn1920-i686-pc-linux' in /opt/oscam/src/Distribution/. |
||
| 25 | We need to copy this file to an alternate location |
||
| 26 | |||
| 27 | {{{ |
||
| 28 | cd /opt/oscam/src/Distribution/ |
||
| 29 | cp ./oscam-0.99.4svn1920-i686-pc-linux /opt/oscam/oscam.bin |
||
| 30 | }}} |
||
| 31 | |||
| 32 | Ok, the binaries are installed :) |
||
| 33 | Now we need to configure oscam first create the configuration directories |
||
| 34 | |||
| 35 | {{{ |
||
| 36 | mkdir -p /opt/oscam/etc/ |
||
| 37 | mkdir -p /opt/oscam/etc/cw/ |
||
| 38 | }}} |
||
| 39 | |||
| 40 | Note: /opt/oscam/etc/cw/ is used for caching keys. |
||
| 41 | |||
| 42 | Now, create oscam.conf in /opt/oscam/etc/oscam.conf |
||
| 43 | |||
| 44 | {{{ |
||
| 45 | [global] |
||
| 46 | nice = -1 |
||
| 47 | WaitForCards = 1 |
||
| 48 | pidfile = /opt/oscam/oscam.pid |
||
| 49 | logfile = /opt/oscam/oscam.log |
||
| 50 | usrfile = /opt/oscam/oscamuser.log |
||
| 51 | cwlogdir = /opt/oscam/etc/cw |
||
| 52 | clienttimeout = 1 |
||
| 53 | |||
| 54 | [monitor] |
||
| 55 | port = 988 |
||
| 56 | aulow = 120 |
||
| 57 | monlevel = 0 |
||
| 58 | |||
| 59 | [newcamd] |
||
| 60 | key = 0102030405060708091011121314 #Note this is the DES key used for encrypting communication between oscam and tvheadend |
||
| 61 | port = 15050@0604:000000 |
||
| 62 | }}} |
||
| 63 | |||
| 64 | Now create oscam.server in /opt/oscam/etc/oscam.server |
||
| 65 | |||
| 66 | {{{ |
||
| 67 | [reader] |
||
| 68 | Label = Ziggo |
||
| 69 | 3 | William Peters | Device = /dev/ttyUSB0 #In this case my usb smartcard reader |
| 70 | mhz = 600 #Irdeto reader must run at 6MHz |
||
| 71 | cardmhz = 600 #Irdeto card must also run at 6MHz |
||
| 72 | 2 | William Peters | Protocol = mouse |
| 73 | EMMCache = 1,3,2 |
||
| 74 | Group = 1 |
||
| 75 | caid = 0604:0000 |
||
| 76 | rsakey = 3C8633AAC0D367533DEC7BB2EEEDEB8CA3ADA52E58B99BB34672783277A1DAAC3B6106AD0909774E031B2A6E30195B437683AD0FC599B87D08CEA47BE1B6C76A # only change this when it is required! |
||
| 77 | boxkey = 1122334455667788 # only change this when it is required! |
||
| 78 | fallback = 0 |
||
| 79 | }}} |
||
| 80 | |||
| 81 | Now create oscam.user in /opt/oscam/etc/oscam.user |
||
| 82 | |||
| 83 | {{{ |
||
| 84 | [account] |
||
| 85 | user = tvheadend |
||
| 86 | pwd = tvheadend |
||
| 87 | uniq = 0 |
||
| 88 | 1 | William Peters | group = 1 |
| 89 | 2 | William Peters | ident = 0604:000000 |
| 90 | caid = 0604 |
||
| 91 | 3 | William Peters | au = Ziggo |
| 92 | 2 | William Peters | }}} |
| 93 | |||
| 94 | Ok, if everything is configured correctly we can test the oscam installation |
||
| 95 | |||
| 96 | {{{ |
||
| 97 | /opt/oscam/oscam.bin -c /opt/oscam/etc/& touch /opt/oscam/oscam.log ; tail -f /opt/oscam/oscam.log ; killall oscam.bin |
||
| 98 | }}} |
||
| 99 | |||
| 100 | this should create some output like this |
||
| 101 | |||
| 102 | {{{ |
||
| 103 | ------------------------------------------------------------------------------- |
||
| 104 | >> OSCam << cardserver started at Sun Mar 14 13:04:17 2010 |
||
| 105 | ------------------------------------------------------------------------------- |
||
| 106 | 2010/03/14 13:04:17 2726 s version=0.99.4svn, build #1276, system=i686-pc-linux, nice=-1 |
||
| 107 | 2010/03/14 13:04:17 2726 s max. clients=509, client max. idle=120 sec |
||
| 108 | 2010/03/14 13:04:17 2726 s max. logsize=unlimited |
||
| 109 | 2010/03/14 13:04:17 2726 s client timeout=1000 ms, fallback timeout=2500 ms, cache delay=0 ms |
||
| 110 | 2010/03/14 13:04:17 2726 s shared memory initialized (size=4182108, id=1376260) |
||
| 111 | 2010/03/14 13:04:17 2726 s WARNING: fallbacktimeout adjusted to 900 ms (must be smaller than clienttimeout (1000 ms)) |
||
| 112 | 2010/03/14 13:04:17 2726 s WARNING: fallbacktimeout adjusted to 1600 ms (must be greater than serialreadertimeout (1500 ms)) |
||
| 113 | 2010/03/14 13:04:17 2726 s WARNING: clienttimeout adjusted to 1600 ms (must be greater than serialreadertimeout (1500 ms)) |
||
| 114 | 2010/03/14 13:04:17 2726 s auth size=4744 |
||
| 115 | 2010/03/14 13:04:17 2726 s Cannot open file "/opt/oscam/etc//oscam.services" (errno=2) |
||
| 116 | 2010/03/14 13:04:17 2726 s userdb reloaded: 0 accounts freed, 2 accounts loaded, 0 expired, 0 disabled |
||
| 117 | 2010/03/14 13:04:17 2726 s signal handling initialized (type=sysv) |
||
| 118 | 2010/03/14 13:04:17 2726 s can't open file "/opt/oscam/etc//oscam.srvid" (err=2), no service-id's loaded |
||
| 119 | 2010/03/14 13:04:17 2726 s monitor: initialized (fd=7, port=988) |
||
| 120 | 2010/03/14 13:04:17 2726 s camd 3.3x: disabled |
||
| 121 | 2010/03/14 13:04:17 2726 s camd 3.5x: disabled |
||
| 122 | 2010/03/14 13:04:17 2726 s cs378x: disabled |
||
| 123 | 2010/03/14 13:04:17 2726 s newcamd: initialized (fd=8, port=15050, crypted) |
||
| 124 | 2010/03/14 13:04:17 2726 s CAID: 0604 |
||
| 125 | 2010/03/14 13:04:17 2726 s provid #0: 000000 |
||
| 126 | 2010/03/14 13:04:17 2726 s radegast: disabled |
||
| 127 | 2010/03/14 13:04:17 2726 s resolver thread started |
||
| 128 | 2010/03/14 13:04:17 2726 s logger started (pid=2730) |
||
| 129 | 2010/03/14 13:04:17 2726 s resolver started (pid=2731, delay=30 sec) |
||
| 130 | 2010/03/14 13:04:17 2726 s reader started (pid=2732, device=/dev/ttyUSB0, detect=cd, mhz=600, cardmhz=600) |
||
| 131 | 2010/03/14 13:04:17 2726 s Waiting for local card init .... |
||
| 132 | 2010/03/14 13:04:20 2732 r02 card detected |
||
| 133 | 2010/03/14 13:04:23 2732 r02 ATR: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX |
||
| 134 | 2010/03/14 13:04:24 2732 r02 type: irdeto, caid: 0604, acs: 6.08 |
||
| 135 | 2010/03/14 13:04:24 2732 r02 ascii serial: XXXXXXXXXX, hex serial: XXXXXX, hex base: XX |
||
| 136 | 2010/03/14 13:04:27 2732 r02 ready for requests |
||
| 137 | 2010/03/14 13:04:27 2732 r02 card detected |
||
| 138 | 2010/03/14 13:04:27 2732 r02 type: irdeto |
||
| 139 | 2010/03/14 13:04:27 2732 r02 providers: 4 (0645bd,005500,005500,005500) |
||
| 140 | 2010/03/14 13:04:27 2732 r02 provider: 1, id: 0645BD |
||
| 141 | 2010/03/14 13:04:27 2732 r02 chid: 0001, date: 2003/12/26 - 2004/01/25 |
||
| 142 | 2010/03/14 13:04:27 2732 r02 chid: 000B, date: 2003/12/26 - 2004/01/25 |
||
| 143 | 2010/03/14 13:04:27 2732 r02 chid: FFE0, date: 2003/12/26 - 2003/12/30 |
||
| 144 | 2010/03/14 13:04:27 2732 r02 chid: 0384, date: 2003/12/26 - 2004/01/25 |
||
| 145 | 2010/03/14 13:04:27 2732 r02 chid: 000D, date: 2003/12/26 - 2004/01/25 |
||
| 146 | 2010/03/14 13:04:32 2726 s Init for all local cards done ! |
||
| 147 | 2010/03/14 13:04:32 2726 s anti cascading disabled |
||
| 148 | }}} |
||
| 149 | |||
| 150 | Oscam is now running on serverip:15050. |
||
| 151 | Open your tvheadend web interface. |
||
| 152 | Go to Configuration -> Code Word Client |
||
| 153 | Click Add Entry |
||
| 154 | Doubleclick 'hostname' type your server ip or hostname that is runnin oscam. |
||
| 155 | Doubleclick 'port' type the port number (if you made no changes to config files it should be 15050). |
||
| 156 | Doubleclick 'username' type the username as configured in oscam.user. |
||
| 157 | Doubleclick 'password' type the password as configured in oscam.user. |
||
| 158 | Doubleclick 'DES key' here you can insert your DES key. If you haven't changed oscam.conf (you should!) then this should be: 01:02:03:04:05:06:07:08:09:10:11:12:13:14 |
||
| 159 | Leave Update Card unchecked, at this moment tvheadend does not support EMM updates this option won't be used anyway. |
||
| 160 | Now check Enabled and click 'Save Changes' |
||
| 161 | |||
| 162 | When you click Save Changes you will something like this in the system logs |
||
| 163 | |||
| 164 | {{{ |
||
| 165 | Mar 14 13:11:55 cwc: Attemping to connect to serverip:15050 |
||
| 166 | Mar 14 13:11:55 cwc: Connected to serverip:15050 |
||
| 167 | Mar 14 13:11:55 cwc: serverip: Connected as user 0x0e to a Irdeto-card [0x0604 : 00.00.00.00.00.00.00.00] with 1 providers |
||
| 168 | Mar 14 13:11:55 cwc: serverip: Provider ID #1: 0x000000 00.00.00.00.00.00.00.00 |
||
| 169 | }}} |
||
| 170 | |||
| 171 | now to kill oscam press ctrl+c in the console. |
||
| 172 | |||
| 173 | Ok tvheadend is now connected to oscam and is able to descramble channels that your card gives you access to. |
||
| 174 | |||
| 175 | At this moment tvheadend does not support EMM updates, this means you have to update your card atleast once a week. |
||
| 176 | This can be done by inserting your smartcard for 30 minutes in the retail dvb-c setop box. |
||
| 177 | After that restart oscam. |
||
| 178 | |||
| 179 | |||
| 180 | == For Gentoo users i have an init script == |
||
| 181 | |||
| 182 | nano -w /etc/init.d/oscam |
||
| 183 | {{{ |
||
| 184 | #!/sbin/runscript |
||
| 185 | # Copyright 1999-2010 Gentoo Foundation |
||
| 186 | # Distributed under the terms of the GNU General Public License v2 |
||
| 187 | # $Header: |
||
| 188 | |||
| 189 | CONF="${myservice##*.}" |
||
| 190 | |||
| 191 | depend() { |
||
| 192 | need net |
||
| 193 | } |
||
| 194 | |||
| 195 | start() { |
||
| 196 | ebegin "Starting oscam" |
||
| 197 | start-stop-daemon --start --pidfile ${OSCAM_PID} \ |
||
| 198 | --exec ${OSCAM_BIN} -- ${OSCAM_OPTS} |
||
| 199 | eend $? |
||
| 200 | } |
||
| 201 | |||
| 202 | stop() { |
||
| 203 | ebegin "Stopping oscam" |
||
| 204 | start-stop-daemon --stop --quiet --pidfile ${OSCAM_PID} --signal 2 |
||
| 205 | eend $? |
||
| 206 | rm -f ${PIDFILE} |
||
| 207 | } |
||
| 208 | }}} |
||
| 209 | |||
| 210 | nano -w /etc/conf.d/oscam |
||
| 211 | {{{ |
||
| 212 | # /etc/conf.d/oscam: config file for /etc/init.d/oscam |
||
| 213 | |||
| 214 | OSCAM_OPTS="-b -c /opt/oscam/etc/" |
||
| 215 | OSCAM_BIN="/opt/oscam/oscam.bin" |
||
| 216 | OSCAM_PID="/opt/oscam/oscam.pid" |
||
| 217 | }}} |