OpenShrooly uses ESPHome firmware, making it seamlessly compatible with Home Assistant. This integration allows you to monitor and control your mushroom cultivation directly from your smart home dashboard.
Automatic Discovery
If you have the ESPHome add-on installed in Home Assistant, your OpenShrooly device should be automatically discovered:
- Ensure your OpenShrooly device is connected to the same network as Home Assistant
- Open Home Assistant
- Navigate to Settings → Devices & Services
- Look for a notification about a new device discovery
- Click Configure to add the device
The device will appear as “OpenShrooly” or similar, with all sensors and controls automatically configured.
Manual Integration
If automatic discovery doesn’t work:
- Go to Settings → Devices & Services
- Click Add Integration
- Search for ESPHome
- Enter your device’s IP address
- The device will be added with all available entities
Available Entities
Once integrated, OpenShrooly exposes several entities to Home Assistant:
Sensors
- Temperature: Current chamber temperature
- Humidity: Current humidity level
- CO₂ Level: Carbon dioxide concentration (if available)
- Water Level: Reservoir status
- WiFi Signal: Connection strength
- Uptime: Device runtime
Controls
- Air Exchange Fan: Control and schedule fan cycles
- Humidifier: Manage humidity settings
- LED Lights: Control lighting schedule and intensity
- Target Humidity: Adjust humidity setpoint
- Target Temperature: If heating/cooling available
Switches
- Manual Mode: Override automatic controls
- Debug Mode: Enable detailed logging
- OTA Updates: Enable/disable over-the-air updates
Creating Automations
Home Assistant’s automation engine allows sophisticated control:
Example: Temperature-Based Humidity Adjustment
automation:
- alias: "Adjust humidity based on temperature"
trigger:
- platform: numeric_state
entity_id: sensor.openshrooly_temperature
above: 24
action:
- service: number.set_value
target:
entity_id: number.openshrooly_target_humidity
data:
value: 90
Example: Daily Cultivation Report
automation:
- alias: "Daily cultivation report"
trigger:
- platform: time
at: "09:00:00"
action:
- service: notify.mobile_app
data:
title: "Mushroom Status"
message: >
Temperature: {{ states('sensor.openshrooly_temperature') }}°C
Humidity: {{ states('sensor.openshrooly_humidity') }}%
Water Level: {{ states('sensor.openshrooly_water_level') }}
Example: Low Water Alert
automation:
- alias: "Low water notification"
trigger:
- platform: state
entity_id: sensor.openshrooly_water_level
to: "low"
action:
- service: notify.mobile_app
data:
title: "OpenShrooly Alert"
message: "Water reservoir is low. Please refill."
Dashboard Cards
Create a custom dashboard for monitoring:
Basic Status Card
type: entities
title: Mushroom Chamber
entities:
- entity: sensor.openshrooly_temperature
name: Temperature
- entity: sensor.openshrooly_humidity
name: Humidity
- entity: sensor.openshrooly_co2
name: CO₂ Level
- entity: sensor.openshrooly_water_level
name: Water Level
Climate Control Card
type: thermostat
entity: climate.openshrooly
name: Chamber Climate
Historical Graph
type: history-graph
title: Environmental Conditions
entities:
- sensor.openshrooly_temperature
- sensor.openshrooly_humidity
hours_to_show: 48
refresh_interval: 60
Advanced Integration
REST API Access
OpenShrooly also exposes a REST API for direct integration:
# Get current status
curl http://openshrooly.local/api/status
# Set humidity target
curl -X POST http://openshrooly.local/api/humidity -d "target=85"
MQTT Support
If configured, OpenShrooly can publish to MQTT:
mqtt:
broker: your-mqtt-broker
port: 1883
username: mqtt-user
password: mqtt-password
Topics:
openshrooly/sensor/temperature
openshrooly/sensor/humidity
openshrooly/control/fan
openshrooly/control/light
Troubleshooting
Device Not Discovered
- Verify both devices are on the same network
- Check if mDNS is working on your network
- Try manual IP integration
- Restart Home Assistant
Sensors Unavailable
- Check device connectivity
- Verify WiFi signal strength
- Review ESPHome logs
- Ensure device firmware is up to date
Automation Not Working
- Check automation conditions and triggers
- Verify entity IDs are correct
- Review Home Assistant logs
- Test automation manually
Energy Monitoring
Track power consumption:
sensor:
- platform: integration
source: sensor.openshrooly_power
name: "Mushroom Chamber Energy"
unit_prefix: k
round: 2
Remote Access
Access your mushroom chamber remotely:
- Set up Home Assistant Cloud (Nabu Casa)
- Or configure your own reverse proxy
- Use the Home Assistant mobile app
- Monitor and control from anywhere
Best Practices
- Regular Monitoring: Set up daily summary notifications
- Backup Automations: Create failsafe automations for critical parameters
- Data Logging: Use InfluxDB for long-term data storage
- Alert Thresholds: Configure alerts for out-of-range conditions
- Scheduled Maintenance: Automate reminder notifications
Community Examples
The OpenShrooly community has created various integration examples:
- Multi-chamber coordination
- Growth phase automation
- Harvest reminders
- Environmental optimization algorithms
Visit the GitHub repository for more examples and contributions.