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

OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,682
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
I've officially got my Reef-Pi board finalized- meet Leviathan!!

Front (Populated, Cropped).JPG


It's been a long time coming, but it's finally here! I've had a couple of people testing them, including myself, & they've worked great. I got tired of dealing with re-wiring my setup every time I wanted to add a new feature & when asked to build a Reef-Pi setup for a friend, I knew there was no way I was doing it all from scratch again.

I wasn't totally satisfied with any of the pre-existing Reef-Pi boards out there to buy, none I found had the ability to do both dosing & light control. Plus, I didn't need to use the ULN2803, as I wasn't going to be using the ADJ strip.

I'll be selling them soon- if you're interested in signing up for one, or finding out more about Leviathan, check out this link.
This is super duper cool @Schreiber . I am so happy to see this board coming into life. I hope this will help the community building reef-pi controller easily. Thank you for all your hard work and perseverance. I recall those initial bumpy days in the beginning. Very inspiring, and thank you for sharing
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,682
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
I've thought of wiring this into my tripp-lite. I've got these 8 manual switches that I basically don't use anymore since I got my reef-pi running. I was thinking I'd like to add some normally-on outlets (since the adj is normally off) to put a few mission-critical things on like heaters (I'm in the PNW and it's in the basement), the return and at least on powerhead. Anyways, I also figured, especially for a normally-on relay, I'd like to have a manual switch. Has anyone broke open something like mine and hacked a relay set into it?

existing switched outlets

Idea for relay set from @raketemensch (to run alongside the existing 12V ADJ relays)
Hacking existing powerstrip will be a lot of fabrication work (less of electrical/electronics). And my experience has been its not worth it. Your experience may differ, based on your skill set. I always ended up butchering those whole thing :-), it was my common goto method pre-1.0 :-) . Post 1.0 i have exclusively used ADJ power strip, and for past 3 months its a mix of ADJ power strip and HS300. I am extremely excited about @dmolavi 's work on the DLI power strip. I think its the beefiest option of all, and made in USA, so much better supply chain/QC etc. Keep us posted
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,682
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
Agree with the intent behind it but chap is not allays a good way to go. You will save 5 cents on the connector and blow $15 device. BTW the 4 PIN example you can get it for $10 for set of 10. easier to solder as you are soldering to wires. Use heat shrink tubing to seal the connection and you are all set to go. Just more options to explore.
Agree. Actually, in the beginning, I didnt even know there exist so many types of connectors (I did microbiology in school, and software in job). I definitely encourage experimenting with more options.
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,682
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
Had the same issue. My Reef-Pi is set to static but these are left at 0's otherwise it breaks.
I know the reason for this, and I know how to fix it, but it comes with its own quirks.
So, during bootup, we configure reef-pi to start without relying on any dependencies. Which means reef-pi starts way before network stack (because it starts fast and it has no dependency). As a result when reef-pi starts the network stack may not be ready yet, and the IP is not available, causing this failure. We can change this to make sure reef-pi only starts after networking is up by adding this in '/etc/systemd/system/reef-pi.service'
Code:
After=network-online.target
Wants=network-online.target
But then , it also means reef-pi will not be starting till network is up, and will not start if your dhcp or anything thats causes networking to fail. That was not a thing i wanted. In fact, reef-pi should work just fine if network is down, you wont see the UI, but the controller should be running just fine. Let me know what you all think about this. Its one of the thing we have to debate and decide as a community. My default position on this is to keep the happy path safer while making the more involved path possible.
 

lmm1967

Well-Known Member
View Badges
Joined
Sep 12, 2017
Messages
563
Reaction score
809
Location
North Georgia
Rating - 0%
0   0   0
Question - Temp feeding Adafruit - Adafruit tied to IFTTT to send out of temp alerts.

But - I get an email every single time the data is updated in Adafruit.io - anyway to control the rate of notifications in this scenario?
 

marekd1

Active Member
View Badges
Joined
Dec 24, 2019
Messages
133
Reaction score
199
Rating - 0%
0   0   0
Fully Agree with Ranjib, went there too many times with no so good results. At the end of the day you do not have enough space to put in relays, you other option then would be to go with solid state. These are typically too low current i.e. 2A. Given that you could be switching heaters I typically do not go any thing less than 10A contact rating just to make sure I do not burn the house. I typically look for something that has enough space to add stuff but these are very rare to find. Another pointer make sure your power bar is fused so you do not exceed the overall rating.
 
Last edited:

lmm1967

Well-Known Member
View Badges
Joined
Sep 12, 2017
Messages
563
Reaction score
809
Location
North Georgia
Rating - 0%
0   0   0
I know the reason for this, and I know how to fix it, but it comes with its own quirks.
So, during bootup, we configure reef-pi to start without relying on any dependencies. Which means reef-pi starts way before network stack (because it starts fast and it has no dependency). As a result when reef-pi starts the network stack may not be ready yet, and the IP is not available, causing this failure. We can change this to make sure reef-pi only starts after networking is up by adding this in '/etc/systemd/system/reef-pi.service'
Code:
After=network-online.target
Wants=network-online.target
But then , it also means reef-pi will not be starting till network is up, and will not start if your dhcp or anything thats causes networking to fail. That was not a thing i wanted. In fact, reef-pi should work just fine if network is down, you wont see the UI, but the controller should be running just fine. Let me know what you all think about this. Its one of the thing we have to debate and decide as a community. My default position on this is to keep the happy path safer while making the more involved path possible.

How about a trigger to watch for that in a log and restart apache?
 

marekd1

Active Member
View Badges
Joined
Dec 24, 2019
Messages
133
Reaction score
199
Rating - 0%
0   0   0
I know the reason for this, and I know how to fix it, but it comes with its own quirks.
So, during bootup, we configure reef-pi to start without relying on any dependencies. Which means reef-pi starts way before network stack (because it starts fast and it has no dependency). As a result when reef-pi starts the network stack may not be ready yet, and the IP is not available, causing this failure. We can change this to make sure reef-pi only starts after networking is up by adding this in '/etc/systemd/system/reef-pi.service'
Code:
After=network-online.target
Wants=network-online.target
But then , it also means reef-pi will not be starting till network is up, and will not start if your dhcp or anything thats causes networking to fail. That was not a thing i wanted. In fact, reef-pi should work just fine if network is down, you wont see the UI, but the controller should be running just fine. Let me know what you all think about this. Its one of the thing we have to debate and decide as a community. My default position on this is to keep the happy path safer while making the more involved path possible.


In my opinion, I would rely on the IP setting on the PI. I really do not think you need to worry about supporting bridging the WEB Server to another IP. But again this comes from a guy that has firewall on every of the 7 vlans running at home.

If you want to expose the PI to the external network map and redirect different ports for HTTP and HTTPS, etc on the router so there is no direct link to the PI's on anything that would be a standard port. You are NATing anyway so unless you are completely open then you would expose internal network
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,682
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
How about a trigger to watch for that in a log and restart apache?
Theres no apache :0) . reef-pi is self contained, runs its own http server/tcp stack , control system etc. Its all inclusive binary. We dont rely on anything, not even glibc. The ui is a single static file served by the http server that runs on your browser. I can update the code to have timeout and retry to selectively enable the API/UI without blocking the controller itself, but im not sure if its worth it.
 

lmm1967

Well-Known Member
View Badges
Joined
Sep 12, 2017
Messages
563
Reaction score
809
Location
North Georgia
Rating - 0%
0   0   0
Theres no apache :0) . reef-pi is self contained, runs its own http server/tcp stack , control system etc. Its all inclusive binary. We dont rely on anything, not even glibc. The ui is a single static file served by the http server that runs on your browser. I can update the code to have timeout and retry to selectively enable the API/UI without blocking the controller itself, but im not sure if its worth it.
It's not worth it to/for me - shortest path is probably just to hide that option. :D

For folks with a handle on apache/nginx etc - it does create a little confusion - not a huge deal, just a thought.
 

marekd1

Active Member
View Badges
Joined
Dec 24, 2019
Messages
133
Reaction score
199
Rating - 0%
0   0   0
Theres no apache :0) . reef-pi is self contained, runs its own http server/tcp stack , control system etc. Its all inclusive binary. We dont rely on anything, not even glibc. The ui is a single static file served by the http server that runs on your browser. I can update the code to have timeout and retry to selectively enable the API/UI without blocking the controller itself, but im not sure if its worth it.


Nice!!!! minimal dependency on external libraries poses less risk for things to break if things change down the road.
 

lmm1967

Well-Known Member
View Badges
Joined
Sep 12, 2017
Messages
563
Reaction score
809
Location
North Georgia
Rating - 0%
0   0   0
Nice!!!! minimal dependency on external libraries poses less risk for things to break if things change down the road.
It also puts the crux of things like security and configuration on you - rather than being able to rely on the rest of the world. :D Especially with the source code being completely available to the world. I'm not complaining - just pointing out things to be considered.

There's always a plus and a minus.
 

That Crusso Kid

10K Club member
View Badges
Joined
Oct 21, 2018
Messages
15,518
Reaction score
78,881
Location
SW, FL, USA
Rating - 0%
0   0   0
It's a work in progress, but I've got the Github page for Leviathan mostly populated. Got the schematic & pcb layout on there, as well as the draft of my documentation. I'm 42 pages in on that, with plenty to go.


I checked out your Leviathan and must admit it appears to hit all the check marks and be pretty cool. I hope it takes off for you!

What will the cost of a Leviathan board?
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,682
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
I checked out your Leviathan and must admit it appears to hit all the check marks and be pretty cool. I hope it takes off for you!

What will the cost of a Leviathan board?
Yay.. @crusso1993 :hugs:, happy to see your comments here sir, we miss you .
 

marekd1

Active Member
View Badges
Joined
Dec 24, 2019
Messages
133
Reaction score
199
Rating - 0%
0   0   0
It also puts the crux of things like security and configuration on you - rather than being able to rely on the rest of the world. :D Especially with the source code being completely available to the world. I'm not complaining - just pointing out things to be considered.

There's always a plus and a minus.

You definitely have the right approach!!! Keep you focus on the Reef-Pi on controlling the reef, exactly on how you are doing it now :)
 

That Crusso Kid

10K Club member
View Badges
Joined
Oct 21, 2018
Messages
15,518
Reaction score
78,881
Location
SW, FL, USA
Rating - 0%
0   0   0
Yay.. @crusso1993 :hugs:, happy to see your comments here sir, we miss you .

Thanks, my friend, and hugs back! As you know, I was away for a while and, by "away", I don't mean prison! :p

I'm not exactly sure how many pages I missed over the last several months but am aware the upgrades to reef-pi have been exceptional. And so many different premade boards to select from now. That Leviathan from @Schreiber is looking very impressive!

I cannot believe @dmolavi is still tinkering with the DLI powerstrip. I figured he would be on release 2.1 by now. Sheesh! Lol (I'm fairly sure he'll be cursing my return!)
 

marekd1

Active Member
View Badges
Joined
Dec 24, 2019
Messages
133
Reaction score
199
Rating - 0%
0   0   0
Question - Temp feeding Adafruit - Adafruit tied to IFTTT to send out of temp alerts.

But - I get an email every single time the data is updated in Adafruit.io - anyway to control the rate of notifications in this scenario?

I am assuming this is working like message bus, so handling of the messages would have to happen at Adaruit.io.

This is why I am waiting for MQTT support on Reef-Pi and then use Node Red to handle the filters, additional graphs external control interface etc. There is a video on architecture of the reef-pi on youtube but I am not sure how this was done in the demo with out MQTT support. It would be nice if someone could give some clarity on how this was done. I am not sure if person who created that video is part of this forum. If you have not looked at Node Red have a look, its like magic without huge need of coding for displaying graphs, dashboards logic, etc.
 
Last edited:

Schreiber

Leviathan
View Badges
Joined
Jun 28, 2016
Messages
475
Reaction score
594
Location
Knoxville
Rating - 0%
0   0   0
This is super duper cool @Schreiber . I am so happy to see this board coming into life. I hope this will help the community building reef-pi controller easily. Thank you for all your hard work and perseverance. I recall those initial bumpy days in the beginning. Very inspiring, and thank you for sharing

Thanks :D It's been a long time coming. Just looked back & it's been over 2 years since my first Reef-Pi post & I can't thank you & everyone in this thread enough for helping me along in my journey! I just hope my simple questions throughout the years will help future people searching for answers!

When I started my first build back in 2017, I would have never imagined I'd be this far along with it. Anything past equipment control seemed scary, lol. Now I can put a full setup together without ever looking at the instructions, minus the url for the Reef-Pi download.
 

Schreiber

Leviathan
View Badges
Joined
Jun 28, 2016
Messages
475
Reaction score
594
Location
Knoxville
Rating - 0%
0   0   0
I checked out your Leviathan and must admit it appears to hit all the check marks and be pretty cool. I hope it takes off for you!

What will the cost of a Leviathan board?

Hey, thanks! I actually missed your comment, but saw Ranjib quote it. Thread has been moving super fast today!

I'm still a few days away from officially selling them, so price isn't totally concrete yet. But I've got the prices I'm pretty settled on listed on the site. There are different "tiers" depending on which features you plan on using. No reason to buy the full board with the added cost of the integrated circuits like the L293D & PCA9685 if you don't plan on using them!

Bare board-$14, for people who want the cheapest build possible & don't mind soldering. It's about half the price of the proto-boards & you don't have to solder any of the tons of board connections! Only will have to solder the components you want to it.

Board w/ Pi & relay headers, float switch ATO, & temperature-$23, simple setup, perfect for freshwater or a fowlr tank.

Board w/ all of the above + optical sensor ATO & dosing-$30, what I'd typically recommend. This covers all the features most people will need or use.

All the features including pH & lighting control-$42, this is for the completionist that wants to use every feature Reef-Pi offers. If I wind up getting better at soldering the PCA9685pw chips, I may be able to justify going down in price a bit, but hand-soldering 28 0.65mm pitch pins is a pretty big chore, plus all the extra resistors that go along with it.

Any of these boards can be "upgraded" at any point, just solder on the components for the new feature you want to add.
 

lmm1967

Well-Known Member
View Badges
Joined
Sep 12, 2017
Messages
563
Reaction score
809
Location
North Georgia
Rating - 0%
0   0   0
I am assuming this is working like message bus, so handling of the messages would have to happen at Adaruit.io.

This is why I am waiting for MQTT support on Reef-Pi and then use Node Red to handle the filters, additional graphs external control interface etc. There is a video on architecture of the reef-pi on youtube but I am not sure how this was done in the demo with out MQTT support. It would be nice if someone could give some clarity on how this was done. I am not sure if person who created that video is part of this forum. If you have not looked at Node Red have a look, its like magic without huge need of coding for displaying graphs, dashboards logic, etc.


One of the primary reasons I'm not investing anything additional in "the big controller boys" is my data and what options I have with it.

I will say building a dashboard with charts (and enabling alerts based on the specifics from those charts) took me roughly 15 minutes with Adafruit.IO. I actually plan on doing this with an internal grafana server - or something similar.

This is sitting at my desk - not monitoring a tank yet - I would never run my tank at 83.41F. At least not on purpose.
Screen Shot 2020-01-03 at 3.05.16 PM.png
 

ARE YOU READY TO CONFESS TO CRAZIEST, DUMBEST, FUNNIEST THING YOU’VE EVER DONE IN REEFING?

  • Yeah, I'll confess! (Share your story in the comments!)

    Votes: 10 58.8%
  • Nah, I'll keep mine a secret...(Don't be like that, share with the class!)

    Votes: 7 41.2%
Back
Top
Home
Post thread…
Market
What's new