The internet went down at 4pm on Thursday and stayed down. At first I just waited and hoped it was just a blip and it would come back in a bit. Then I restarted the modem. Nothing. Restarted the router. Nothing. Powered off the modem for 30 minutes and tried again. Nothing.
The Quantum Fiber SmartNID (apparently that's what you call it) in my closet had a blinking blue light, which the support page translates as "trying to sync with the network." Power-cycling did nothing. Support's script was reboot it, wait, book an engineer. Earliest appointment: ten days.
That's a long time to stare at a blinking light when I'm an engineer and I like to work from home and my backup T-Mobile connection is not wonderful. An ONT (apparently another name for this box) knows exactly how much light it's receiving, whether it has reached the operator's OLT (apparently the name for the box on the other side), and how many times it has rebooted today and why. It just doesn't show you.
So I plugged my PC into its LAN port and went and asked it.
What it said
The management UI is a React app talking to a TR-181 data model and the normal UI showed very little useful information other that it claimed the fiber connection was down. So I asked Claude Code to build me an app to talk to its API and see if it could get the real data. The actual endpoints aren't documented anywhere I could find, but the app's webpack bundles name every URL it calls, so I read those instead of guessing. Then it's a login, a session cookie, and a few JSON queries — plus some traps, like optical power reported in thousandths of a dBm rather than the tenths the spec says.
The first readings looked like dead optics: interface NotPresent, no received power, transceiver temperature and voltage at zero. That was wrong. The modem was restarting every few minutes and every initial sample had landed mid-boot. Caught in a good moment, the same fields read −19.71 dBm in, 2.61 dBm out, 53 °C, and a healthy link to a Calix E7 OLT.
It turned out that the fiber was fine but the box itself was crashing for a total of 38 restarts in 24 hours, all of them Global Software Reset. No power-on or watchdog resets to explain them. It turns out its some firmware fault so I just need a replacement box. Hopefully I can convince Quantum to send me a new box faster than in 10 days?
Three lessons quick: read the reboot counters before you trust any other number, because a crash-looping device resets all its own statistics. And take more than one sample. And nowadays we can quickly build a tool for anything!
The tool
https://github.com/alexhop/fiber is what came out of it. Node 22.18+, no dependencies, no build step, no database.
node src/cli.ts setup # store modem address + credentials, once
node src/cli.ts status # one snapshot of the link
node src/cli.ts serve # live dashboard on http://localhost:8477It sets up a web dashboard to chart uptime, received optical power and restarts, and is fully self-contained. The health rules are built to tell causes apart: fiber versus firmware versus optics versus provisioning versus your own router. A discover command maps the API on unknown hardware and refuses to touch anything that looks like reboot or factory-reset.
This isn't new ground. After I built it I asked claude to look for other solutions and there are a few. Ozark-Connect/NetworkOptimizer already supports this device inside a full UniFi monitoring stack, and if you want history and a single pane of glass, start there. This exists because I needed something that ran immediately, at 9pm, with nothing installed.
The README has the Q1000K's endpoints, objects and firmware quirks written up in full. If they're useful elsewhere, take them.
Comments
Leave a Comment
Sign in with your Microsoft account to leave a comment.
Sign in with Microsoft