TR-069 Emulator Documentation

Welcome to the documentation for the TR-069 Emulator — a comprehensive platform for simulating TR-069/CWMP CPE devices.

Project Overview

The TR-069 Emulator is a versatile tool designed to simulate TR-069 CPE devices for testing and development purposes. It provides a graphical web interface and a REST API for automation, allowing you to test ACS implementations.

Key Features

  • TR-069/CWMP Protocol Support — Full TR-069 CPE simulation, incl. the full CWMP RPC set (see Protocol Support)

  • Web Interface — User-friendly browser-based control panel

  • REST API — Full API for automation and integration

  • Multiple Device Simulation — Simulate single or multiple CPE devices simultaneously

  • Parameter Management — Configurable device parameters via XML files

  • Periodic Inform — Configurable periodic inform intervals

  • Connection Request — ACS-initiated sessions over HTTP, XMPP and UDP/STUN

  • Transfer Emulation — Firmware download/upload simulation (HTTP & FTP)

  • Diagnostics — IP Ping, TraceRoute, Download/Upload, UDP Echo, WiFi scan

  • TR-157 — Software Modules (Deployment Units) and Bulk Data Collection

Use Cases

  • Testing ACS implementations

  • Development and debugging of TR-069 applications

  • Load testing with multiple simulated CPE devices

  • Protocol compliance testing

  • Training and demonstration

Two Operating Modes

The emulator opens on a landing page (http://localhost:8555) that offers two modes:

TR-069 Emulator — landing page
Mode When to use URL

Load Test Mode

Spin up many CPE devices at once to stress-test an ACS — groups, concurrency, registration delays and batch actions.

/load

Single Emulator Mode

Work with one device at a time with full control: browse the parameter tree, edit values, trigger TR-069 events and watch live logs.

/single

Contents

Quick Start

The fastest way to get a running emulator (assumes Docker is installed):

docker login hub.friendly-tech.com
docker run -d --name tr069-emulator \
  -p 8555:8555 -p 9999:9999 \
  -e CONNECTION_REQUEST_HOST=<acs-reachable-ip> \
  hub.friendly-tech.com/emulator/tr069:latest

Then open http://localhost:8555, choose a mode, and start your first device:

  1. Configure the ACS connection (protocol, host, port, URL path).

  2. Select a parameter tree XML file for the device data model.

  3. Enter a serial number and click Start to begin emulation.

For full deployment instructions, see Installation & Deployment. New to the UI? See Load Test Mode — Getting Started or Single Mode — Starting a Device.