CCcam on Dreambox: Full Configuration Guide 2026
If you're trying to figure out how to configure CCcam on Dreambox and hitting walls — wrong file path, nothing in the logs, channels stuck encrypting — this guide covers everything from the initial file setup through to troubleshooting the edge cases that most walkthroughs completely skip. You already have your server credentials. Now you need to make it actually work.
What You Need Before You Start
Getting CCcam running cleanly on a Dreambox takes maybe 20 minutes if you have everything ready. Most failures happen because something in the prep phase was skipped.
Compatible Dreambox Models and Enigma2 Images
The DM800, DM800se, DM900, DM920, DM7080, and DM520 all support CCcam. So do the DM525, DM900 Ultra, and DM7020HD. What matters more than the exact model is that your receiver is running an Enigma2 image — OpenATV, OpenPLi, OpenVix, or DreamElite all work fine.
One thing worth knowing: if you're on an older DM800 or DM500 with a very old Enigma2 build, the IPK package architecture matters. DM800 uses MIPS, while newer boxes like DM900 use ARM. Installing a package compiled for the wrong architecture will silently fail or crash. Check your image architecture before downloading the CCcam IPK.
Required CCcam Server Credentials
You need four things from your server provider: a hostname (either a domain like server.example.com or a raw IP), a port number (12000 is the CCcam default, but it can be anything), a username, and a password. These four values go into a single C-line in your config file. No more, no less.
Copy the credentials exactly as given. A single wrong character — extra space, wrong case — breaks the connection silently. Most providers deliver credentials in an email or dashboard. Don't retype them manually; copy-paste.
Tools: FTP Client and Telnet/SSH Access
You need an FTP client to upload the config file. FileZilla is free and works well. Connect to your Dreambox IP on port 21, with username root and password dreambox (default — change this if you haven't). Navigate to /etc/ and upload your file there.
For verification you'll want Telnet (PuTTY on Windows, or the built-in telnet command on Linux/macOS) or SSH on port 22. Telnet runs on port 23. Both work for checking whether CCcam is actually running after setup.
Creating and Uploading the CCcam.cfg File
This is the part that breaks most setups. The config file is simple but unforgiving about format, path, and encoding.
CCcam.cfg Syntax and Required Lines
The file lives at /etc/CCcam.cfg — that exact path, no variation. The filename must be exactly CCcam.cfg: capital C, capital C, lowercase cfg. Get this wrong and CCcam starts with no config loaded, connecting to nothing.
A minimal working config looks like this:
C: server.example.com 12000 myuser mypassword 0
LOGLEVEL 1
LOGFILE /tmp/CCcam.log
RECEIVERTYPE DREAMBOXThat's genuinely all you need to get a connection going. The rest is optional tuning.
C-Line Format Explained
The C-line format is: C: <hostname> <port> <username> <password> <want_emu>
Each field separated by a single space. The want_emu parameter at the end is either 0 or 1. Set it to 0 — this is correct for virtually every real-world setup. Setting it to 1 tells CCcam to request emulated cards from the remote server, which legitimate servers don't offer. Leave it at 0 and forget it exists.
The hostname can be a domain name or an IPv4 address. Port 12000 is the CCcam default, but your provider might use something different — 9000, 8080, or even 443 to avoid port blocking. Whatever's in your credentials, use that.
Where to Place CCcam.cfg on Dreambox
The file goes in /etc/CCcam.cfg. Not /etc/cccam/, not /var/etc/, not anywhere else. Some older guides suggest alternate paths — ignore them. On all current Enigma2 images, /etc/CCcam.cfg is the standard location and CCcam looks there first.
One critical heads-up: after a firmware update, the /etc/ directory can be wiped. Keep a backup of your CCcam.cfg somewhere off the Dreambox — on your PC, a USB stick, anywhere. Restoring it takes 30 seconds via FTP. Forgetting this has cost people hours of confusion after an OpenATV update.
Uploading via FTP Step by Step
Open FileZilla. In the top bar, enter your Dreambox's IP address as host, root as username, dreambox as password, port 21. Hit connect. In the remote panel, navigate to /etc/. Drag your CCcam.cfg from your PC into that directory.
After uploading, right-click the file in FileZilla, go to File Permissions, and set it to 644 (owner read/write, group read, others read). CCcam won't read a file with wrong permissions on some images. It's a two-second step that prevents a confusing failure mode.
Installing and Activating CCcam via Softcam Manager
The config file alone isn't enough — CCcam needs to be installed as a software package and started through the receiver's Softcam Manager.
Installing CCcam IPK Package on Enigma2
If CCcam isn't already installed, go to your image's plugin browser or package manager. On OpenATV: Menu → Plugins → Download Plugins → Softcams. Find CCcam in the list and install it. On OpenPLi and OpenVix the path is similar — look under Setup or System for a software manager.
If you're installing manually via Telnet, the command is opkg install CCcam_*.ipk from the directory where you uploaded the package. Again — make sure the IPK architecture matches your hardware.
Using Softcam Manager to Start CCcam
On OpenATV: Menu → Setup → System → Softcam Manager. On OpenPLi: Menu → Setup → System → Softcam Setup. You'll see a list of installed softcams. Highlight CCcam and press the OK or Start button (varies by image skin, usually a green or red button).
The status should change to "running" within a few seconds. If it flips back to stopped immediately, CCcam is crashing on startup — usually a config file issue or wrong binary architecture. Check the log at /tmp/CCcam.log right away.
Setting CCcam as the Active Softcam on Boot
In Softcam Manager, there's an Autostart toggle. Enable it. Without this, CCcam stops every time the box reboots and you have to manually restart it — which is annoying and easy to forget.
One thing that trips people up: only one softcam should be running at a time. If OScam is set to autostart and you add CCcam, they'll both try to grab the same resources on boot. This causes both to fail in unpredictable ways. Disable autostart on any softcam you're not using.
Verifying CCcam Is Running via Telnet
Open a Telnet connection to your Dreambox IP on port 23. Log in as root. Run:
ps | grep CCcamIf you see a line like /usr/bin/CCcam in the output, it's running. If you get nothing back, it's not running — or it crashed after starting.
Now check the log:
cat /tmp/CCcam.logA successful connection looks something like: connected to server.example.com:12000 followed by card information lines. A failed connection shows connection refused or hostname not found — both give you a clear direction for fixing the problem.
Troubleshooting CCcam Connection Problems on Dreambox
Most CCcam failures fall into a handful of categories. Here's how to work through them.
CCcam Shows 'Not Connected' — Common Causes
First, verify DNS resolution. From Telnet on the Dreambox, run ping server.example.com. If it says "unknown host", your DNS is broken or the hostname is wrong. Try the server's IP directly in the C-line as a test.
If DNS resolves but it still won't connect, the port might be blocked. From a PC on the same network, try telnet server.example.com 12000 — if it times out, the port isn't reachable from your network.
Also: check your credentials character by character. Not "roughly right" — exact. Passwords are case-sensitive. A trailing space in the username will cause silent auth failure every time.
Wrong C-Line Format: Spaces, Typos, Encoding Issues
This is the silent killer that most guides don't mention. If you created your CCcam.cfg in Notepad on Windows, the file probably has CRLF line endings (Windows format). CCcam on Linux requires Unix LF endings. With CRLF endings, CCcam may read each line incorrectly, interpreting the carriage return character as part of the password or hostname.
Open the file in Notepad++ (free, Windows). Bottom right corner shows the line ending format. If it says "Windows (CR LF)", go to Edit → EOL Conversion → Unix (LF) and save. Re-upload via FTP. This single fix resolves probably 30% of "config looks right but won't connect" reports.
Tabs instead of spaces between C-line fields is another classic mistake. The C-line parser expects single spaces. If you have a tab character anywhere in a C-line, the parse fails.
Port Blocked by Firewall or ISP
Some ISPs throttle or block port 12000 at the network level. Deep packet inspection can even identify and block CCcam protocol traffic regardless of port. If you suspect this, ask your server provider if they offer the service on port 443 — most ISPs won't block that.
If your ISP is doing DPI-based blocking, port changes won't help. In that case, routing CCcam traffic through a VPN tunnel is the only reliable solution. Set up a VPN on the Dreambox (OpenVPN IPK is available for most Enigma2 images) and point your C-line at the server once the tunnel is up.
CCcam Process Crashes or Fails to Start
Check available RAM first: run free -m via Telnet. Older Dreambox models like DM800 have limited RAM. If available memory is under 20MB, CCcam may not start. Reduce log verbosity — set LOGLEVEL 0 in your config to stop log writes entirely.
Also check /var/log/syslog for startup error messages. If the IPK installed incorrectly, you'll see something like "permission denied" or "exec format error" — the latter means architecture mismatch (ARM binary on MIPS hardware or vice versa).
Channels Not Decrypting Despite Connected Status
"Connected" just means the TCP handshake succeeded and credentials were accepted. It says nothing about whether the server actually holds the cards you need.
Check /tmp/CCcam.log for these specific messages: CARD NOT FOUND means the server doesn't have a card for the CAID you're requesting. ECM REJECTED means the card exists but the ECM was denied — often a subscription/entitlement issue on the server side.
Encryption systems vary by satellite and broadcaster: Nagravision 3, Viaccess 3, Irdeto 2, Conax — each requires the corresponding card on the server. If you're trying to decrypt a Viaccess channel and the server only has Nagravision cards, you'll be connected but decryption fails every time. This is a server capability issue, not a Dreambox configuration issue.
Advanced CCcam.cfg Configuration Options
Once the basic connection works, there's a lot you can tune. This section covers what actually matters for a well-configured setup.
Adding Multiple C-Lines for Failover
CCcam processes C-lines in order. If the first server doesn't respond, it tries the next. This makes failover trivial to configure — just add more C-lines:
C: primary.example.com 12000 user1 pass1 0
C: backup.example.net 9000 user2 pass2 0
C: fallback.example.org 12000 user3 pass3 0CCcam tries them in sequence. This is useful if your provider offers redundant servers, or if you have access to multiple accounts. Failover kicks in automatically — no manual intervention needed.
CAID and Provider ID Filtering
If the server shares cards for many CAIDs and you only need a subset, you can tell CCcam to ignore the rest. This speeds up ECM resolution because CCcam doesn't waste time routing requests to cards you don't need.
IGNORE CAID: 0500
IGNORE CAID: 1800CAID 0500 is Viaccess, 1800 is Nagravision 1. If you're only watching DVB-S2 channels on Irdeto 2 (CAID 0622), filtering out everything else means faster ECM responses and less log noise. Check your CCcam.log to see which CAIDs the server is offering and keep only what you actually watch.
Hop Count and Resharing Settings
If you want to share cards from your CCcam setup to other receivers on your local network, use N-lines. Format: N: <port> <username> <password> <hop_limit> <allow_local_cards>
N: 12000 localuser localpass 1 1Hop limit 1 means the card can only be reshared one level deep — your LAN clients can use it, but they can't reshare it further. Setting hop limit to 0 disables resharing entirely. Keep hop counts low; high hop counts degrade ECM response times and cause decryption delays.
One thing to know: if you're behind CGNAT (carrier-grade NAT — common with mobile broadband and some cable providers), you can't run a CCcam server accessible from outside your network. You can still use CCcam as a client. CGNAT means your public IP is shared across multiple customers, so inbound connections don't reach you. Client operation is unaffected; server operation is not possible without a VPN with a dedicated IP.
Configuring CCcam Log for Diagnostics
Log settings in CCcam.cfg:
LOGLEVEL 1
LOGFILE /tmp/CCcam.logLOGLEVEL 0 = no logging, 1 = normal (connections, errors), 3 = full debug (everything). Use level 3 only when actively diagnosing a problem — on a Dreambox with limited flash storage, level 3 generates a lot of writes. Crucially, point the log at /tmp/ which is RAM, not /etc/ or flash. Writing logs to flash storage wears it out over time, especially on older DM800 units.
If you have a Dreambox with an internal HDD, you can safely point logs to /media/hdd/CCcam.log instead. On long sessions, /tmp/ can fill up (it's limited to available RAM), so the HDD path is better for leaving the box running unattended for days.
For multi-tuner setups — DM7080, DM920 — where two tuners might request ECMs simultaneously, add CACHE SYNC to the config. This enables peer cache synchronisation so both tuners share resolved ECM responses rather than both hitting the server independently. Response times drop noticeably on channels with high zap frequency.
FAQ
Where exactly should I put CCcam.cfg on my Dreambox?
The file must be at /etc/CCcam.cfg — that exact path on all Enigma2 images including OpenATV, OpenPLi, and OpenVix. Upload it via FTP to the /etc/ directory. The filename is case-sensitive: CCcam.cfg with capital C, capital C, lowercase cfg. Anything else and CCcam starts with no config loaded.
What port does CCcam use by default?
The standard CCcam client port is 12000. But server admins can configure any port they want — 9000, 8080, and 443 are common alternatives, especially when 12000 is blocked. Whatever port your provider gave you goes in the C-line. The format is C: hostname port username password 0.
Can I run both CCcam and OScam at the same time on Dreambox?
No. Running two softcams simultaneously causes conflicts over the card reader and network socket assignments. Both tend to fail in unpredictable ways. Use Softcam Manager to stop one before starting the other. Only one softcam should have autostart enabled.
Why does CCcam show as connected but channels still don't decrypt?
Connected only means the TCP connection and credential handshake worked. Decryption requires the server to hold a card for the exact CAID and provider you're trying to watch. Check /tmp/CCcam.log for ECM REJECTED or CARD NOT FOUND. If either appears, the server doesn't have the right card — that's a server capability issue, not a config issue.
How do I check if CCcam is actually running on my Dreambox?
Connect via Telnet (port 23) or SSH (port 22) to your Dreambox IP, log in as root, and run ps | grep CCcam. If you see /usr/bin/CCcam in the output, it's running. You can also read /tmp/CCcam.log to check recent connection activity.
What does the 'want_emu' parameter in the C-line mean?
The want_emu field (0 or 1) tells CCcam whether to request emulated cards from the remote server. Set it to 0 — that's correct for nearly every real setup. Setting it to 1 requests EMU-based cards, which most servers don't offer. The value 0 is what you want and you probably won't ever need to change it.
My CCcam.cfg looks correct but CCcam still won't start — what should I check?
The most common hidden cause is Windows CRLF line endings. Open the file in Notepad++, check the line ending format in the bottom-right corner. If it says "Windows (CR LF)", go to Edit → EOL Conversion → Unix (LF) and save. Re-upload. Also verify file permissions are 644 and check /var/log/syslog for startup error messages. If you see "exec format error", the CCcam binary doesn't match your Dreambox architecture.