reef-pi :: An opensource reef tank controller based on Raspberry Pi.

Michael Lane

Well-Known Member
View Badges
Joined
Aug 11, 2018
Messages
677
Reaction score
1,123
Rating - 0%
0   0   0
Thanks, I followed what @AbjectMaelstroM suggested and it worked. I now have an EHEIM feeder hooked up, (kudos @robsworld78 for details on how to hookup the EHEIM). Created a timer that kicks off a macro that turns off wave makers and pumps, waits, activates the feeder, waits for 3-4 minutes then turns everything back on again. Pretty slick!

Well, looks good on the test bench.... Hoping to get things hooked up to my 65 FOWLR soon.

I'm powering the EHEIM from one of the 3.3v pins designated for a temp probe on the ML Goby Hat. Wondering if it may draw too much current from the Hat... Seems to work just fine but like I said, it's on the test bench and not in production.... @Michael Lane Thoughts?
I don't know how much current the Eheim requires, but I would guess it's more than a few milliamps since it has a motor. The 3.3v pin is basically the same as pin 1 or pin 17 on the rpi. It comes from the 3.3v regulator on the rpi.
You may not experience any issues, but it could possibly result in brownouts and resets on the rpi.
 

robsworld78

Well-Known Member
View Badges
Joined
Feb 14, 2020
Messages
985
Reaction score
1,325
Location
Edmonton, Canada
Rating - 0%
0   0   0
Unless dev mode is selected , reef-pi should not return random value, it has to be from the analog connector. I don’t know if it’s a bug , it’s tested with ezo circuit. I am assuming you are using it with your own circuit ?

I'm pretty sure it's a bug. I'm not in dev mode and using my circuit but if mine isn't working Atlas isn't work, they both do the R thing. Seems to only happen with a fresh install of v3.4 meaning never had reef-pi installed previously, after getting it to work once it seems to always add. I'm going to go through more tests to try and pin it so you can replicate.

Yes, that’s exactly what it is. The manual does not say , I assumed it due to the db9 connector And 12v input power (similar to the power controller guide ) . This mean users either have to build their own powerstrip or use the ones from robotank. I think it’s worth calling out ( or that it’s 5v digital output ).

Thanks, I updated the setup manual where you add connectors and sorry for the confusion. The 12v is to power the DC ports for dosing pumps, ATO etc.

It's sad there's no other power bars available, I've been recommending the Kasa as an alternative. I set mine up like this so it can be connected direct to any Arduino or Pi pin and I can't believe nothing like this exists. I think it's a fairly big market, lots of people don't like wireless so why can't IoT or someone make a power bar like their simple little 4 outlet bar. If I had money I would get a board certified and proper case.

Not sure what you mean by 5v digital outputs? The DB9 outputs are only 3.3v from the Pi but the sensor ports are 5v compatible but work with 3.3v if you use the 3.3v on feeder port to power it.

So something weird happened.

I just setup RoboTank controller hooked up to the temp probe (never touched water), set it to read temp every 5 seconds and it was trucking along.

As soon as I dropped it in the sump, probe started throwing error:

temperature sub-system. Failed to read sensor SumpTemp. Error:First line of device file does not ends with YES

I replaced the probe for one I had running on my old controller, same thing just throwing errors and won't read temp changes. I tested for stray voltage and not getting anything in the tank, both AC and DC.

Ideas?

@robsworld78


Edit: also get this error

temperature sub-system. Failed to read sensor SumpTemp. Error:eek:pen /sys/bus/w1/devices/28-00000bc72046/w1_slave: no such file or directory

And probe disappears from drop down.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Edit #2: Plugged in PH probe and as soon as the probe enabled or you go into calibration it starts throwing this error non-stop:

ph subsystem: Failed read probe:pHError:strconv.ParseFloat: parsing "8.306\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x80": invalid syntax

i2c detect showing ph on 63 hex 99 dec. Ph set to 99 in driver, ezo board, in connectors pin 0 selected.

Are you still having temp issues? Did you try another port in case I didn't solder a pin? They're all connected to same pin on Pi. If you still have issues maybe send me a message or start a new thread so we don't clutter this one.

The pH issue is an I2C clock stretching problem, the drivers for Pi for some reason don't support this so there's some sensors that will give errors. My pH uses an ATtiny85 and does this using the standard library. I put this in the install manual but forgot about the main manual, you can find it here.

 

robsworld78

Well-Known Member
View Badges
Joined
Feb 14, 2020
Messages
985
Reaction score
1,325
Location
Edmonton, Canada
Rating - 0%
0   0   0
Got as far as I could today, realized once I started soldering that I didn't order capacitors.. DOH!

Also discovered a mistake, the sht31d is wired backward, so I lose a temp sensor and dosing port on this board.
That will be corrected on the next iteration. Also discovered when I got this board from JCLPCB that I put the wrong sized headers on 2 places and omitted the onboard db18b20. I want to include that in the event that someone doesn't want to use the more expensive sht31d, plus I like options.

The next iteration will also use more SMD parts, so almost all of it will be shipped from the board manufacturer populated. Should reduce the cost and time to build. Will mostly be left with just headers and connectors to solder on.

IMG_20200526_191916.jpg


the next iteration will also be somewhat smaller..

GTReef.jpg

Looking good, one thing I noticed is the holder for the Atlas pH circuit, does the board have isolation for that? If only the Atlas circuit is plugged without their isolation carrier board it probably won't work very well for most. I can't touch a probe to my water without isolation. Years ago I bought just the Atlas circuit and it's useless.
 

Zippyfear

Community Member
View Badges
Joined
Apr 30, 2019
Messages
86
Reaction score
152
Rating - 0%
0   0   0
3 independent thoughts.. maybe 4. Some of these maybe best for the development thread, but I forgot the link.. for that thread.. I think this was asked before.. but

1) can we develop a drop for anything that is clearly not an accurate reading? I'd much prefer that to the graph attached..

2) it would be really great to not have pH graph from 0-12.. custom range is fine. I can't really tell on the graph the level changes daily without mousing over it

3) has anyone automated water changes? I used a dosing pump from a saltwater and out to a drain.. when I activate it. It works well. And I do a few gallons at a time. It is slow.. a gallon an hour give or take. But takes literally no work at all.. so I'm thinking about running a few gallons changed each day from a 25 gallon tank. Anyone have thoughts on pros/cons on the idea

Finally.. I've been running reef-pi and following everything since like 2.2 last year.. seems like things are getting more active and harder to follow. Which is good and bad.. I'm excited about the progress and advancement. Guess that was more of a comment than question. :)

Screenshot_20200526-233001_Chrome.jpg
 

Des Westcott

Well-Known Member
View Badges
Joined
May 29, 2018
Messages
646
Reaction score
1,035
Location
Durban - South Africa
Rating - 0%
0   0   0
[

3) has anyone automated water changes? I used a dosing pump from a saltwater and out to a drain.. when I activate it. It works well. And I do a few gallons at a time. It is slow.. a gallon an hour give or take. But takes literally no work at all.. so I'm thinking about running a few gallons changed each day from a 25 gallon tank. Anyone have thoughts on pros/cons on the idea


[/QUOTE]

I've been running Auto Water Changes since November last year. Here's my original post on that.
I use a system of ATO's and wait commands in a Macro enabling and disabling them with float switches as backups.

Works very well for me.

Just read that post in conjunction with the other documenting how macros must be written in reverse and have "use in Reverse" enabled to ge them to work when actuated by a timer.
 

AbjectMaelstroM

Valuable Member
View Badges
Joined
Jul 21, 2019
Messages
1,530
Reaction score
1,811
Location
RVA
Rating - 100%
1   0   0
Are you still having temp issues? Did you try another port in case I didn't solder a pin? They're all connected to same pin on Pi. If you still have issues maybe send me a message or start a new thread so we don't clutter this one.

The pH issue is an I2C clock stretching problem, the drivers for Pi for some reason don't support this so there's some sensors that will give errors. My pH uses an ATtiny85 and does this using the standard library. I put this in the install manual but forgot about the main manual, you can find it here.

Updated config.txt ref clock stretching, hopefully should do the trick.

As for temp, since I switched to a fully siliconed probe the issue is "fixed"...at least the symptom. I tried plugging the non-siliconed probe in and it works fine until it goes in the water. I tested for stray voltage and not seeing any on my Fluke DMM. I don't think it's a controller issue or at least maybe not entirely. It either gets voltage or interference. I made sure to keep probe wire away from any AC/DC wires. Going to silicone the "unshielded" probe and see what the result is.

These are the probes:
 

Martin Lowry

Community Member
View Badges
Joined
Sep 19, 2017
Messages
60
Reaction score
66
Location
Dover, NH
Rating - 0%
0   0   0
I don't know how much current the Eheim requires, but I would guess it's more than a few milliamps since it has a motor. The 3.3v pin is basically the same as pin 1 or pin 17 on the rpi. It comes from the 3.3v regulator on the rpi.
You may not experience any issues, but it could possibly result in brownouts and resets on the rpi.
I ran it two or three times to test the macro then unplugged it as I was feeling a little nervous about the current draw on the Rpi and the potential to fry something :oops:. I guess I will likely power the EHEIM from a 3.3v regulator off the primary 12v PSU. I can then program the feeder to do an offline secondary feed as a backup if something glitches with the rpi while I'm traveling on business or on vacation, if I ever do that again..... :cool:

@Michael Lane
 

Michael Lane

Well-Known Member
View Badges
Joined
Aug 11, 2018
Messages
677
Reaction score
1,123
Rating - 0%
0   0   0
Just saw this on an ad.


How difficult would it be to include in reef-pi? I'm guessing being analogue, it should possible to implement as pH and then calibrate?
At the moment, reef-pi only has a driver for ADS1119, through the ph-board implementation. I don't think the ADS1119 is readily available on breakout boards, so that's unlikely the be helpful.

On the other hand, I plan to have a driver for ADS1015/ADS1115 ready next month. Those ADC chips are pretty common on breakout boards and should be able to support the TDS module you linked.
 

GaryE

Well-Known Member
View Badges
Joined
Mar 12, 2020
Messages
992
Reaction score
1,385
Location
Coatesville, Indiana
Rating - 0%
0   0   0
At the moment, reef-pi only has a driver for ADS1119, through the ph-board implementation. I don't think the ADS1119 is readily available on breakout boards, so that's unlikely the be helpful.

Appears it is available on a breakout board.


https://www.digikey.com/catalog/en/partgroup/ads1119-adc-boosterpack-plug-in-module/85242?utm_adgroup=xGeneral&utm_source=google&utm_medium=cpc&utm_campaign=Dynamic Search&utm_term=&utm_content=xGeneral&gclid=Cj0KCQjwn7j2BRDrARIsAHJkxmwcV-6Itbwu0hTgHlZrCEjilb_GnuZUHIQRx_DOCEnNod67O2nmH4EaAu31EALw_wcB
 

Simonv92

Active Member
View Badges
Joined
Oct 21, 2014
Messages
145
Reaction score
105
Location
Italy
Rating - 0%
0   0   0
For all of you who have problems with DS18B20 reading such as 25.13 or similar, some sensor by default are set to 12Bit resolution. Following these steps you can modify that resolution to meet your need ;)


The Raspberry pi 2 guide works fine on a 3B+
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,848
Reaction score
17,081
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
I'm pretty sure it's a bug. I'm not in dev mode and using my circuit but if mine isn't working Atlas isn't work, they both do the R thing. Seems to only happen with a fresh install of v3.4 meaning never had reef-pi installed previously, after getting it to work once it seems to always add. I'm going to go through more tests to try and pin it so you can replicate.



Thanks, I updated the setup manual where you add connectors and sorry for the confusion. The 12v is to power the DC ports for dosing pumps, ATO etc.

It's sad there's no other power bars available, I've been recommending the Kasa as an alternative. I set mine up like this so it can be connected direct to any Arduino or Pi pin and I can't believe nothing like this exists. I think it's a fairly big market, lots of people don't like wireless so why can't IoT or someone make a power bar like their simple little 4 outlet bar. If I had money I would get a board certified and proper case.

Not sure what you mean by 5v digital outputs? The DB9 outputs are only 3.3v from the Pi but the sensor ports are 5v compatible but work with 3.3v if you use the 3.3v on feeder port to power it.



Are you still having temp issues? Did you try another port in case I didn't solder a pin? They're all connected to same pin on Pi. If you still have issues maybe send me a message or start a new thread so we don't clutter this one.

The pH issue is an I2C clock stretching problem, the drivers for Pi for some reason don't support this so there's some sensors that will give errors. My pH uses an ATtiny85 and does this using the standard library. I put this in the install manual but forgot about the main manual, you can find it here.

we should track the analog connector giving random value. I definitely want to fix it , if its present. It will be really nice if someone who have experienced it shares the detail so that i can reproduce it.
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,848
Reaction score
17,081
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
For all of you who have problems with DS18B20 reading such as 25.13 or similar, some sensor by default are set to 12Bit resolution. Following these steps you can modify that resolution to meet your need ;)


The Raspberry pi 2 guide works fine on a 3B+
3 independent thoughts.. maybe 4. Some of these maybe best for the development thread, but I forgot the link.. for that thread.. I think this was asked before.. but

1) can we develop a drop for anything that is clearly not an accurate reading? I'd much prefer that to the graph attached..

2) it would be really great to not have pH graph from 0-12.. custom range is fine. I can't really tell on the graph the level changes daily without mousing over it

3) has anyone automated water changes? I used a dosing pump from a saltwater and out to a drain.. when I activate it. It works well. And I do a few gallons at a time. It is slow.. a gallon an hour give or take. But takes literally no work at all.. so I'm thinking about running a few gallons changed each day from a 25 gallon tank. Anyone have thoughts on pros/cons on the idea

Finally.. I've been running reef-pi and following everything since like 2.2 last year.. seems like things are getting more active and harder to follow. Which is good and bad.. I'm excited about the progress and advancement. Guess that was more of a comment than question. :)

Screenshot_20200526-233001_Chrome.jpg
Thank you for taking the time and articulating your thoughts comprehensively. I'll make sure we address the ph chart range issue in 4.0, as part of the braoder UI/UX improvement work. I am still on the fence about discarding error nous values from sensors. I want to implement a moving average based robust mechanism for filtering, and not an arbitrary threshold based (certainly not one where we set the default).
For the last observation, you are right.. its a challenge with growing project. We have to do a better job around documentation and resource navigation.. and take it from there.. constantly incorporate feedback from beginners and experienced users and augment them...but again this will be harder as the project gets more adoption and maturity (more features).
 

bishoptf

Valuable Member
View Badges
Joined
Jan 1, 2019
Messages
1,349
Reaction score
1,724
Location
Missouri
Rating - 0%
0   0   0
Thought I would post my progress on controlling viparspectra lights with moon lights. Big thanks to @Michael Lane for making and providing a board to make things plug and play, more detailed information can be found in the controlling viparspectra thread - https://www.reef2reef.com/threads/controlling-viparspectra-lights.698216/

Here are some pics (vipar lights, they are bright, white @20 and Blues @60-
IMG_20200527_211605.jpg


Moon lights @10%, the appear brighter in the picture than in real life, you can go all the way down to 1% and they are barely on, will use these to ramp up to the vipar and ramp down after the vipar...woot!
MVIMG_20200527_211821.jpg


:)
 

cnidus

Community Member
View Badges
Joined
Mar 19, 2020
Messages
67
Reaction score
81
Rating - 0%
0   0   0
I got my robotank installed and started playing over the last few days.

so far just using 3 temp sensors and couple DC outputs for led work light in sump, fan (in temporary while I wait for a hole saw from Amazon) and RO solenoid.

Everything else connects via 2 HS300’s.

Rest is in my build log, but couldn’t resist posting my orange controller to contrast @Ranjib’s green one :) (green looks slick btw)

863E764B-817A-40B4-BF57-01AD52D9A2E9.jpeg
 

robsworld78

Well-Known Member
View Badges
Joined
Feb 14, 2020
Messages
985
Reaction score
1,325
Location
Edmonton, Canada
Rating - 0%
0   0   0
Updated config.txt ref clock stretching, hopefully should do the trick.

As for temp, since I switched to a fully siliconed probe the issue is "fixed"...at least the symptom. I tried plugging the non-siliconed probe in and it works fine until it goes in the water. I tested for stray voltage and not seeing any on my Fluke DMM. I don't think it's a controller issue or at least maybe not entirely. It either gets voltage or interference. I made sure to keep probe wire away from any AC/DC wires. Going to silicone the "unshielded" probe and see what the result is.

These are the probes:

Those look like nice probes, I'm going to look into getting some. These other cheap ones, I thought you had, are hit or miss. I wouldn't think but wondering if it's something with the shielding and covering the metal would make it like no shielding touches the water. I know some people have used a grounding probe to solved issues like this, maybe test with a bare wire to see if it goes away.

we should track the analog connector giving random value. I definitely want to fix it , if its present. It will be really nice if someone who have experienced it shares the detail so that i can reproduce it.

I'll definitely make up an easy step by step so you can reproduce, just a time thing right now as I need to reformat SD, I still haven't figured how to "uninstall" reef-pi lol...

I got my robotank installed and started playing over the last few days.

so far just using 3 temp sensors and couple DC outputs for led work light in sump, fan (in temporary while I wait for a hole saw from Amazon) and RO solenoid.

Everything else connects via 2 HS300’s.

Rest is in my build log, but couldn’t resist posting my orange controller to contrast @Ranjib’s green one :) (green looks slick btw)

863E764B-817A-40B4-BF57-01AD52D9A2E9.jpeg

Looking good, I think the green looks better because of connectors, now I need to find orange, blue, red...

Did you add a switch on the door to turn off the light?
 

Zippyfear

Community Member
View Badges
Joined
Apr 30, 2019
Messages
86
Reaction score
152
Rating - 0%
0   0   0
Thank you for taking the time and articulating your thoughts comprehensively. I'll make sure we address the ph chart range issue in 4.0, as part of the braoder UI/UX improvement work. I am still on the fence about discarding error nous values from sensors. I want to implement a moving average based robust mechanism for filtering, and not an arbitrary threshold based (certainly not one where we set the default).
For the last observation, you are right.. its a challenge with growing project. We have to do a better job around documentation and resource navigation.. and take it from there.. constantly incorporate feedback from beginners and experienced users and augment them...but again this will be harder as the project gets more adoption and maturity (more features).


Almost all values in ranges moves from x to x+1 or x-1... maybe x+2 or x-2.. percentage based.. it should ignore and maybe report or error an x+2000 single value.. or an option.. skip recording that.. until it's within range or repeats 3-4 times.. just a suggestion.. I know as a programmer that the logic is never that simple.

Thanks for all that you do!
 

Zippyfear

Community Member
View Badges
Joined
Apr 30, 2019
Messages
86
Reaction score
152
Rating - 0%
0   0   0
Almost all values in ranges moves from x to x+1 or x-1... maybe x+2 or x-2.. percentage based.. it should ignore and maybe report or error an x+2000 single value.. or an option.. skip recording that.. until it's within range or repeats 3-4 times.. just a suggestion.. I know as a programmer that the logic is never that simple.

Thanks for all that you do!

I think we can all agree that the relative odds of the tank being -3000 degrees is pretty slim.

subzero.PNG
 

AbjectMaelstroM

Valuable Member
View Badges
Joined
Jul 21, 2019
Messages
1,530
Reaction score
1,811
Location
RVA
Rating - 100%
1   0   0
Those look like nice probes, I'm going to look into getting some. These other cheap ones, I thought you had, are hit or miss. I wouldn't think but wondering if it's something with the shielding and covering the metal would make it like no shielding touches the water. I know some people have used a grounding probe.

That's the weird thing. When you leave them bare metal (contact with water) is when the issue happens. The one covered in silicone seems to be working so far.


Might try grounding probe. Would a simple wire from ground in the outlet to the sump work for test purposes?
 
Back
Top