Hydros Triple Optical Sensor in your DIY Controller

SaltyBlue

Community Member
View Badges
Joined
Mar 10, 2025
Messages
37
Reaction score
25
Location
Space Coast
Rating - 0%
0   0   0
My favorite extension of our hobby has been making my own controllers for my tanks. They have come a long way but I think no matter how good or inexpensive they get I’ll always prefer to make my own. That said, I really like what Hydros has brought to us, especially the GX12 aviation connectors, great idea.

I had been at the start of designing a new version of my controller when I saw the Hydros Triple Optical Sensor at my LFS and liked the sensor so much that I bought it without having a Hydros controller 🤣. As I’d already been designing my Raspberry Pi-based controller, mainly for more and quieter dosing pumps, I figured I’d take a shot at making it compatible with hydros sensors while also ensuring it would work for my own float switches/ temp probes.

As it turns out, Coralvue hosts an amazing Hydros forum which includes a DIY page where they have shared their controller pinouts for hobbyists looking to make their own float switches, temp sensors, button controls, etc to incorporate into their Hydros controller. These were extremely helpful and quite honestly I am shocked that they are such an open book, what a great company! That said, I seemed to have the opposite use case of everyone else in that I was trying to bring a Hydros sensor into my controller vs bringing my own sensor into a Hydros device.

Per their site, the pinouts for the sense ports are:
Pin 1: GND
Pin2: 5VDC
Pin3: Digital I/O
Pin4: Analog In

Therefore, to wire Hydros sense port devices to a raspberry pi you need to connect GND and 5V rails to the sensor, have an analog to digital converter (I used ADS1115) and a level shifter to convert the sensor’s 5V Digital I/O to the pi’s 3.3V GPIO (I used a TXB0108). Here’s my implementation:

IMG_4162.jpeg
IMG_4161.jpeg

Since the Triple Optical Sensor has 3 sensors, it clearly does not communicate via a simple High / Low state like most water level sensors (float sensors, single optical sensors). However, knowing that Hydros temp sensors are based on the DS18B20 sensors which communicate via 1 wire, I would have bet money that Triple Optical communicated with the controller via:
1) One wire
Or
2) Adjusting voltage on analog pin to discrete values. I ruled out that they had used this approach with a voltmeter.
I thought there was a low likelihood of UART or I2C, etc, because the circuits had to be interchangeable with the One wire DS18B20 and those protocols could have address conflicts with multiple devices.

When I finally received the new board I’d designed I was surprised that a one wire device did not appear when I hooked up the Hydros sensor. I was really disappointed because I thought my chances of figuring this out had significantly decreased and may have to put on the back burner.

After sleeping on it I decided to monitor the Pi GPIO to see if there was any activity using the pigpio library for edge detection, which is essentially just time stamping when the Hydros Sensor toggled the GPIO high or low. I was surprised to find that it was toggling these at consistent 25.19 ms intervals (39.7 hz). I decided to see what would happen if I fully submerged it, and sure enough the toggling transitioned to a different frequency (794 Hz). Cracked the code 🙂

I found that the sensor simply changes the pulse frequency to correspond to which of its optical sensors are submerged:
All Dry: 39.7 Hz
Low Level Sensor Wet: 198 Hz
Normal Level Sensor Wet: 397 Hz
Safety Sensor Wet: 794 Hz

Pic:
IMG_4166.jpeg

Video:


I really like this approach, it’s resilient to noise and will work on really long runs. Mission accomplished, and thanks again to CoralVue for the great Hydros ecosystem and DIY forum 😎
 

Hooz

Valuable Member
View Badges
Joined
Aug 16, 2020
Messages
2,068
Reaction score
2,039
Location
Heath, OH
Rating - 100%
1   0   0
Just stumbled upon this thread. Very cool stuff!

The triple sensor was a bit too touchy for me on the Hydros system, but I have several of the "regular" ones, both the older round ones and the newer square ones laying around. Maybe it's time to play around a bit. 😆
 

TOP 10 Trending Threads

WHAT AMOUNT OF LIVE ROCK AND SAND SHOULD BE PRIORITIZED FOR OPTIMAL BIODIVERSITY/FILTRATION?

  • 100% live rock + bagged sand

    Votes: 34 27.0%
  • 100% dry rock + 100% live sand

    Votes: 45 35.7%
  • 50/50 live/dry rock, 50/50 live/bagged sand

    Votes: 27 21.4%
  • 75% live rock, 25% live sand

    Votes: 11 8.7%
  • 25% live rock, 75% live sand

    Votes: 9 7.1%
Back
Top