Controlling SANLight Grow room LED lights with HomeAssistant

Hey, I read your post and would like to share my experience.
My use case is a bit different since I only had the magnet dimmer, as well as a Q-Gen2, but the dimming works exactly the same.

That meant that I was not searching for bluetooth connectivity.

I use ESPHome for custom sensors/controllers since it easily works together with home assistant via wifi.
I already had a esp8266 and found a board for controlling 0-10V:
https://wiki.dfrobot.com/SKU_DFR0971_2_Channel_I2C_0_10V_DAC_Module

It uses the 8266 onboard 3.3V and does not need any amplifier/external power, so it was perfect for me (I don’t have any experience in hardware/electricity etc).
I got mine from a polish shop (Schwerkraft - 2-Kanal-DAC 0-10 V I2C-Modul - DFRobot DFR0971 Botland - Robotikgeschäft).

Then I bought a electric cable and the wieland plug from amazon (rst20i3s, I compared the picture with my sanlight magnet dimmer). Again, this was for my Q-Gen2 series, so I am not 100% sure which plug type the evo series uses - it should be rst20i3f.

The wiring layout is the same, I asked the sanlight support just to be sure.


(picture is from evo series)

The tricky part is not getting confused with the wiring and setting up the esp device correctly.
Remember the picture shows the lamp, so if you look at the plug dim- is on the left.
You will have to:

  • connect esp with the board (cables included), I2C bus
  • connect Vout with sanlight dim+
  • connect GND with sanlight dim-
  • configure esp

Here’s my config:

esphome:
  name: dimmer
  friendly_name: dimmer

esp32:
  board: nodemcu-32s

###
# (default settings omitted)
###

i2c:
  sda: GPIO21
  scl: GPIO22
  scan: true
  id: bus_a

gp8403:
  id: my_gp8403
  voltage: 10V
  address: 0x5f #I had to set this for my device, since the default address was different

output:
  - platform: gp8403
    id: my_gp8403_output_1
    gp8403_id: my_gp8403
    channel: 0
# this is for 2nd channel, but I only use the board for the sanlight
#  - platform: gp8403
#    id: my_gp8403_output_2
#    gp8403_id: my_gp8403
#    channel: 1

# I use light entity, so I can control % in home assistant    
light:
  - platform: monochromatic
    output: my_gp8403_output_1
    name: "Sanlight"
    gamma_correct: 1

It was a lot of work, but also interesting.
Money wise, it is a lot cheaper than the official options. (and I dont even mean the 600€ Growcontrol)

  • 5€ power cable (5m)
  • 6€ Wieland plug
  • 12€ 0-10V DAC
  • 4€ esp 8266

So around 27€, lets say 35-40€ if you have to pay for shipping.
The growcontrol cable alone would cost 36€ (1m or 42€ 3m) which is basically just power cable + plug + rj45 and can not control anything by itself. They should not charge more than 15€ for their cable.

Not sure if the invested time is worth it, but I am pretty happy with the result.
Hope this helps someone.

8 Likes