A custom Home Assistant integration for the PollenPal API that provides real-time UK pollen data and forecasts directly in your Home Assistant dashboard.
- 🌍 Real-time pollen monitoring for any UK location
- 📊 Multiple sensor types for grass, tree, and weed pollen
- 🚨 Alert level monitoring with health advice
- 📍 Flexible location support (cities and postcodes)
- 🔧 Dynamic API URL support for self-hosted instances
- 🏠 Native Home Assistant integration with proper device grouping
The integration creates the following sensors for your configured location:
- Grass Pollen Level - Current grass pollen level (Low/Moderate/High/Very High)
- Grass Pollen Count - Numerical grass pollen count
- Tree Pollen Level - Current tree pollen level
- Tree Pollen Count - Numerical tree pollen count
- Weed Pollen Level - Current weed pollen level
- Weed Pollen Count - Numerical weed pollen count
- Pollen Alert Level - Overall alert level with health advice
Each sensor includes detailed attributes with additional information such as:
- Location coordinates
- Detailed pollen breakdowns by species
- Health advice recommendations
- Current day information
- Download or clone this repository
- Copy the
custom_components/pollenpalfolder to your Home Assistantcustom_componentsdirectory - Restart Home Assistant
- Go to Settings → Devices & Services → Add Integration
- Search for "PollenPal" and click to add it
Note: This integration is not yet available in HACS. Use manual installation for now.
- Add Integration: Go to Settings → Devices & Services → Add Integration
- Search: Look for "PollenPal" in the integration list
- Configure:
- API URL: Enter your PollenPal API URL (default:
http://localhost:3000) - Location: Enter a UK city name or postcode (e.g., "London" or "SW1A 1AA")
- API URL: Enter your PollenPal API URL (default:
- Submit: Click submit to validate and create the integration
| Field | Description | Example |
|---|---|---|
| API URL | URL of your PollenPal API instance | http://localhost:3000 |
| Location | UK city or postcode to monitor | London or M1 1AA |
Create an automation to notify when pollen levels are high:
automation:
- alias: "High Pollen Alert"
trigger:
- platform: state
entity_id: sensor.pollenpal_pollen_alert_level
to: "high"
action:
- service: notify.mobile_app_your_phone
data:
title: "High Pollen Alert!"
message: "Pollen levels are high in {{ state_attr('sensor.pollenpal_grass_pollen_level', 'location') }}. Consider staying indoors."Display pollen information on your dashboard:
type: entities
title: Pollen Levels
entities:
- entity: sensor.pollenpal_grass_pollen_level
name: Grass Pollen
- entity: sensor.pollenpal_tree_pollen_level
name: Tree Pollen
- entity: sensor.pollenpal_weed_pollen_level
name: Weed Pollen
- entity: sensor.pollenpal_pollen_alert_level
name: Alert LevelCreate a template sensor for combined pollen information:
template:
- sensor:
- name: "Pollen Summary"
state: >
{% set grass = states('sensor.pollenpal_grass_pollen_level') %}
{% set trees = states('sensor.pollenpal_tree_pollen_level') %}
{% set weeds = states('sensor.pollenpal_weed_pollen_level') %}
Grass: {{ grass }}, Trees: {{ trees }}, Weeds: {{ weeds }}
attributes:
location: "{{ state_attr('sensor.pollenpal_grass_pollen_level', 'location') }}"
advice: "{{ state_attr('sensor.pollenpal_pollen_alert_level', 'advice') }}"This integration requires a running PollenPal API instance. You can:
- Self-host: Follow the PollenPal API documentation to set up your own instance
- Use existing instance: Point to an existing PollenPal API deployment
The integration uses these PollenPal API endpoints:
/pollen/{location}/current- Current pollen data/pollen/{location}/advice- Health advice (optional)
Integration not appearing
- Ensure the
custom_components/pollenpalfolder is in the correct location - Restart Home Assistant after installation
- Check the Home Assistant logs for any error messages
Cannot connect to API
- Verify the API URL is correct and accessible from Home Assistant
- Check that the PollenPal API is running and responding
- Ensure there are no firewall issues blocking the connection
Location not found
- Verify the location name or postcode is correct
- Try alternative spellings or nearby locations
- Check the PollenPal API directly to confirm location support
Enable debug logging by adding this to your configuration.yaml:
logger:
default: info
logs:
custom_components.pollenpal: debugThe integration updates pollen data every hour (3600 seconds) by default. This frequency is appropriate for pollen data which doesn't change rapidly throughout the day.
- This integration only communicates with your specified PollenPal API instance
- No data is sent to third parties
- Location data is only used to fetch relevant pollen information
- All communication follows Home Assistant's standard security practices
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
For issues and questions:
- Check the troubleshooting section above
- Review Home Assistant logs for error messages
- Open an issue on the repository with detailed information
This project is open source. Please check the license file for details.
Note: This integration requires the PollenPal API to be running and accessible. Make sure to set up the API first before configuring this integration.