How Version Diff works
.smw. Everything runs in your browser; nothing is uploaded.A — Baseline (older build)
Drop the older .smw / .zip
or click to browse
B — Current (newer build)
Drop the newer .smw / .zip
or click to browse
How the Audit works
.zip, or .smw / .smft / .dip) and it builds a full as-built: every device with its IP-ID, IP and the port it physically lands on; serial / IR / relay config; touchpanels; the full signal list; and your custom modules. Click anything that’s underlined or a row with a › — a device, a signal, a module, a port — to drill into exactly what it connects to. Plain text isn’t clickable. The amber bar up top flags anything worth a second look. Nothing is uploaded.Drop the program .zip — or a .smw / .umc / .smft / .dip
full audit · runs in your browser
How the Log Analyzer works
.zip. It triages recurring errors by rate, device socket drops (and whether they’re on a regular cadence), logic-solve timeouts, processor load, and failed-login surges. Tip: load a program in the Audit tab too — the log then cross-references it, naming the dropping devices and tying “could not be solved” timeouts to the program’s feedback loops.Drop a processor error log or Info-Tool dump
.err / .log / .txt / .zip · or click to browse
What this is
A field diagnostic kit for Crestron 4-Series work. Drop a program or a log; it reads the file format directly and surfaces what changed, what's heavy, and what's recurring. Built by Kaizen Logic. Runs entirely client-side — safe for client files. SIMPL-produced files are opened read-only; nothing is written back to them, and an Info-Tool .zip is unpacked in your browser without leaving your machine.
- Version Diff — two .smw
- The one thing Git can't do for an
.smw: see what changed between two builds. Detects signals added / removed / renamed, signal type changes (kept name, D↔A↔S), and per-module instance counts. Also detects parameter changes on symbols whose wiring is unchanged (the silent “programming may be lost” edits). Does not detect rewiring of existing signals or constant edits inside compiled modules. Renames are inferred from identical wiring and labeled as candidates. "Copy as text" drops the whole diff into a PR or change ticket. - Audit — program .zip / .smw / .smft / .dip
- The whole program at a glance, no SIMPL Windows: device list (model, IP-ID / Cresnet ID, IP), the full IP-ID table, third-party IP gear with what each address is for, custom-module inventory, the full signal list, and a checks pass (feedback loops, signals driven by multiple sources, unconnected signals). Collapsible cards; copy-to-table export.
- Log Analyzer — .err / Info-Tool dump / .zip
- Leads with a triage summary — log time span, error/warning counts, and the worst recurring issue. Then recurring errors with a rate (a burst right after boot reads very differently from a steady background hum), signal-solve-timeout vs restart correlation, processor load exactly as logged (no assumptions about which processor), and device socket drops.
How to read a result
Facts are read straight from the file. Anything inferred (a rename, a likely cause) is labeled as such. Static analysis sees structure and what the box already wrote down — not runtime values or the inside of compiled .umc/.clz modules. The Bench narrows the search; the live SIMPL debugger or a cpuload capture confirms it.