Skip to content

Flipmediaco/starlink_power_test

Repository files navigation

Starlink Environment Test Runner

This Python script automates bandwidth simulation and logs telemetry from Starlink and Victron systems. It's tailored for off-grid performance testing, capturing system metrics alongside controlled browsing activity.

🔧 Features

  • ✅ Chrome bandwidth usage via nettop
  • ✅ Starlink telemetry via gRPC (uptime, throughput, power)
  • ✅ Victron SmartShunt data via Modbus TCP
  • ✅ Simulated browsing, downloads, YouTube, and speed tests
  • ✅ Optional screen recording via ffmpeg
  • ✅ Logs to structured CSV including task feedback
  • ✅ Uses .env for test setup, logging interval, etc.

🎞️ Requirements

  • Python 3.9+
  • macOS (uses nettop, avfoundation)
  • Google Chrome + compatible chromedriver
  • Starlink user terminal (Dishy) on local network
  • Victron Cerbo with Modbus TCP enabled

Install Python dependencies

pip install -r requirements.txt

⚙️ Setup

  1. Copy .env.example and update it:
cp .env.example .env
  1. Modify .env to reflect your test configuration:
    • TEST_NAME
    • LOG_INTERVAL_SECONDS
    • Page URLs, download settings, Victron IP, etc.

▶️ Run the Script

Activate your environment and run:

python starlink_test_runner.py

Optional CLI Flags

Flag Description
--log_console Print log output to console
--quiet Suppress screen output

🔪 Output

  • CSV logs stored in test_data/{TEST_NAME}:
    • Includes timestamps, Starlink, Victron, Chrome deltas, and task notes
  • Optional screen recording (.mov) if ffmpeg is enabled

📝 Logging Format (CSV columns)

Timestamp, Starlink State, Starlink Uptime, Starlink Uplink (bps),
Starlink Downlink (bps), Starlink Power (W),
Chrome TX, Chrome RX,
Victron Voltage, Current, DC Power,
Task, Last Error

🚀 Notes

  • ffmpeg must be accessible via path (FFMPEG_PATH)
  • Ensure Modbus TCP is enabled in Victron Cerbo settings
  • Starlink diagnostics require local network access to Dishy

📄 License

MIT

About

Simulate browsing, starlink data and system power usage

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors