Case study
One system for the whole survey, from request to report.
How a drain survey company replaced a handheld camera controller with a system that runs the survey kit, manages every job, and keeps working with no signal on site.
- Client
- Elde Ltd, a UK drain and pipe survey company working for the water sector
- What we built
- A desktop system that runs the survey kit and manages each job, with a cloud back end and the electronics that connect it all
- How it was delivered
- Four fixed delivery cycles, each signed off by Elde after a live demo
- Handed over
- May 2026
The challenge.
Elde's crews inspect underground drains and water pipes with a camera on a cable. The camera was controlled by a handheld unit. It could drive the camera, but it couldn't run a job. There was nowhere to manage jobs, no structured record of what the operator saw, and no direct path from the survey to the report the water company receives.
Elde wanted one system that runs the survey kit from a PC and manages the whole job, from the client's request to the finished report. Two things made that harder:
- No signal on site. Crews often work with no internet, so everything had to keep working offline and catch up later.
- A clear trail. Water companies expect a record of who did what, and when.

What we built.
ELDE Inspection runs the whole job from one screen.
- Jobs. Create, schedule and track each job, from new to closed.
- Live video. Record the camera feed and take screenshots, with the job details and distance shown on the video.
- Distance. Read straight from the cable drum, with a guided set-up for each drum, accurate to within 3%.
- Finding the camera. Set the locator signal from the app, so the team above ground can find the camera head.
- Reports. A PDF, or a read-only link to send to the client.
- Offline. Everything works with no connection, and catches up when the connection returns.
- Access and a trail. Sign-in with the company's Microsoft accounts, permissions by role, and a log of every key action.
- Dashboard. Figures across all jobs.
We also designed the electronics that connect the PC to the survey kit, including the signal generator for the locator.
The hard parts.
- Driving the locator. It needs a clean signal at three frequencies, and it drew more current than its specification suggested. Bench tests found the real load, and the final design sets the frequency and output from software, with no manual tuning.
- Never losing data offline. Changes made with no signal wait in an encrypted queue. The sync is built so that a crash halfway through can't lose or duplicate a change.
- Keeping access simple. Fine-grained permissions meant 56 roles, and giving an administrator full access took 54 separate steps. A simpler role model cut that to 4, and Elde's own IT staff can manage access without touching code.
The result.
- 4 of 4
- delivery cycles accepted by Elde
- 54 to 4
- steps to give an administrator full access
- Within 3%
- distance accuracy, checked for each drum
Every performance target that could be measured before field use was met: sync time, sign-in time, response time and data integrity. The handheld controller is replaced by one system that also manages jobs and produces reports. Elde has the full scope, accepted at a 90-minute handover demo in May 2026, with documentation covering the design, the hardware, access set-up and disaster recovery. Field use starts when Elde's site hardware is ready. The next step is moving the locator's signal generator from a bench build to a production circuit board.
For the technical reader
| Layer | Technology |
|---|---|
| Desktop app | Electron, TypeScript, React, Tailwind CSS, Zustand, Drizzle ORM |
| Cloud | Azure SQL, Azure Blob Storage, Application Insights, Log Analytics, Bicep |
| Identity | Microsoft Entra ID with MSAL, and a PowerShell module for managing roles |
| Video | Magewell Pro Capture AIO, FFmpeg with DirectShow |
| Hardware control | LabJack T7 over Modbus TCP, AD9833 signal generator, OPA548 power amplifier, solid state relay |
The offline queue is replayed only after the sync service renames the queue file in one atomic step. The locator's real load was about 11 ohms, not the 30 ohms quoted, drawing up to 270 mA, so the final amplifier has a built-in current limit.
Not sure which way in?
A first conversation costs nothing. We'll tell you where we'd start, and if the answer is not yet, we'll say so.
Or email info@khiliad.com, or .