Project Overview
A full-stack web application for remotely managing Dynamic Message Signs (DMS) deployed across transportation infrastructure. The system communicates with field devices via SNMP using the NTCIP standard, supporting multiple sign manufacturers and controller types through a unified management interface.
System Architecture
A three-tier architecture with a React-based frontend, Python/Node backend services, and PostgreSQL persistence layer. The SNMP engine handles bidirectional communication with field devices through vendor-specific OID profiles.
Sign Management UI"] end subgraph API["API Layer"] REST["REST API
Device CRUD & Commands"] POSTGREST["PostgREST
Database API"] end subgraph ENGINE["SNMP Engine"] PROFILES["Vendor OID
Profiles"] SNMP["SNMP Manager
GET / SET / WALK"] NTCIP["NTCIP 1203
Compliance"] end subgraph STORAGE["Data Layer"] DB[("PostgreSQL
Device Registry
Message Library")] end subgraph FIELD["Field Network"] DMS1["DMS Controller
Vendor A"] DMS2["DMS Controller
Vendor B"] DMSN["DMS Controller
Vendor N"] end UI --> REST UI --> POSTGREST REST --> SNMP SNMP --> PROFILES SNMP --> NTCIP REST --> DB POSTGREST --> DB SNMP -->|"SNMP v1/v2c"| DMS1 SNMP -->|"SNMP v1/v2c"| DMS2 SNMP -->|"SNMP v1/v2c"| DMSN
System Capabilities
Device Discovery & Inventory
Automatic detection and registration of DMS controllers on the network with capability interrogation via SNMP WALK.
Message Composition
Web-based interface for composing, previewing, and activating multi-line messages on remote signs with MULTI tag support.
Vendor Abstraction
OID profile system that maps manufacturer-specific MIB extensions to a unified API, supporting multiple controller hardware platforms.
Status Monitoring
Real-time device health monitoring including sign temperature, power status, pixel failures, and communication diagnostics.
Technology Stack
Frontend
Backend
Database
Protocols & Standards
Infrastructure
SNMP & NTCIP Integration
Builder"] PROF["OID Profile
Resolver"] end subgraph PROTO["Protocol Layer"] PDU["SNMP PDU
Constructor"] BER["BER
Encoder"] UDP["UDP
Transport"] end subgraph DEVICE["Field Device"] AGENT["SNMP
Agent"] CTRL["Sign
Controller"] end CMD --> PROF PROF --> PDU PDU --> BER BER --> UDP UDP -->|"Port 161"| AGENT AGENT --> CTRL
NTCIP Capabilities Implemented
- Message composition with MULTI tag formatting (fonts, colors, positioning)
- Message activation and deactivation on remote signs
- Sign status interrogation (temperature, power, pixel health)
- Controller firmware and capability discovery
- Vendor-specific MIB extension handling
- SNMP community-based authentication management
Skills Demonstrated
Industrial Protocol Integration
Direct implementation of SNMP communication with field hardware, including PDU construction, BER encoding, and MIB interpretation.
Multi-Vendor Abstraction
OID profile architecture that normalizes vendor-specific implementations behind a unified API, enabling seamless support for new hardware.
Full-Stack Development
End-to-end implementation from React frontend through REST API to SNMP protocol layer, with PostgreSQL persistence.
Transportation Standards
Working knowledge of NTCIP 1201/1203 standards for traffic management device communication and interoperability.
Network Diagnostics
Built-in troubleshooting tools for SNMP connectivity, OID resolution, and device capability verification.
Containerized Deployment
Docker-based deployment with CI/CD pipeline, environment configuration, and AWS infrastructure integration.
Engineering Scope
The project required addressing challenges across multiple engineering domains:
- Binary protocol encoding/decoding (ASN.1 BER format for SNMP PDUs)
- Vendor hardware reverse-engineering for undocumented MIB extensions
- Network topology traversal for devices behind field routers
- Message rendering preview matching physical sign pixel layout
- Concurrent device polling without overwhelming field network bandwidth
- Graceful degradation when devices are offline or unresponsive
- Database-driven device registry with capability metadata
Project Outcomes
Successfully deployed for managing DMS infrastructure across field locations, with support for multiple sign manufacturers and controller types.