[Custom Component] Superloop NBN Usage

:man_surfing: Superloop Home Assistant Integration - GitHub - thatwebagency/ha-superloop: A HACS integration to view Superloop account usage.

A sleek Home Assistant integration to monitor your Superloop broadband usage, plan, and billing status. Now with Usage Alerts and beautiful Mini Graph Cards support!


:star2: Features

This integration provides real-time Superloop account sensors for:

  • :chart_with_upwards_trend: Data Usage (Free Download / Upload)
  • :rocket: Download Speed (Evening Plan Speed)
  • ๐Ÿ—•๏ธ Billing Cycle Progress
  • :page_with_curl: Plan Name
  • :package: Plan Allowance (e.g., โ€œUnlimited Dataโ€ or โ€œ500 GBโ€)
  • :spiral_calendar: Billing Cycle Dates
  • :zap: Automatic Refreshing and Silent Re-Authentication

:rocket: Installation

HACS Installation (Recommended)

  1. Open HACS in Home Assistant
  2. Navigate to Integrations
  3. Click the three dots (โ€ฆ) โ†’ Custom Repositories
  4. Add this GitHub repo URL as a โ€œIntegrationโ€ type
  5. Click Add
  6. Search for Superloop under Integrations
  7. Click Install
  8. Restart Home Assistant

Manual Installation

  1. Copy the custom_components/superloop folder into your Home Assistant custom_components/ directory.
  2. Restart Home Assistant.

:gear: Configuration

  1. Go to Settings โ†’ Devices & Services
  2. Click + Add Integration
  3. Search for Superloop
  4. Enter your Superloop email and password to link your account.

Done! Your sensors will now appear automatically.


:chart_with_upwards_trend: Dashboard Setup

We recommend installing the mini-graph-card from HACS to beautifully display your Superloop data.

Example dashboard card:

type: custom:mini-graph-card
name: Download Usage
icon: mdi:download
entities:
  - entity: sensor.superloop_free_download_usage
show:
  name: true
  icon: true
  state: true
  graph: line
  labels: false
line_width: 5
font_size: 80
smoothing: true
height: 150
style: |
  ha-card {
    background: rgba(20, 20, 20, 0.9);
    border-radius: 16px;
  }
type: custom:mini-graph-card
name: Upload Usage
icon: mdi:upload
entities:
  - entity: sensor.superloop_free_upload_usage
show:
  name: true
  icon: true
  state: true
  graph: line
  labels: false
line_width: 5
font_size: 80
smoothing: true
height: 150
style: |
  ha-card {
    background: rgba(20, 20, 20, 0.9);
    border-radius: 16px;
  }

:large_blue_circle: This will show your last 30 days of free download and upload usage visually!


:loudspeaker: Usage Alerts via Blueprint (New!)

Want to be notified when your usage hits 90% of your Plan Allowance?

We built a ready-to-go automation for you! :dart:

  • Monitors your Data Usage vs your Plan Allowance.
  • Automatically skips alerts for Unlimited plans.
  • Sends a persistent notification if you cross 90%!

:dart: No YAML editing needed โ€” just pick your usage sensor and plan allowance sensor when setting it up!

:point_right: Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.


:date: Daily Usage Tracking (Optional)

Track your daily Superloop download and upload usage automatically!

Step 1: Create Helpers

Create 4 Input Number helpers:

Manually via UI

  • Superloop Free Download Yesterday
  • Superloop Non-Free Download Yesterday
  • Superloop Free Upload Yesterday
  • Superloop Non-Free Upload Yesterday

Settings: Minimum: 0, Maximum: 100000, Unit: GB, Step: 0.1

Or use the YAML below:

template:
  - sensor:
      - name: "Superloop Daily Free Download Usage"
        unit_of_measurement: "GB"
        state: >
          {{ (states('sensor.superloop_free_download_usage') | float(0) - states('input_number.superloop_free_download_yesterday') | float(0)) | round(2) }}
      - name: "Superloop Daily Non-Free Download Usage"
        unit_of_measurement: "GB"
        state: >
          {{ (states('sensor.superloop_nonfree_download_usage') | float(0) - states('input_number.superloop_nonfree_download_yesterday') | float(0)) | round(2) }}
      - name: "Superloop Daily Free Upload Usage"
        unit_of_measurement: "GB"
        state: >
          {{ (states('sensor.superloop_free_upload_usage') | float(0) - states('input_number.superloop_free_upload_yesterday') | float(0)) | round(2) }}
      - name: "Superloop Daily Non-Free Upload Usage"
        unit_of_measurement: "GB"
        state: >
          {{ (states('sensor.superloop_nonfree_upload_usage') | float(0) - states('input_number.superloop_nonfree_upload_yesterday') | float(0)) | round(2) }}

Step 2: Save Yesterdayโ€™s Usage (Automation)

:point_right: Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

Step 3: Create Daily Usage Sensors (blueprint)

:point_right: Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

Step 4: Add to your Dashboard

type: custom:mini-graph-card
name: Superloop Daily Usage
hours_to_show: 720
points_per_hour: 1
entities:
  - entity: sensor.superloop_daily_free_download_usage
  - entity: sensor.superloop_daily_nonfree_download_usage
  - entity: sensor.superloop_daily_free_upload_usage
  - entity: sensor.superloop_daily_nonfree_upload_usage

:dart: Done! You now have beautiful per-day tracking graphs!


:hammer_and_wrench: Troubleshooting

  • Check Home Assistant Logs if sensors are missing.
  • Verify your Superloop credentials are correct.
  • If the billing cycle does not reset properly, verify API access.
  • Open an issue on GitHub if stuck.

:heart: Support

If you find this integration useful, please :star: star the repository! Need help? Open a GitHub Issue.


:man_surfing: Surf your data usage. Stay in control. Built with love for the Home Assistant community. :house_with_garden: