Skip to content

Add Vodafone Station (ARRIS TG3442DE) cable modem provider #1087

Description

@njoerd114

Summary

  • New VodafoneStationProvider for the ARRIS TG3442DE ("Vodafone Station", Vodafone DE) cable gateway (provider key: vodafone-station)
  • Ports the TG path of the MIT-licensed DOCSight driver (itsDNNS/docsight, app/drivers/vodafone_station.py), which is battle-tested against firmware 01.05.063.13.EURO.PC20 (DOCSight issue Fix L2 path analysis for daisy-chain switch topologies #40); my device runs 01.05.063.15.EURO.PC20
  • Authenticates via AES-CCM encrypted login: PBKDF2-HMAC-SHA256 (1000 iterations, 16-byte key) derived from the login page's mySalt/myIv JS vars, POST to /php/ajaxSet_Password.php, CSRF nonce decrypted from the response (AAD "nonce")
  • Polls DOCSIS data from /php/status_docsis_data.php (HTML-embedded json_dsData / json_usData JS arrays)
  • Handles TG quirks: power format "-1.2 dBmV/1158.8 dBuV", OFDM/OFDMA frequency ranges ("start~end" Hz, band center), SNR as "41.8 dB", credential cookie extracted from base_95x.js
  • Stale-session recovery: on HTTP 400/401/403, invalidates the session, re-authenticates, and retries once (the modem allows a single active admin session)
  • Session state is per-configured-CM, so multiple TG3442DEs can be monitored without cross-talk
  • Plugs into the existing ICableModemProvider strategy — no changes needed to the poll loop, InfluxDB writer, alert evaluator, or UI

Test plan

  • Add a Vodafone Station (TG3442DE) in Settings with the new provider
  • Test Connection button succeeds and reports channel counts
  • Polling populates DS/US channel charts (power, SNR, FEC) in the CM panel
  • Incorrect credentials produce a clear error (login Fail/Lockout), not a crash
  • Provider dropdown shows the correct label

Environment: personal homelab deployment. Happy to provide UniFi device model / controller version if useful.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions