On 05/04/08 15:31, Pierre-Yves Paranthoen (PERSO) wrote:
Here are the results with the device.c patch you gave me :
... May 4 15:28:08 localhost vdr: [7030] edited channel 1 TF1;CSAT:11895:vC34O0S0:S19.2E:27500:171:124=fra,125=eng:53:0:8371:1:1074:0 ... May 4 15:28:29 localhost vdr: [7030] switching to channel 1 May 4 15:28:29 localhost vdr: [7030] GetDevice 1 0 1 -1 0000 May 4 15:28:29 localhost vdr: [7030] NumCamSlots = 2 May 4 15:28:29 localhost vdr: [7030] j = 0, i = 0, imp = 020C4C6E, Impact = FFFFFFFF May 4 15:28:29 localhost vdr: [7030] device 0 ... May 4 15:28:32 localhost vdr: [7036] changing caids of channel 1 from 0 to 500,100 May 4 15:28:32 localhost vdr: [7030] retuning due to modification of channel 1 May 4 15:28:32 localhost vdr: [7030] switching to channel 1 May 4 15:28:32 localhost vdr: [7030] GetDevice 1 0 1 -1 0500 May 4 15:28:32 localhost vdr: [7030] NumCamSlots = 2 May 4 15:28:32 localhost vdr: [7030] CAM 0 not ready May 4 15:28:32 localhost vdr: [7030] CAM 1 ready May 4 15:28:32 localhost vdr: [7030] no usable CAM slots! May 4 15:28:32 localhost vdr: [7030] info: Channel not available!
After changing the CA id of channel 1 to '0', the first device is chosen. Then the CA id is automatically updated to 500,100 and the channel is retuned. CAM 2 (index 1) is ready, but apparently doesn't provide CA id 500 or 100.
What I'm missing in your log is the actual "application information" message of your CAM - something like
CAM 2: AlphaCrypt, 01, 4A20, 4A20
Please change the 'dbgprotocol' to 'dsyslog' in the following lines of ci.c:
515: dbgprotocol("Slot %d: <== Application Info (%d)\n", Tc()->CamSlot()->SlotNumber(), SessionId());
721: dbgprotocol("Slot %d: <== Ca Pmt Reply (%d)", Tc()->CamSlot()->SlotNumber(), SessionId());
731: dbgprotocol(" %d", pnr);
735: dbgprotocol(" %02X", *d);
752: dbgprotocol(" %02X", caepl);
761: dbgprotocol(" %d=%02X", pid, caees);
772: dbgprotocol("\n");
and repeat the test. Make sure the "Application Info" and "Ca Pmt Reply" messages are in your log excerpt.
Klaus