How do I link the Grow Sensor with Home Assistant
If you’d like a broader introduction before tackling these detailed steps, start with our overview page here: Home Assistant grow-room guide.
If not, jump right in here:
Flash Home Assistant OS onto the SD card and put it into the RPI. (This is easily done by using
(This is easily done by using Raspberry Pi Imager available here https://www.raspberrypi.com/software/, choose the Home Assistant image option)
Connect the RPi to the router with a network cable.
Connect in browser at http://homeassistant.local:8123/
First time run takes its time!
Choose to create my Smart Home
You’ll be prompted to create a user
The fresh HA Overview will now look like this
The grow sensor will connect to an MQTT broker that will run on the HA device.
Install the MQTT broker on HA
Go to Settings -> Add-ons -> Add-on Store
Install the Mosquitto Broker Add-on and check it’s configured to start on boot.
Start the broker
Configure the Grow Sensor (get one here) to connect to your HA MQTT broker using the Grow Sensor App.
Set up MQTT integration in Home Assistant
Configure the MQTT broker. Go to Settings -> Devices and Services. The installed MQTT add-on should have been discovered. Add it to your configuration by choosing ADD.
Check that Grow Sensor data is being received by the broker and find your topic:
Settings -> Devices and Services -> MQTT -> Configure (symbol)
Listen to a topic. Enter # as the topic which allows all messages on the mqtt broker to be displayed for you.
Press START LISTENING and wait for data to arrive. It can take up to 3 minutes because the standard sensor refresh time is 3 minutes
IMPORTANT: Extract the topic from this screen as you need it for the Sensor integration step. In this example, the topic is GROW/GROW-00070006
Option 1. Integrating sensors using MQTT discovery - The sensor does not send a discovery message, so we must send it manually to the HA mqtt broker.
Settings -> Devices and Services -> MQTT -> Configure (symbol)
The following example text needs to be modified to have the same topic structure and sensor_id that you see on the broker. I.e. Find/Replace 70006 with your sensor’s ID.
Each message below must be published on its own topic below with retain:
Topic: homeassistant/sensor/7000601/config
Message: {"name": "70006 Temperature", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r1val }}", "unit_of_measurement": "°C", "unique_id": "7000601"}
Topic: homeassistant/sensor/7000602/config
Message: {"name": "70006 Humidity", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r2val }}", "unit_of_measurement": "%", "unique_id": "7000602"}
Topic: homeassistant/sensor/7000603/config
Message: {"name": "70006 Pressure", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r3val }}", "unit_of_measurement": "mBar", "unique_id": "7000603"}
Topic: homeassistant/sensor/7000604/config
Message: {"name": "70006 Dew Point", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r4val }}", "unit_of_measurement": "°C", "unique_id": "7000604"}
Topic: homeassistant/sensor/7000605/config
Message: {"name": "70006 Dew Point Gap", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r5val }}", "unit_of_measurement": "°C", "unique_id": "7000605"}
Topic: homeassistant/sensor/7000606/config
Message: {"name": "70006 CO2", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r6val }}", "unit_of_measurement": "ppm", "unique_id": "7000606"}
Topic: homeassistant/sensor/7000607/config
Message: {"name": "70006 Ambient VPD", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r7val }}", "unit_of_measurement": "kPa", "unique_id": "7000607"}
Topic: homeassistant/sensor/7000608/config
Message: {"name": "70006 Leaf Temp", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r8val }}", "unit_of_measurement": "°C", "unique_id": "7000608"}
Topic: homeassistant/sensor/7000609/config
Message: {"name": "70006 ePPFD", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r9val }}", "unit_of_measurement": "µmol/s/m2", "unique_id": "7000609"}
Topic: homeassistant/sensor/7000610/config
Message: {"name": "70006 RQLI Red", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r10val }}", "unit_of_measurement": "%", "unique_id": "7000610"}
Topic: homeassistant/sensor/7000611/config
Message: {"name": "70006 RQLI Green", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r11val }}", "unit_of_measurement": "%", "unique_id": "7000611"}
Topic: homeassistant/sensor/7000612/config
Message: {"name": "70006 RQLI Blue", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r12val }}", "unit_of_measurement": "%", "unique_id": "7000612"}
Topic: homeassistant/sensor/7000613/config
Message: {"name": "70006 RQLI IR", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r13val }}", "unit_of_measurement": "%", "unique_id": "7000613"}
Topic: homeassistant/sensor/7000614/config
Message: {"name": "70006 eDLI", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r14val }}", "unit_of_measurement": "mol/m2/d", "unique_id": "7000614"}
Topic: homeassistant/sensor/7000615/config
Message: {"name": "70006 Substrate Moisture", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r15val }}", "unit_of_measurement": "%", "unique_id": "7000615"}
Topic: homeassistant/sensor/7000616/config
Message: {"name": "70006 Substrate ECp", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r16val }}", "unit_of_measurement": "mS/cm", "unique_id": "7000616"}
Topic: homeassistant/sensor/7000617/config
Message: {"name": "70006 Substrate Temp", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r17val }}", "unit_of_measurement": "°C", "unique_id": "7000617"}
Topic: homeassistant/sensor/7000618/config
Message: {"name": "70006 Leaf VPD", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r18val }}", "unit_of_measurement": "kPa", "unique_id": "7000618"}
Topic: homeassistant/sensor/7000619/config
Message: {"name": "70006 Ambient Leaf difference", "state_topic": "GROW/GROW-00070006", "value_template": "{{ value_json.r19val }}", "unit_of_measurement": "°C", "unique_id": "7000619"}
Alternatively, they can all be done together by pasting the following into a CLI terminal. (Need to download the Terminal Add-on)
Option 2. Integrating the sensors into HA by editing configuration.yaml
Pros: one step
Cons: slightly less flexibility in the Home Assistant UI
Now that HA is receiving data, we must decode this JSON and assign it to individual entities.
Now that HA is receiving data, we must decode this JSON and assign it to individual entities.
Create a dashboard
Got to : Settings -> Dashboards -> +ADD DASHBOARD -> New dashboard from scratch
Edit dashboard
-> {} Raw configuration editor
Enter this:
Last updated
Was this helpful?