I’m looking at a new variable speed pump/filter. Circupool/Calimar/Black and Decker all seem based on the same pump (people looked up the Energy Star info).
The “automation adapter” is just a few relay lines for presets and nothing else.
The pump controller can show speed, power etc and have schedules programmed.
I haven’t seen anything on how to access anything more advanced, maybe through serial or modbus. Maybe someone has looked inside the controller already.
I’m also looking for a way to integrate Circupool Salt Water Generator (Chlorinator) to HA. I have one installed, I remember I red somewhere there should be an RS485, but couldn’t find any indications in the user manual. I may disconnect it and open it up if anybody willing to help…
Any updates on your integration, I just ordered the adapter and plan on using ESPHome to control the relays.
Update: I have mine up and running using an ESP32-S3, I also wired in a temp sensor and a digital presure sensor for my filter. No relays required, the esp32 just needs to act like a momentary switch.
i2c:
- scl: GPIO6
sda: GPIO5
# Sensor declarations
sensor:
# Water pressure sensor on A0 pin calibrated for PSI
- platform: adc
pin: GPIO1
name: "Water Pressure"
unit_of_measurement: "PSI"
update_interval: 60s
accuracy_decimals: 2
filters:
- calibrate_linear:
- 0.0 -> 0 # Assuming 0V corresponds to 0 PSI
- 0.81211 -> 18 # 0.81211 corresponds to 18 PSI
- multiply: 3.53 # Adjust the multiplier to correct the output
# WiFi Signal Strength sensor
- platform: wifi_signal
name: "WiFi Signal Strength"
id: wifi_strength # Changed ID to avoid conflict
update_interval: 60s
- platform: aht10
variant: AHT20
temperature:
name: "Temperature"
id: aht20_temperature
humidity:
name: "Humidity"
id: aht20_humidity
update_interval: 60s
# Enable the web server to display the sensor readings
web_server:
port: 80
# Display the ESP32 state on the web interface
text_sensor:
- platform: template
name: "ESP32-C6 State"
lambda: |-
if (id(wifi_strength).state < -70) {
return {"Poor Signal"};
} else if (id(wifi_strength).state < -60) {
return {"Fair Signal"};
} else {
return {"Good Signal"};
}
# Pool Pump Control Push Button Version - Using three momentary relays corresponding to IN1, IN2, and IN3.
switch:
- platform: gpio
name: "3000 RPM"
pin: GPIO9 # Replace with the actual GPIO pin for IN1.
id: pool_pump_in1
on_turn_on:
- switch.turn_off: pool_pump_in2
- switch.turn_off: pool_pump_in3
- delay: 500ms
- switch.turn_off: pool_pump_in1
- platform: gpio
name: "2500 RPM"
pin: GPIO8 # Replace with the actual GPIO pin for IN2.
id: pool_pump_in2
on_turn_on:
- switch.turn_off: pool_pump_in1
- switch.turn_off: pool_pump_in3
- delay: 500ms
- switch.turn_off: pool_pump_in2
- platform: gpio
name: "1500 RPM"
pin: GPIO7 # Replace with the actual GPIO pin for IN3.
id: pool_pump_in3
on_turn_on:
- switch.turn_off: pool_pump_in1
- switch.turn_off: pool_pump_in2
- delay: 500ms
- switch.turn_off: pool_pump_in3
#Exposes control buttons
button:
- platform: restart
icon: mdi:power-cycle
name: "ESP Reboot"
please would you like to be a little more specific in your implementation like pump type connection between esp32 board and pump
would be really appreciated
best regards