Dockcam lost its camera when the computer slept
Blog post #97

AI-generated illustration.
I opened Google Meet, picked my camera and Dockcam was not in the list. The app itself said everything was fine: iPhone connected, camera activated, “Ready”. Meet only offered OBS. When your product says “Ready” and the camera is missing, that is the worst kind of bug, because the user has nothing to go on.
What changed since last log
- Dockcam 2.5.1 has been public since the end of September, with a download, a seven-day trial and a one-time purchase.
- Since then I have used it myself most days, mostly to find things like this before anyone else does.
What shipped
- The camera comes back after sleep mode. Windows removes Dockcam’s virtual camera when the computer goes to sleep. The small helper process that keeps the camera alive kept running, so the app had no idea the camera was gone. Version 2.5.2 listens for the computer waking up and creates the camera again a few seconds later.
- A quick fix for the day. Restarting the app was enough to bring the camera back, and Meet found it again.
What’s working
- The logs told the story. The camera’s own log showed it shutting down at 07:57. Windows’ event log showed the computer going to sleep at exactly the same second. With those two lines next to each other, the cause was clear in minutes.
- I could test the fix without waiting for a real sleep. Claude stopped the camera and started it again against the installed version, and the camera showed up in the list again each time.
What’s unclear or broken
- The fix does not reach anyone by itself. There are no automatic updates yet, so 2.5.2 only helps people who download the new installer. That includes me. A bug fix that needs the user to go and find it is only half a fix.
- Installing still has three hurdles. Windows warns about the installer because it is not code-signed. Activating the camera asks for administrator rights once. And every update is a manual download. Each step is explained, but each one is a moment where a normal user can give up.
- Sleep was not the only case. The next morning the camera was missing again, this time right after the computer started. So I added a guard that checks every 15 seconds that Windows actually lists the camera, and restarts it if it does not. The first version of the guard compared the name too strictly. Windows calls it “Dockcam (Windows Virtual Camera)”, so the guard thought the camera was always missing and restarted it every 20 seconds. That is fixed in 2.5.4.
Decisions made
- “Ready” has to mean ready. The app should only say the camera works if Windows can see it. That is why the guard checks the camera list itself and does not trust the helper process.
- A code-signing certificate is the next real step for installation. It removes the Windows warning, and it is what lets me turn automatic updates back on safely. Without it, every fix like this one depends on the user downloading a new file.
- Until then, the guide does the work. The step-by-step guide in the app and on the product page has to cover the warning and the administrator prompt, so nobody gets stuck there.
Tooling & process
- Run it where the user runs it. Claude works inside a sandbox on my computer, so programs it starts do not see the same cameras I do. To check what Meet sees, it has to run the check as a scheduled task in my normal Windows session. It is a small trick, but without it you test the wrong thing and draw the wrong conclusion.
— Stefan