MCPcopy Index your code
hub / github.com/bastgau/ha-pi-hole-v6

github.com/bastgau/ha-pi-hole-v6 @v1.18.0b6

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.18.0b6 ↗ · + Follow
165 symbols 586 edges 15 files 163 documented · 99% updated 4d agov1.18.0 · 2026-07-05★ 501

Browse by type

Functions 133 Types & classes 32
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Pi-hole V6 Integration for Home Assistant

Maintenair : bastgau Made with Python Made for Home Assistant GitHub Release HACS validation HASSFEST validation

<img src="https://brands.home-assistant.io/_/pi_hole_v6/logo.png">

Original component : Pi-hole

The Pi-hole integration allows you to retrieve statistics and interact with a Pi-hole system.

Description

Due to major changes in the Pi-hole API, the native integration with Home Assistant was no longer functional for several months in 2025, until August 2025.

The 'Pi-hole V6 Integration' added compatibility with the new API in Home Assistant. This integration aimed to restore compatibility and provide Pi-hole management directly from Home Assistant.

[!NOTE] Today, this integration remains active and not only restores full functionality but also offers additional and complementary features to the native integration. Users can now enjoy enhanced capabilities and a seamless experience when managing Pi-hole through Home Assistant.

Features

  • Monitor Pi-hole status.
  • Enable/Disable Pi-hole via Home Assistant.
  • Retrieve filtering statistics.
  • Compatibility with the Pi-hole V6 API.

The following sensors are currently implemented :

<img src="https://raw.githubusercontent.com/bastgau/ha-pi-hole-v6/main/img/entities-overview.png" width="800">

A complete list with explanations is available on this page.

Translation

The integration is currently translated in few langages :

Installation

Installation via HACS

  1. Add this repository as a custom repository to HACS:

Add Repository

  1. Use HACS to install the integration.
  2. Restart Home Assistant.
  3. Set up the integration using the UI:

Add Integration

Manual Installation

  1. Download the integration files from the GitHub repository.
  2. Place the integration folder in the custom_components directory of Home Assistant.
  3. Restart Home Assistant.
  4. Set up the integration using the UI:

Add Integration

Pi-hole Card

After installing this integration, you can enhance your Home Assistant setup with the Pi-hole Card.

This lovelace card offers a comprehensive and user-friendly dashboard designed specifically for managing and monitoring your Pi-hole DNS ad blocker. It provides real-time statistics and intuitive controls, all presented in a visually appealing interface that aligns with Pi-hole's design aesthetics.

The card is developed by @warmfire540.
The installation instructions are available on the repository: homeassistant-extras / pi-hole-card.

<img src="https://raw.githubusercontent.com/bastgau/ha-pi-hole-v6/main/img/pihole-card.png" width="300">

Debugging

It is possible to show the info and debug logs for the Pi-hole V6 integration, to do this you need to enable logging in the configuration.yaml, example below:

logger:
  default: warning
  logs:
    # Log for Pi-hole V6 integation
    custom_components.pi_hole_v6: debug

Logs do not remove sensitive information so careful what you share, check what you are about to share and blank identifying information.

Frequently Asked Questions

How do I configure the refresh frequency?

By default, the data is updated every 5 minutes. You can configure a different frequency as explained on the following page.

Need more (noobs) information to install/configure the integration?

Some additional information is available if you encounter any problems while adding a new service on this page.

Need to implement Pi-hole Controls in your dashboard?

A quick example to integrate controls in a dashboard is available on this page.

Need to optimize your Home Assistant database?

A useful tip to exclude unnecessary sensors from the Recorder is available on this page.

Advantages of using the integration compared to the Core one?

I listed the implemented features in the HA Pi-hole V6 Integration and the Core Integration.

Compatibility

Compatibility Pi-hole V6 Integration Core Integration
Pi-hole v5 (Latest release: December 29, 2024)
Pi-hole v6 (current version)

Features

Category Entity Type Pi-hole V6 Integration Core Integration
Binary Sensor Status
Button Flush the DNS logs
Flush the network table
Purge FTL diagnosis messages
Refresh data
Restart pihole-FTL
Run gravity
Sensor Active DHCP leases ✅ + ℹ️
Active sessions ✅ + ℹ️
Ads blocked during the last 24 hours
Ads percentage blocked during the last 24h
Average number of DNS queries (queries/min)
Configured clients ✅ + ℹ️
CPU usage ✅ + ℹ️
DNS queries cached
DNS queries during the last 24 hours
DNS queries forwarded
DNS unique clients
DNS unique domains
Domains blocked
FTL diagnosis messages count ✅ + ℹ️
Latest data refresh
Memory usage
Remaining until blocking mode ✅ + 🕜
Seen clients
Switch Global
Group {group_name} ✅ + ℹ️ + 🕜
Update [Core update](https://github.com/bastgau/ha-pi-hole-v6/blob/de

Core symbols most depended-on inside this repo

Shape

Method 90
Function 43
Class 32

Languages

Python100%

Modules by API surface

custom_components/pi_hole_v6/api.py35 symbols
custom_components/pi_hole_v6/switch.py23 symbols
custom_components/pi_hole_v6/exceptions.py23 symbols
custom_components/pi_hole_v6/device_tracker.py19 symbols
custom_components/pi_hole_v6/config_flow.py12 symbols
custom_components/pi_hole_v6/update.py8 symbols
custom_components/pi_hole_v6/__init__.py8 symbols
scripts/update_requirements.py7 symbols
custom_components/pi_hole_v6/sensor.py7 symbols
custom_components/pi_hole_v6/common.py6 symbols
custom_components/pi_hole_v6/button.py6 symbols
custom_components/pi_hole_v6/binary_sensor.py6 symbols

For agents

$ claude mcp add ha-pi-hole-v6 \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page