NTN wireless channel emulator: Web console for the dashboard, satellite list, parameters, logs, and simulation control.
1. How to use this guide
Audience: operators and people who maintain the configuration. This guide covers the dashboard, satellite management, parameters, logs, and the simulation start control.
URL: http://127.0.0.1:4678/open5g/ntn_monitor/
Sign-in: opening the URL goes straight to the main screen. There is no login.
Recommended client: a desktop browser on the same LAN as the server. A recent Chrome build is preferred.
Safety
- The page has no account check. Before you change a configuration, update a TLE, or start a simulation, confirm you are allowed to operate the lab.
- Because the page is open, limit it with a trusted LAN, a firewall, and port control. Do not expose it to an untrusted network.
- Download or copy a configuration before you edit it, so you can restore it.
- Before startup, check frequency, sample rate, gain, SDR address, clock, and sync source. A wrong value can affect the hardware.
2. Network interface
After every boot, confirm that 172.16.1.1 exists and that the interface is UP.
The orbit simulator uses this address to send UDP multicast, mainly ephemeris. If you do not need multicast, a dummy interface with that address is enough:
ip a show veth0
sudo ip link add veth0 type dummy
sudo ip addr add 172.16.1.1/24 dev veth0
sudo ip link set veth0 up
ip a show veth03. Topology
The NTN orbit simulator supports up to a 2T2R gNB. The diagram below uses one antenna. The devices synchronize time over the network, so the simulator must be on that network.
| Antenna | Cabling |
|---|---|
| First | gNB TX1 to emulator RX1, emulator TX1 to UE RX1. UE TX1 to emulator RX3, emulator TX3 to gNB TX1. |
| Second | gNB TX2 to emulator RX2, emulator TX2 to UE RX2. UE TX2 to emulator RX4, emulator TX4 to gNB TX2. |
4. Access and layout
Open the console
- Make sure the operator machine can reach the simulator host, or open the page on the host itself.
- Enter the URL. There is no login. The main screen opens directly.
- After the page loads, confirm the left navigation, the top status bar, and the workspace are visible.
If the page opens but the data areas are empty, the simulation may not be running.
Regions
- Left navigation: dashboard, satellites, parameters.
- Top bar: runtime, logs, start/stop channel emulator.
- Status cards: satellites, ground stations, TRX channels, system status.
- Satellite currently tracked, and its orbit parameters.
- 3D earth, orbit, and camera controls.
- Live ground station, link delay, and Doppler.
- UE/gNB geometry, positions, and the satellite track.
5. Dashboard
The dashboard shows satellites, ground stations, TRX channels, link metrics, system status, and tracks. While a simulation is running, TRX counters stay at 0. They are filled in after the simulation stops.
Status
| Region | Use |
|---|---|
| Satellites | Total, online, offline, and faulted satellites |
| Ground stations | Total, online, offline, and faulted stations |
| TRX channels | Channel count, plus downlink/uplink TX timeout and RX overflow. Counted after the emulator stops |
| System status | Normal or faulted, with a trend chart |
Read the system status first, then the fault counts and the trend. Numbers in a screenshot are only the values at that moment. They are not fixed thresholds.
Tracked satellite
- Identity: satellite id, count, coordinates, and speed.
- Geometry: inclination, perigee altitude, apogee altitude.
- Time: UTC and local time.
- Orbit: subsatellite latitude and longitude, eccentricity, right ascension of the ascending node, argument of perigee, and mean anomaly.
- Motion: runtime, orbital period, instantaneous speed, propagation time offset, and semi-major axis.
Earth and camera
- Use 2D/3D to switch the view.
- Use + and - to zoom. For a precise look, zoom one step at a time and keep the target centered.
- The other icons on the right control the camera, animation, or scene. Use the tooltip on each icon.
- The combined view at the lower left of the earth shows the satellite, ground station, and UE together.
Live station and link charts
The station panel shows the name, altitude, count, coordinates, elevation, azimuth, and slant range. The charts below show UE-gNB and gNB-UE delay, and UE-SAT and SAT-UE Doppler.
Geometry and track
- The left dial shows the direction from the UE to the satellite, plus range, azimuth, elevation, and the UE position.
- The center dial shows the direction from the gNB to the satellite, plus range, azimuth, elevation, and the gNB position.
- The map on the right shows the past track, the future track, and the number of ground stations and UEs.
If the data is empty, check that map assets loaded, the TLE is valid, the system clock is correct, and the simulation has started producing positions.
6. Satellites
This page lists the TLE files the system found and the two-line element sets, grouped by source. It shows simulated and imported satellite names, TLE line 1, and TLE line 2.
After startup the emulator creates one satellite, SAT-TEST-99999, and its ephemeris. The upper half of the page is that simulated ephemeris. You can give it to the gNB.
The lower half always includes the real satellite ISS (ZARYA). Use Update to refresh it. If you click Update with an empty form, the system downloads the latest set from the public source.
Check a TLE
- Confirm the page shows the TLE file path.
- Confirm the satellite name, for example ISS (ZARYA).
- Confirm TLE line 1 and line 2 are both present and complete.
7. Parameters
The parameter page has a form and a raw text editor. Use the form for single fields. Use the text pane to read the full file, copy it, download it, or upload a replacement.
- File picker: choose the file to view or edit.
- Save state: Saved. After a change it shows Update configuration. Click it to save.
- Form: structured fields.
- Raw text: the original file with line numbers.
- File tools: copy, download, and upload-replace.
Recommended edit
- Choose the file.
- Copy or download it before you change anything.
- Prefer the form for ordinary fields. For a large edit, download the file, edit it, then upload it.
- Check that both sides still match, and watch the save state.
- Wait until the page says Saved, then start the simulation.
Channel model
| Field | Meaning |
|---|---|
| max_chan | Maximum channel count. Fixed. Do not change it. |
| modellist | Name of the model list in use. Fixed. Do not change it. |
| model_name | Model name. The example includes downlink and uplink models. |
| type | Model type. The screenshot shows SAT_GEO_TRANS. MEO, LEO, and TDL are also available. |
| noise_power_dB | Noise power in dB. |
| ploss_dB | Path loss in dB. |
Raw text
The text pane shows the full structure and line numbers. Keep brackets, semicolons, quotes, and lists valid. A format error can stop the file from loading. Change one group of parameters at a time, then check the log after saving.
RF and device
| Field | Meaning |
|---|---|
| bind | Channel model name. It must match model_name. |
| sdr_addr | SDR address. Fixed at pcie:0.0 and pcie:0.1. |
| rf_freq | RF center frequency in Hz. |
| sample_rate | Sample rate. 30720000 is 20 MHz. 122880000 is 100 MHz. |
| rx_gain / tx_gain | Receive and transmit gain. rx_gain max is 60. tx_gain max is 90. |
| nb_tx / nb_rx | Transmit and receive channel count. Maximum 2. |
| sync | Sync source. The screenshot uses internal. |
| clock | Clock source. The screenshot uses internal. |
Position and logs
| Field | Meaning |
|---|---|
| position0 | gNB latitude, longitude, and altitude. Match the gNB configuration. |
| position1 | UE latitude, longitude, and altitude. Match the UE configuration. |
| latitude | Latitude. |
| longitude | Longitude. |
| altitude | Altitude. |
| global_log_level | Global log level. |
| hw_log_level | Hardware log level. |
| phy_log_level | Physical-layer log level. |
Check the sign of latitude and longitude, and the altitude reference. A bad coordinate changes range, azimuth, elevation, the track, and the link calculation.
8. Start the simulation and read logs
Before you start
- The page opens and the status area shows no clear fault.
- The TLE file exists, and the name plus both lines are complete.
- The configuration file is selected and the page says Saved.
- The channel model name matches RF bind.
- SDR address, frequency, sample rate, gain, channel count, sync, and clock have been checked.
- gNB and UE coordinates match the gNB and UE configuration.
- You kept a backup of the original file.
Start
- Finish the checks above.
- Click Start channel emulator in the upper right. The start dialog opens.
- Choose the working directory. The directory used in this test was
channel_simulator-linux-2026-06-30. - Open Configuration and choose the file, for example
test-leo.conf. - Click Start. The button briefly says Starting, and the log panel opens.
- Wait until the top button becomes Stop channel emulator, and confirm that satellites, stations, delay, Doppler, and the track start updating.
The list in this test contained test-geo.conf, test-leo.conf, test-meo.conf, and test-ntn_tdla100_tle.conf. The real list is whatever is in the server directory.
The simulation is running when the dialog closes, the top button is the red Stop channel emulator, and the runtime counter restarts. Do not click Start repeatedly.
Confirm it is running
- Runtime keeps increasing and system status is Normal.
- Satellite and ground-station totals are greater than 0, and the online counts match what you expect.
- The tracked satellite, coordinates, speed, and orbit parameters keep updating.
- Delay, Doppler, and the track show real data.
- The simulated satellite writes
SAT-TEST-99999.tle. You can give that file to the gNB.
Logs
The log panel opens automatically at startup. While the simulation runs, click Logs in the upper right to open it again. It sits in the lower half of the page. Click × to close it.
When you troubleshoot, record the time, the configuration file, the satellite or TLE, the device initialization result, and the error text. The log can show orbit position, uplink and downlink delay, Doppler, and UE and gNB elevation.
Stop
- Confirm the running task may be stopped. Save any screenshots and log excerpts you need.
- Click the red Stop channel emulator button.
- Wait until the button returns to Start channel emulator.
- Confirm satellite, station, and TRX counters return to zero, the charts stop, and the track area waits for data.
In this test, Stop channel emulator halted the process immediately, with no second confirmation. Make sure the task can be interrupted before you click it.
9. Recommended sequence
- Open the console and wait until the page has loaded.
- On the dashboard, check system status and the data connection.
- Open Satellites and review the generated TLE or an imported TLE.
- Open Parameters, choose the file, and back it up.
- Check the channel model, RF, coordinates, and log settings.
- After the page says Saved, choose the directory and file in the start dialog and start.
- Return to the dashboard and watch satellites, stations, channels, delay, Doppler, and the track.
- If something fails, open the log, save the evidence, and follow the lab procedure.
- When the task is done, save what you need, click Stop channel emulator, and confirm the page is idle.
10. Common problems
| Symptom | What to check |
|---|---|
| Page does not open | LAN, IP and port, firewall, and the Web process. |
| Page opens but every value is 0 or -- | Whether the simulation is running, whether the WebSocket is connected, and whether the backend is producing data. |
| No track or map | TLE, system clock, position data, and map assets. |
| System status is faulted | After stopping, read the TRX timeout and overflow counters, then use the log to find the device or link error. |
| SDR does not work | Device address, frequency, sample rate, gain, channel count, sync, and clock. |
| Data remains after stop | Wait for a refresh. If the button still says Stop, read the log and follow the local process. |
When you report a problem, include the browser time, runtime, configuration file name, an error screenshot, and a log excerpt.
Appendix A. Parameter index
| Group | Fields | Use |
|---|---|---|
| channelmod | max_chan, modellist | Channel count and model list |
| model | model_name, type | Model identity and type |
| model | noise_power_dB, ploss_dB | Noise and path loss |
| rf_info | bind, sdr_addr | Model binding and device address |
| rf_info | rf_freq, sample_rate | Frequency and sample rate |
| rf_info | rx_gain, tx_gain | Receive and transmit gain |
| rf_info | nb_tx, nb_rx | Channel counts |
| rf_info | sync, clock | Sync source and clock source |
| position0 | latitude, longitude, altitude | gNB position |
| position1 | latitude, longitude, altitude | UE position |
| log_config | global/hw/phy_log_level | Log levels |
