South Africa’s biggest forum. Discuss, discover, and connect with thousands of members.
I did the same except i used a soniff sv with the s4 04 . I just ran cat 5 from the sensor to the sonoff sv which was installed close to a plug.Hi,
On my jojo tank (on the ground) I've hooked up an ESP32 to a Ultrasonic distance sensor (think it's SR-04) and then flashed the ESP with ESPHome and calculate the (approx) water based on the distance. The SR04 is mounted at the top of the tank, so the greater the distance the less the water level.
I've never actually got around to it (since there is a plug point installed nearby) but you can use a 3.7V lithium battery and a solar charging panel. Since you probably don't need 100% real time data (assuming) you could get a reading ever hour and then put the ESP into sleep mode.
In terms of there being no signal up there, that one I don't really have an answer for that I've fiddled with, perhaps a GSM model with a sim?
Can probably be in all on the above (minus the GSM module stuff) for about R1200
How is distance a problem here? Will the water not reach the tank from the pump or something? As Bwana said, adjust the settings of the float system.Same distance problem and I'd don't want the pump to toggle that quickly. I have some sensors that would tell me if they're submerged which I could bring closer with a smaller tank. Just need to read those signals and act on them to toggle pump on and off. Not sure what to use for that though
captive_portal:
i2c:
sda: GPIO21
scl: GPIO22
scan: true
id: bus_a
ads1115:
address: 0x48
i2c_id: bus_a
continuous_mode: off
sensor:
- name: Jojo Tank Height
id: tank_height
platform: ads1115
multiplexer: 'A0_GND'
update_interval: 60s
gain: 4.096
unit_of_measurement: "metres"
icon: "mdi:gauge"
# accuracy_decimals: 3
filters:
- median:
window_size: 200
send_every: 10
send_first_at: 4
- calibrate_linear:
- 0.480 -> 0
- 1.029 -> 1.543
- platform: template
name: Jojo Tank Volume
id: tank_volume
unit_of_measurement: "litres"
lambda: |-
return 3.14159265 * 0.71 * 0.71 * id(tank_height).state * 1000;
- platform: template
name: Jojo Tank Percentage
id: tank_percentage
unit_of_measurement: "%"
accuracy_decimals: 0
lambda: |-
return (id(tank_height).state) / 1.543 * 100;
- platform: wifi_signal
name: "Jojo Volume WiFi Signal Sensor"
update_interval: 60s
switch:
- platform: restart
name: tankvolume
Yes, but the level goes down slowly. I don't want the pump to toggle for one load of laundry for example. I only want the pump to run to fill the tank from say 10% to 100% and not 10 litres at a time.
Basically I need a gadget to tell me the open or closed state of two circuits. If both are open, start the pump and if both are closed, turn off the pump. That I can do with HA or Google.

The product link is 404I struggled with this for ages. Tried everything. Water ingress eats everything.
This is the business.
Home Assistant : Q&A, Tips & Tricks, Your Configs
Could not find a dedicated Solar Assistant thread.. I guess this can be a helpful place. Below you will see Dashboard display What do you have it set at... Considering the math.. I currently have 21 x 550w panels and 4424 Ah(combined) batteries You may wanna check this out...mybroadband.co.za
Hope the link works.
The product link is 404
I was going down the sensor route but instead opted for this. No issues in the past 2 years I've had if and starts filling tanks from 70ish% then stops at 100% (with a small safety margin). Cheap and works - also using sonoff to trigger borehole pump once it is low.But that's exactly what an automatic float switch does.
The longer the line from the weight, the lower in the tank the float needs to get to before it switches on the pump.
It's just a matter of finding the perfect balance with the weight location and the length of the line to the float.
Mine is short so it fills up the water tank when I've used 25% off the water in the tank. View attachment 1574340
MultievoI posted this back a few months back but here's what I did and to date, it's been epic!
So after many frustrating late nights and wasted money on rubbish sensors, blown components etc I present to you all an accurate Jojo Tank measurement system for HA:
Components used:
2 x DC - DC Voltage Regulator
1 x 12V Power Supply - used an old HDD power supply
1 x 24V Power Supply
1 x ADS1115 16 bit Analog to Digital Converter
1 x ESP32 S Nodemcu
1 x Gravity: Submersible Pressure Sensor
1 x DF Robot Current to Voltage Converter 4-20mA (I blew one when I mixed up the sensor wiring)
Misc: Enclosure, outdoor rated network cable, conduit, wago style connectors (these things are awesome).
YAML:captive_portal: i2c: sda: GPIO21 scl: GPIO22 scan: true id: bus_a ads1115: address: 0x48 i2c_id: bus_a continuous_mode: off sensor: - name: Jojo Tank Height id: tank_height platform: ads1115 multiplexer: 'A0_GND' update_interval: 60s gain: 4.096 unit_of_measurement: "metres" icon: "mdi:gauge" # accuracy_decimals: 3 filters: - median: window_size: 200 send_every: 10 send_first_at: 4 - calibrate_linear: - 0.480 -> 0 - 1.029 -> 1.543 - platform: template name: Jojo Tank Volume id: tank_volume unit_of_measurement: "litres" lambda: |- return 3.14159265 * 0.71 * 0.71 * id(tank_height).state * 1000; - platform: template name: Jojo Tank Percentage id: tank_percentage unit_of_measurement: "%" accuracy_decimals: 0 lambda: |- return (id(tank_height).state) / 1.543 * 100; - platform: wifi_signal name: "Jojo Volume WiFi Signal Sensor" update_interval: 60s switch: - platform: restart name: tankvolume
I had to place a tape measure inside the tank to measure the actual height of the water for the calibration.
(The tank is slightly over filling as the float needs replacing)
![]()
![]()
![]()
![]()
(still need to mount the enclosure and connect the cable from the sensor nicely) Note to self: Don't buy a fiberglass enclosure again!
![]()
![]()
Some side notes:
Total cost: waaay too much money but I'm super chuffed plus the Mrs is finally off my case about spending so much time on this
- The DC - DC converters are critical to ensure that the voltage is stable.
- As the tank is used through out the day, there is not much of a water level drop as the float keeps filling as water is used.
- The built in analog to digital converters on the ESP32's/ESP8266's are rubbish, hence the needs for an ADS1115.
- The linear calibration only requires 2 points, an empty value and a full value - I took a reading at every 50L using a flow gauge - this was a complete waste of time
- The submersible sensor compensates for changes in atmospheric pressure
- The non submersible version of this pressure sensor is junk IMO - unless I got a dud but I kept on getting random voltage drops and therefore rubbish readings with no changes to the water in the tank. This was connected to an end cap on the outlet flow valve at the bottom of the tank. Also ordered this from Digikey as no one had stock locally so yeah...
If you guys have any q's, I'll do my best to assist.
This!. Forget the fancy stuff and stick to the most elementary and simple things that work for years and years. Dont need power, dont need connectivity don't need anything except a huge dose of common sense.Why not just put a float valve/switch in the tank and have that control the pump directly? Sometimes old school just works.
Did he?That said well done to the OP for getting it to work with HA!
I read about that. Something like R5K ?? Bloody ridiculous.Well, I see Jojo has come up with their own gadget at a price. Look it up and then ask yourself whether spending all that cash is worth it. I would rather buy two extra Jojo tanks.
Not that a R2000 gauge doesn't seem a little excessive to me but what size tanks are you getting for R1000 each?Well, I see Jojo has come up with their own gadget at a price. Look it up and then ask yourself whether spending all that cash is worth it. I would rather buy two extra Jojo tanks.
Not that a R2000 gauge doesn't seem a little excessive to me but what size tanks are you getting for R1000 each?