Skip to content

Brewfather integration for Home Assistant

Notifications You must be signed in to change notification settings

MvdDonk/brewfather

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

181 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Brewfather Integration for Home Assistant

Automate your fermentation like a pro! ๐Ÿบ

Buy me a beer
Example dashboard

๐ŸŽฏ What is this?

Stop manually adjusting your fermentation chamber temperature! This integration connects your Brewfather recipes to Home Assistant, automatically controlling your fermentation chamber to follow the exact temperature profile from your recipe.

Perfect for homebrewers who:

  • โœ… Use Brewfather for recipe management and batch tracking
  • โœ… Have a smart fermentation chamber (or want to build one)
  • โœ… Want "set and forget" temperature control
  • โœ… Don't want to miss temperature changes at 2 AM
  • โœ… Want all their brewing data in their smart home dashboard

Designed for single batch fermentation - track one batch at a time with full automation support.


โšก Key Features

๐ŸŒก๏ธ Automatic Temperature Control

Set your fermentation chamber temperature based on your current Brewfather batch recipe. The integration reads your fermentation schedule and automatically adjusts your climate device to match.

Complete Dashboard Example | Automation Example

๐Ÿ“… Event Calendar

Never miss a brewing task! View all upcoming events in a calendar:

  • Fermentation temperature changes
  • Dry hopping schedules
  • Bottling day reminders
  • Custom brew events

Brewfather Calendar

๐Ÿ“Š Fermentation Monitoring

Track your batch progress with real-time sensors:

  • Current and upcoming target temperatures
  • Fermentation start/end dates
  • Days remaining until completion
  • Recipe name and batch number

๐Ÿ”„ Custom Stream Integration

Receive data FROM Brewfather INTO Home Assistant:

  • Temperature readings from devices attached to Brewfather (iSpindel, Tilt, etc.)
  • Gravity readings from connected sensors
  • Real-time fermentation data

Perfect for brewers with external devices (iSpindel, Tilt) connected to Brewfather who want to monitor their data in Home Assistant.

๐Ÿ“ Batch Notes & History

Access your brewing notes and track historical data directly in Home Assistant.


๐Ÿš€ Complete Dashboard Example

A ready-to-use dashboard featuring everything you need:

  • ๐ŸŒก๏ธ Temperature Gauges - Current vs Target with visual indicators
  • ๐ŸŽ›๏ธ Thermostat Control - Full climate control for your fermentation chamber
  • ๐Ÿ“Š Progress Tracking - Batch info, start date, fermentation timeline
  • ๐Ÿ“ˆ Historical Graphs - 7-day history of temperature and gravity
  • ๐Ÿ“ Batch Notes - Your brewing notes in formatted view
  • ๐Ÿ“… Calendar View - All events in Home Assistant calendar
  • โฐ Next Events - Quick summary of upcoming tasks
  • โœ… Sync Status - Visual confirmation temperature is correct

Uses only standard Home Assistant cards - no custom cards required!

Simply copy dashboard-complete.yaml and adjust climate.fermentation_chamber to your device.


๐Ÿ“ฑ Available Sensors

All sensors update automatically every 15 minutes:

Sensor Description Entity ID
Integration Status Connection status and health check sensor.brewfather_integration_status
Recipe Name Name of your current fermenting beer sensor.brewfather_recipe_name
Fermentation Start When fermentation started sensor.brewfather_fermentation_start
Target Temperature Current target temp from recipe sensor.brewfather_target_temperature
Upcoming Temperature Next temperature step sensor.brewfather_upcoming_target_temperature
Temperature Change Date When next temp change occurs sensor.brewfather_upcoming_target_temperature_change
Last Reading Latest gravity/temp reading sensor.brewfather_last_reading
Batch Notes Your brewing notes sensor.brewfather_batch_notes
Events Upcoming brew events (count + details) sensor.brewfather_events

๐Ÿ“… Calendar Entity

calendar.brewfather_events - All your brew events in Home Assistant's calendar

Add to dashboard:

type: calendar
entities:
  - calendar.brewfather_events

๐Ÿ”ง Detailed Features

Automatic Temperature Control

The integration continuously monitors your Brewfather batch and provides the target temperature your fermentation chamber should be at. Combine this with the included automation to automatically adjust your climate device.

How it works:

  1. Integration reads your active Brewfather batch
  2. Calculates current target temperature based on fermentation schedule
  3. Updates sensor.brewfather_target_temperature every 15 minutes
  4. Automation compares target to actual and adjusts climate device
  5. Your beer ferments perfectly according to recipe!

Temperature Ramping Support: Enable this option to gradually increase/decrease temperature during ramp periods. For example, ramping from 20ยฐC to 24ยฐC over 2 days will increase 1ยฐC every 12 hours instead of jumping immediately.

Example automation: sync_temperature.yaml

Event Calendar

View all your brewing tasks in Home Assistant's calendar interface. The calendar automatically displays:

  • Fermentation steps - When temperature changes occur
  • Dry hopping - When to add hops
  • Bottling day - When fermentation completes
  • Custom events - Any events from Brewfather

Events are automatically filtered to show only active, future events. Supports both all-day events (Bottling Day) and timed events (Temperature Change at 14:00).

Batch Notes

Access your Brewfather batch notes directly in Home Assistant. Perfect for:

  • Quick reference during brew day
  • Recording observations
  • Tracking deviations from recipe
  • Sharing notes in dashboards

Custom Stream - Receive Data from Brewfather

Have devices (iSpindel, Tilt, temperature probes) connected to Brewfather? Enable Custom Stream to automatically receive their readings in Home Assistant.

How it works:

  1. Your device (iSpindel, Tilt) sends data to Brewfather
  2. Brewfather streams this data to Home Assistant via Custom Stream
  3. Data appears as sensor readings in Home Assistant
  4. Monitor temperature, gravity, and fermentation progress in your dashboard

Setup:

  1. Connect your device (iSpindel, Tilt) to Brewfather
  2. Enable "Custom Stream" in Brewfather app (Settings โ†’ Power-ups)
  3. Copy the logging ID from Brewfather
  4. Enable Custom Stream in this integration's configuration
  5. Enter the logging ID
  6. Data automatically syncs every 15 minutes

Supports temperature and gravity readings.

Experimental: Multiple Batch Support

While designed for single batch operation, experimental multi-batch features are available:

  • Multi-batch mode: Adds other_batches attributes to sensors
  • All batches data sensor: Complete API data for all fermenting batches

Note: These features are experimental and may change in future versions.


โš™๏ธ Configuration Options

Configure via Home Assistant UI (Settings โ†’ Integrations โ†’ Brewfather โ†’ Configure):

Temperature Ramping

Enable gradual temperature increases/decreases during fermentation ramp periods. Useful for precise temperature control during multi-step fermentations.

Custom Stream

Receive temperature/gravity data from Brewfather devices into Home Assistant. Requires:

  • Device (iSpindel, Tilt, etc.) connected to Brewfather
  • Brewfather Custom Stream logging ID
  • Automatic unit conversion and validation

Multiple Batch Support (Experimental)

Track multiple fermenting batches with additional sensor attributes. Not recommended for automation purposes.

All Batches Data Sensor (Experimental)

Creates sensor with complete API data for all batches. Useful for custom dashboards and templates.


๐Ÿ“ฅ Installation

HACS Installation (Recommended)

  1. Make sure HACS is installed
  2. Go to HACS โ†’ Integrations
  3. Search for "Brewfather"
  4. Click "Download"
  5. Restart Home Assistant
  6. Go to Settings โ†’ Integrations โ†’ Add Integration
  7. Search for "Brewfather"
    Or click here: Add Brewfather Integration
    Add Integration

Manual Installation

  1. Copy custom_components/brewfather folder to your Home Assistant's custom_components directory
  2. Restart Home Assistant
  3. Go to Settings โ†’ Integrations โ†’ Add Integration โ†’ Brewfather

๐Ÿง™โ€โ™‚๏ธ Setup Wizard

Step 1: Connection Details

Enter your Brewfather credentials:

  • Connection name: Friendly name for this connection (e.g., "My Brewery")
  • User ID: Your Brewfather User ID (found in Settings โ†’ API)
  • API Key: Generate from Brewfather Settings โ†’ API โ†’ Generate API Key

Required API Scope: batches:read

Setup Screen

Step 2: Choose Features

Select which features to enable:

  • โ˜‘๏ธ Temperature ramping - Gradual temp changes during ramps
  • โ˜‘๏ธ Custom stream - Receive data from Brewfather devices
  • โ˜ Multiple batch support - Experimental multi-batch tracking
  • โ˜ All batches data sensor - Complete API data sensor

Step 3: Custom Stream Setup (if enabled)

Configure Brewfather-to-Home Assistant streaming:

  • Logging ID or Stream URL: From Brewfather Custom Stream settings
  • Integration receives data from devices connected to Brewfather (iSpindel, Tilt, etc.)

The integration validates your configuration and tests the connection.

Success


๐ŸŒ Multi-Language Support

Full translation support for:

  • ๐Ÿ‡บ๐Ÿ‡ธ English (Default)
  • ๐Ÿ‡ซ๐Ÿ‡ท Franรงais (French)
  • ๐Ÿ‡ช๐Ÿ‡ธ Espaรฑol (Spanish)
  • ๐Ÿ‡ณ๐Ÿ‡ฑ Nederlands (Dutch)
  • ๐Ÿ‡ฉ๐Ÿ‡ช Deutsch (German)
  • ๐Ÿ‡ฎ๐Ÿ‡น Italiano (Italian)
  • ๐Ÿ‡ต๐Ÿ‡น Portuguรชs (Portuguese)
  • ๐Ÿ‡ง๐Ÿ‡ท Portuguรชs Brasileiro (Brazilian Portuguese)

The interface automatically uses your Home Assistant language setting.


๐Ÿ“š Creating Brewfather API Key

  1. Open Brewfather app or web interface
  2. Go to Settings โ†’ API
  3. Click Generate API Key
  4. Give it a name (e.g., "Home Assistant")
  5. Select scope: Read Batches (minimum required)
  6. Copy the generated User ID and API Key

Official Brewfather API Documentation


โฌ†๏ธ Upgrading from v1 to v2

Important: Breaking changes! All sensors have been renamed.

What Changed:

  • Sensor entity IDs now use brewfather_ prefix
  • Integration status sensor added
  • Improved error handling and validation
  • Multi-language support

Migration Steps:

  1. Before upgrading: Note which automations/dashboards use Brewfather sensors
  2. Upgrade via HACS
  3. Update entity IDs in your automations and dashboards:
    • Old: sensor.recipe_name โ†’ New: sensor.brewfather_recipe_name
    • Old: sensor.target_temperature โ†’ New: sensor.brewfather_target_temperature
  4. Test your automations

Full v1 to v2 Migration Guide


๐Ÿค Support

Found a bug? Have a feature request?

Enjoying this integration? Buy me a beer! ๐Ÿบ


Happy Brewing! ๐Ÿป

About

Brewfather integration for Home Assistant

Topics

Resources

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •