Sign inSign up

kevina1724/tmhi-control-center

By kevina1724

Updated about 2 months ago

Image
0

2.3K

kevina1724/tmhi-control-center repository overview

TMHI Control Center

A self-hosted dashboard, monitoring tool, and control center for T-Mobile Home Internet gateways.

TMHI Control Center provides a cleaner way to view gateway status, cellular signal information, connected devices, tower data, Wi-Fi settings, connectivity history, and watchdog activity—all from a local web dashboard.

Unofficial community project: TMHI Control Center is not affiliated with, endorsed by, or supported by T-Mobile.

Features

  • Live gateway and internet status
  • Cellular signal metrics and connection details
  • LTE and 5G band information
  • PCI, TAC/LAC, Cell ID, firmware, uptime, and WAN information
  • Connected LAN and Wi-Fi device list
  • Best-effort device manufacturer identification
  • Wi-Fi SSID and radio controls when supported by the gateway
  • Serving-cell and nearby-tower mapping
  • Optional OpenCellID tower searches
  • Connectivity testing and outage history
  • Automatic gateway watchdog
  • Reboot cooldowns, grace periods, and daily reboot limits
  • Advanced G4AR Unlock / Radio Lab for owner-controlled hardware
  • Persistent local settings and event history

The exact information and controls available depend on your gateway model, firmware version, and the local API exposed by the gateway.

Quick Start

Run the container:

docker run -d \
  --name tmhi-control-center \
  --restart unless-stopped \
  -p 8095:8000 \
  -v tmhi_control_center_data:/data \
  --security-opt no-new-privileges:true \
  --cap-drop ALL \
  kevina1724/tmhi-control-center:latest

Open the dashboard:

http://localhost:8095

From another device on your network, replace localhost with the IP address of the Docker host:

http://192.168.1.100:8095

Docker Compose

Create a file named docker-compose.yml:

services:
  tmhi-control-center:
    image: kevina1724/tmhi-control-center:latest
    container_name: tmhi-control-center
    restart: unless-stopped

    ports:
      - "8095:8000"

    volumes:
      - tmhi_control_center_data:/data

    security_opt:
      - no-new-privileges:true

    cap_drop:
      - ALL

volumes:
  tmhi_control_center_data:

Start the container:

docker compose up -d

View the logs:

docker compose logs -f tmhi-control-center

Stop the container:

docker compose down

Your settings, database, event history, credentials, and firmware backup information remain stored in the Docker volume.

First-Time Setup

  1. Open http://localhost:8095.
  2. Select Settings.
  3. Enter your gateway address and admin login.
  4. Save the gateway admin password.
  5. Select Test to verify that the container can reach the gateway.
  6. Return to Dashboard and select Refresh.
  7. Keep DRY_RUN enabled until gateway communication and reboot controls have been tested.
  8. Optionally add an OpenCellID API key for nearby tower searches.

Most T-Mobile Home Internet gateways use:

Gateway address: 192.168.12.1
Gateway API port: 8080
Username: admin

The Arcadyan TMO-G5AR may expose the TMI API over port 80. TMHI Control Center automatically attempts common same-host API variations when possible.

Persistent Data

The container stores persistent data under:

/data

This includes:

/data/control-center.db
/data/control-center.env
/data/firmware-backups

Do not run the container without a persistent /data volume unless you are comfortable losing saved settings and history when the container is recreated.

Configuration

Most settings can be changed directly from the web dashboard.

The application automatically creates and manages:

/data/control-center.env

Common settings include:

VariableDefaultDescription
GATEWAY_HOST192.168.12.1Gateway LAN address
GATEWAY_PORT8080Gateway API port
GATEWAY_USERNAMEadminGateway API username
GATEWAY_PASSWORDEmptyGateway admin password
WATCHDOG_ENABLEDtrueEnables connectivity monitoring
DRY_RUNtruePrevents automatic reboot actions
CHECK_INTERVAL_SECONDS20Time between connectivity checks
FAILURE_THRESHOLD_SECONDS180Required outage duration before reboot consideration
STARTUP_GRACE_SECONDS60Initial delay before watchdog actions
POST_REBOOT_GRACE_SECONDS480Delay after a gateway reboot
REBOOT_COOLDOWN_SECONDS1800Minimum time between reboot attempts
MAX_REBOOTS_PER_24H3Maximum automatic reboots per day
MAP_RADIUS_KM0.8Nearby-tower search radius
PUBLIC_IP_LOCATION_ENABLEDtrueAllows approximate public-IP map positioning
OPENCELLID_API_KEYEmptyOptional key for tower searches
LOG_LEVELINFOApplication logging level

Environment variables passed directly to the container override values stored in the managed settings file.

Example:

services:
  tmhi-control-center:
    image: kevina1724/tmhi-control-center:latest
    container_name: tmhi-control-center
    restart: unless-stopped

    ports:
      - "8095:8000"

    environment:
      GATEWAY_HOST: "192.168.12.1"
      GATEWAY_PORT: "8080"
      GATEWAY_USERNAME: "admin"
      DRY_RUN: "true"
      WATCHDOG_ENABLED: "true"
      LOG_LEVEL: "INFO"

    volumes:
      - tmhi_control_center_data:/data

volumes:
  tmhi_control_center_data:

For better security, enter the gateway password through the dashboard instead of placing it directly in your Compose file.

Dashboard Pages

Dashboard

Displays internet connectivity, gateway health, signal quality, cellular connection details, firmware information, uptime, and quick actions.

Devices

Displays connected LAN and Wi-Fi clients along with available Wi-Fi configuration and radio controls.

Map

Displays the serving cell, saved gateway location, public-IP estimate, and nearby OpenCellID tower results.

Public-IP location is only an estimate and may point to a carrier or ISP exit location. Save your actual gateway coordinates for more accurate nearby-tower searches.

Diagnostics

Displays connectivity probes, outage events, raw gateway data, and repeated diagnostic sweeps.

Settings

Manages gateway login details, map settings, watchdog behavior, theme preferences, OpenCellID configuration, and advanced modem-lab settings.

Watchdog

The built-in watchdog checks multiple internet endpoints and records connection failures.

Before issuing a reboot, it applies safeguards including:

  • Failure-duration threshold
  • Startup grace period
  • Post-reboot grace period
  • Reboot cooldown
  • Maximum reboots per 24 hours
  • Minimum number of successful connectivity probes
  • DRY_RUN protection

Keep the following setting enabled during initial setup:

DRY_RUN=true

Only disable dry-run mode after confirming that gateway authentication, diagnostics, and reboot controls work correctly with your gateway model.

Diagnostic Commands

Test internet connectivity from inside the container:

docker exec tmhi-control-center \
  python -m tmhi_control_center.cli connectivity

Test gateway communication:

docker exec tmhi-control-center \
  python -m tmhi_control_center.cli gateway-test

Check the container health endpoint:

curl http://localhost:8095/healthz

View recent logs:

docker logs --tail 200 tmhi-control-center

Updating

Pull the newest image:

docker pull kevina1724/tmhi-control-center:latest

When using Docker Compose:

docker compose pull
docker compose up -d

Your settings and history remain in the persistent Docker volume.

G4AR Unlock / Radio Lab

TMHI Control Center includes an advanced lab area intended only for owner-controlled Arcadyan TMO-G4AR gateways, such as secondhand units that are not carrier-leased equipment.

The lab can help organize:

  • Stock firmware backups
  • SHA-256 firmware and backup hashes
  • Trusted local adapter configuration
  • Radio-profile intent
  • LTE-only, 5G SA, LTE anchor/5G NSA, and scan-only experiments
  • Recovery and consent requirements

Important limitations:

  • TMHI Control Center does not provide firmware downloads.
  • It does not directly flash or write firmware.
  • It does not provide cellular transmit-power overrides.
  • Stock firmware may not support tower locking or manual radio controls.
  • Custom firmware and modem commands can permanently damage a gateway.
  • Modifications may void warranties, violate service terms, or create regulatory issues.

Do not continue with firmware experiments unless you have verified both a stock backup and a working recovery method.

Security

  • Keep the dashboard accessible only from a trusted local network.
  • Do not expose port 8095 directly to the public internet.
  • Use a VPN or authenticated reverse proxy for remote access.
  • Protect the Docker host and /data volume.
  • Do not store gateway credentials on systems you do not control.
  • Back up /data before using advanced features.
  • Never use unverified firmware files.

Important Limitations

TMHI Control Center is not a signal booster.

It cannot:

  • Increase cellular transmit power
  • Force your gateway onto a tower unsupported by its firmware
  • Bypass carrier network restrictions
  • Guarantee LTE or 5G band locking
  • Improve service when the underlying signal or tower capacity is poor
  • Unlock controls that are not exposed by the gateway API

Source Code and Support

Source code:

github.com/kevin1724/tmhi-control-center

Report bugs or request features through the GitHub Issues page:

github.com/kevin1724/tmhi-control-center/issues

When reporting a problem, include:

  • Gateway model
  • Gateway firmware version
  • Container logs
  • Docker version
  • Host operating system
  • Steps needed to reproduce the issue

Do not include your gateway password, API keys, public IP address, or other sensitive information.

License

TMHI Control Center is released under the MIT License.

Disclaimer

This software is provided as-is without warranty. Gateway controls, reboot actions, firmware experiments, modem commands, and hardware modifications are performed at your own risk.

T-Mobile and the names of individual gateway manufacturers are trademarks of their respective owners.

Tag summary

Content type

Image

Digest

sha256:388aafba3

Size

53.6 MB

Last updated

about 2 months ago

docker pull kevina1724/tmhi-control-center