# Devices

The **Devices** page is where you manage device integrations that are already enabled in **Settings → Power-ups**.

Use it to:

* See discovered devices and latest readings
* Enable/disable device groups
* Configure per-device offsets
* Delete stale device entries
* Open batch-level attach/detach flow from fermentation

## Before devices appear in this list

A device is shown after both of these are true:

1. Its integration is enabled in **Settings → Power-ups**
2. The device has sent at least one reading to Brewfather (using the URL/ID shown in that integration’s setup)

If no integrations are active, Devices shows a message telling you to enable one in Settings.

## Supported integrations shown on this page

Depending on what you enabled in Settings, Devices can show:

* Tilt™ Hydrometer
* iSpindel
* Brewbrain Float Hydrometer
* DIY Floaty Hydrometer
* RAPT
* BrewPiLess
* MyBrewbot
* Custom Stream
* Plaato Airlock
* Plaato Keg
* SmartPID
* Grainfather Bluetooth Controller (GFCC) — accessed from the Batch > Brewing tab > Brew Controller section (requires Premium)

## Device list actions

For each discovered device entry, Brewfather can show:

* Device name
* Last update timestamp
* Latest values (for example gravity, temperature, etc.)

Available actions per device:

* **Configure** (gear): set offsets
* **Delete** (trash): remove device entry

### Offset configuration

Offset fields are device-type dependent, and can include:

* Gravity Offset
* Temp Offset
* Fridge Temp Offset
* Room Temp Offset

If your gravity input mode is **SG**, gravity offset uses whole points (for example `-3`, not `-0.003`).

## Batch attachment flow (Fermentation)

Attach/detach is done from a batch, not from the main Devices page.

1. Open a batch in **Fermenting** status
2. In the **Readings** section, click **Devices**
3. Use **Attach** on a device to log to that batch
4. Use **Detach** to stop logging to that batch

In the batch Devices modal you can also:

* Keep only selected series for charting (non-Tilt devices)
* Configure offsets per attached device

Brewfather checks Premium access when you tap **Attach**.

## Log frequency guidance

In batch mode, Brewfather explicitly warns not to log more than once every **15 minutes per device**.

If you just attached a device and still see no readings, wait for the next reporting interval (often 15–60 minutes depending on device setup).

## Webhook forwarding (optional)

In **Settings → Power-ups**, supported device integrations expose **configure webhook**.

Webhook options:

* Enable/disable forwarding
* Target URL
* Format: **Processed** or **Raw**

## SmartPID and Plaato Keg notes

* **SmartPID**: use **Configure** from the Devices page to sign in/manage SmartPID devices.
* **Plaato Keg**: use **Configure** from the Devices page to add/manage keg device keys.

## Troubleshooting checklist

If devices are missing or stale:

1. Confirm the integration is enabled in **Settings → Power-ups**
2. Re-copy URL/ID from the integration setup and verify it in the external device app
3. Send a fresh reading from the device
4. Open Devices again and check if it appears
5. For fermentation logging, confirm the device is **attached** to the current batch

## Troubleshooting

### Readings not appearing in my batch

1. **Attach the device to your batch** — After the device sends its first reading, go to your batch in the Fermenting stage, open Readings > **Devices**, and attach it. Readings are not recorded until the device is attached to a batch.
2. **Check the logging interval** — Brewfather ignores readings sent more often than every 15 minutes. Ensure your device's update interval is 900 seconds or higher.
3. **Verify the integration is enabled** — Go to Settings > Power-ups and confirm the device type is toggled on. Re-copy the Server URL or Logging ID if needed.
4. **Check the batch stage** — Device readings are only recorded when the batch is in the **Fermenting** or **Conditioning** stage. Move the batch to Fermenting if it is still in Brewing or Planning.
5. **Wait for the next interval** — If you just attached a device, wait for the next reporting cycle (typically 15–60 minutes depending on your device settings).

### Gravity reading looks wrong

* **iSpindel showing 1.004 or similar low value**: Your iSpindel formula is outputting SG instead of Plato. Brewfather expects Plato and converts it to SG. Either change your formula to output Plato, or add **\[SG]** to the iSpindel name to tell Brewfather the value is already in SG.
* **Readings seem offset**: Use the calibration offset fields on the device's settings page to apply a correction.
* **Graph starts in 1970**: This is typically caused by the brew date or fermentation start date not being set in the batch. Edit the batch and set or re-set the date to fix the graph.

## Related docs

* [Settings](https://docs.brewfather.app/settings)
* [Tilt Hydrometer](https://docs.brewfather.app/integrations/tilt-hydrometer)
* [iSpindel](https://docs.brewfather.app/integrations/ispindel)
* [Float Hydrometer](https://docs.brewfather.app/integrations/float-hydrometer)
* [Floaty Hydrometer](https://docs.brewfather.app/integrations/floaty-hydrometer)
* [RAPT](https://docs.brewfather.app/integrations/rapt)
* [BrewPiLess](https://docs.brewfather.app/integrations/brewpiless)
* [MyBrewbot](https://docs.brewfather.app/integrations/mybrewbot)
* [Custom Stream](https://docs.brewfather.app/integrations/custom-stream)
* [Plaato Airlock](https://docs.brewfather.app/integrations/plaato/airlock)
* [Plaato Keg](https://docs.brewfather.app/integrations/plaato/keg)
* [SmartPID](https://docs.brewfather.app/integrations/smartpid)
