Load-test DLMS GPRS client services with modem-free serial bridging
Standalone emulator that accepts multiple concurrent TCP connections and bridges them to a single DLMS serial port, eliminating the need for real GPRS modems during integration testing.
What it is
A lightweight Java stress-test application that simulates a GPRS server accepting incoming TCP client connections and forwarding them over serial to physical DLMS smart meters. Engineers use it to validate platform services under realistic modem concurrency scenarios—multiple clients connecting simultaneously—without procuring or provisioning real GPRS hardware. The tool loads active meter configurations from the platform database at startup and relays DLMS protocol frames bidirectionally between TCP sockets and a single serial port.
Key benefits
Test modem concurrency offline
Simulate multiple concurrent GPRS modem connections over a single serial link, stress-testing client services without physical modems or carrier infrastructure.
Reduce integration test cycle time
Eliminate modem provisioning and multi-port hardware setup; test concurrent meter scenarios in minutes instead of days.
Database-driven configuration
Automatically loads active controllers and meter details from the platform database, keeping test harnesses in sync with deployment configuration.
Production-grade DLMS bridging
Relays full DLMS protocol state and timing over serial to real meters, catching real-world handshake and frame-ordering bugs that log-only simulators miss.
Capabilities
- Accept multiple TCP GPRS client connections on a configurable port (thread-per-connection model)
- Bridge TCP frames to a single serial port (a serial port, 9600 baud, configurable in source)
- Load active DLMS controller configurations and meter serials from the platform database at startup
- Relay bidirectional DLMS protocol frames with minimal latency overhead
- Log per-connection activity via the platform's configurable logging infrastructure (an internal app ID)
- Validate license at startup (requires WizIIOT license.dat)
