7.1 Controller Programming and Database Management
Key Takeaways
- A controller database is organized into functional groups — phase timing, sequence and ring structure, detector assignment, coordination patterns, pre-emption, time-of-day scheduling, and unit parameters — and a change in one group can invalidate another.
- The direction of a transfer must be confirmed before it is executed: sending the laptop's copy to the controller overwrites live field timing, while pulling the controller's copy overwrites the office record.
- A verified backup taken before any change is the only reliable rollback, and the backup must be retrieved from the controller itself rather than assumed to match the office archive.
- NTCIP 1202 defines standard objects for actuated signal controllers so a central system can read and write timing across mixed vendors, but vendor-specific features remain outside the standard object set.
- Firmware updates can reset or reinterpret database values, so a post-update verification of timing, detector assignment, and pre-emption is mandatory rather than optional.
7.1 Controller Programming and Database Management
"Equipment repair, replacement, and programming" is one of IMSA's stated Level II Field training areas, and current IMSA-affiliated course descriptions name advanced controller programming first in the list of exam topics. A field technician who can only change a max green is not a Level II technician. The expectation is that you can load, verify, back up, and restore a complete intersection database, and understand which parts of it depend on which other parts.
How a Controller Database Is Organized
Every modern controller — NEMA TS 2, Model 2070, or ATC — presents the same functional groups, whatever the menu structure looks like.
| Group | Contents | What Breaks If It Is Wrong |
|---|---|---|
| Phase timing | Minimum green, passage, max 1/max 2, yellow, red clearance, walk, pedestrian clearance, volume-density parameters | Safety and service. Wrong yellow is a legal exposure; wrong passage is a service complaint. |
| Sequence and ring structure | Ring assignment, barrier placement, phase sequence, concurrent groups | Everything. A wrong ring structure produces conflicts the monitor will catch and flash on. |
| Overlaps | Parent phases, modifiers, trailing green, overlap clearance | Intermittent monitor trips when the overlap terminates independently. |
| Detector assignment | Which input calls which phase, mode, delay, extend, fail-safe behavior | Phases that never come up or never leave. |
| Coordination | Cycle, split, offset, sequence per pattern; force-off mode; permissive structure | Progression collapse and split failures. |
| Pre-emption | Input assignment, priority ranking, track clearance phases, dwell and exit phases | Life safety. |
| Time-of-day / scheduler | Day plans, week plans, exception dates, pattern and flash events | The intersection runs the wrong plan at the wrong hour. |
| Unit / configuration | Communication addresses, port settings, cabinet type, monitor interface | Loss of communication or a Port 1 fault. |
| Logging / alarms | Event log configuration, detector diagnostics thresholds, alarm outputs | You lose the diagnostic trail. |
The dependencies matter. Adding a phase to the sequence changes which channels the monitor must permit. Adding a detector changes which phase gets called. Changing a split changes force-off points across the entire ring. A technician who edits one group without checking the others produces an intersection that is internally inconsistent and fails intermittently.
Transfer Discipline
More intersections are broken by a mis-directed transfer than by any hardware failure.
The Direction Problem
Software packages label transfers from the perspective of the tool, not the technician. "Send," "download," "upload," and "transfer" mean different things in different vendors' software, and the same word can mean opposite directions in two applications a technician uses in the same week.
The only safe habit: read the dialog and identify the source and the destination by name before clicking, every time. Sending the laptop's stale copy into a live controller silently replaces field-verified timing with whatever was last saved on that laptop — including someone else's intersection if the file was opened from the wrong folder.
The Backup Sequence
- Pull the current database from the controller — not from the office archive, not from the last file on the laptop. The controller holds truth.
- Name it with intersection, date, and reason (
MainSt_1stAve_2026-08-06_pre-split-change). A folder full ofbackup1.datis not a backup system. - Verify the pull succeeded by reopening the file and confirming it contains the intersection you expect.
- Make the change.
- Read the change back from the controller and confirm it took.
- Pull a post-change database and archive it alongside the pre-change copy.
Many controllers also support a physical data key or removable memory module, and 170-family units used removable PROM modules. A data key left in a controller is not a backup — it is the controller's live memory, and it will be overwritten by the next change.
Coordination and Pre-emption Programming
Coordination
A coordination pattern is a set of cycle, offset, and splits plus a sequence and a force-off mode. Two rules a technician must verify on every pattern:
- Splits must sum to the cycle length on each ring. Most controllers reject or auto-adjust a set that does not, and the auto-adjustment is rarely what the timing engineer intended.
- Every split must be at least as long as its phase's minimum service time — minimum green plus yellow plus red clearance, and where a pedestrian movement can be called, walk plus pedestrian clearance plus yellow plus red clearance. A split that is shorter than its pedestrian requirement will break coordination the first time a pedestrian presses the button.
Pre-emption
Pre-emption programming has a strict hierarchy: railroad pre-emption outranks emergency vehicle pre-emption, which outranks transit priority. Controllers implement this by input number, with the lowest-numbered pre-empt input having the highest priority. Assigning the railroad interconnect to a lower-priority input than an emergency vehicle detector is a design error with fatal consequences, and it is invisible until a train and a fire truck arrive together.
Every pre-empt program specifies: the input, the delay before entry, the phases used for track clearance or the dwell phase, the minimum durations of each stage, the exit phase, and whether pedestrian clearance may be truncated. None of these values is a technician's choice — they come from the approved pre-emption design.
NTCIP and Interoperability
NTCIP 1202 is the standard that defines objects for actuated signal controllers — phase timing, coordination, detectors, and status — so that a central management system can read and write those values across controllers from different manufacturers. NTCIP 1201 defines the global objects (time, event logging, database management) shared by all field devices, and NTCIP 1210 covers field master control.
What NTCIP does for a technician: a central system can push a timing change and read back status without a vendor-specific tool. What it does not do: cover vendor-proprietary features. Adaptive algorithms, specialty pre-emption logic, and manufacturer-specific diagnostics generally sit outside the standard object set and still require the vendor's own software. A technician who assumes an NTCIP central system holds a complete copy of the database will discover during a controller swap that it does not.
Firmware Updates and Controller Replacement
A firmware update is not a routine action. Updates can:
- Reset parameters to factory defaults.
- Reinterpret an existing value under a changed definition.
- Add parameters that default to something the intersection does not want.
- Invalidate the previous backup format.
The procedure: pull and verify a backup, record the pre-update firmware version, update, reload the database, then verify every safety-relevant value by reading it back from the controller — yellow and red clearance on every phase, pedestrian timing on every crossing, pre-emption assignments and durations, and the monitor interface configuration.
Replacing a Controller
- Pull and verify a database backup from the failing unit if it is still communicating. If it is not, you will be rebuilding from the office archive and the cabinet timing sheet — which is exactly why the cabinet copy must be current.
- Confirm the replacement is the correct type for the cabinet: TS 2 Type 1 (Port 1 SDLC only) versus TS 2 Type 2 (A, B, C connectors plus Port 1), or the correct 170/2070/ATC configuration.
- Load the database and confirm the firmware version is compatible.
- Verify communication: Port 1 to the monitor and BIUs, and the interconnect or Ethernet link to central.
- Observe several complete cycles including a pedestrian call on every crossing and, where safe to test, a pre-emption entry and exit.
- Update the cabinet timing sheet and the work order with the removed and installed serial numbers, firmware versions, and database file names.
Before changing a coordination split, what is the correct source for the backup database?
A coordination pattern is programmed with a phase 4 split of 18 seconds. Phase 4 carries a pedestrian crossing requiring 7 seconds of walk, 14 seconds of pedestrian clearance, 4 seconds of yellow, and 2 seconds of red clearance. What will happen?
Which statement correctly describes what NTCIP 1202 provides?
A cabinet has a railroad pre-emption interconnect and an emergency vehicle pre-emption receiver. How should the pre-empt inputs be assigned?