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

I think i know whats happening. When you reboot, reef-pi starts before network is online, as a result when reef-pi starts and connects to hs300 it fails (since network is not up yet). If you reload reef-pi without pi rebooting, it should fix it. If you want to make it full proof , i.e. when reboot happens reef-pi does not start before network comes online, update /lib/systemd/system/reef-pi.service like this (notice the after and wants directive). This will ensure reef-pi is started only after network is up. Reboot your pi to verify this works. Note, this also mean if by any chance your network is down, and pi reboots, reef-pi will not start. This is the reason we dont ship with this settings. I am working on to make things like this (configurations beyond reef-pi, but related to the underlying pi itself) user configurable in near future,.

Code:
[Unit]
Description=raspberry pi based reef tank controller
After=network-online.target
Wants=network-online.target

[Service]
ExecStart=/usr/bin/reef-pi daemon -config /etc/reef-pi/config.yml
WorkingDirectory=/var/lib/reef-pi
Restart=always
RestartSec=90
StartLimitInterval=400
StartLimitBurst=10

[Install]
WantedBy=multi-user.target
On another note I'm not a raspberry pi expert or even a novice but is there a way to just delay it testing the network or even booting upon start up? But still have it boot no matter what after like 30sec upon power up?
Thank you
 
Do you have the right address ? I used 99 I think the default might be 64.

i2c,99

It not longer shows up on i2c detect. Wiring matches my other build. It disappeard after a bit of use once I plugged in my separate dosing pump setup (PCA board). I had a short which I corrected but the Ezo board disappeared. Even disconnecting the dosing setup the Ezo baord doesn't show up in the address list.
 
My Eheim went for a swim recently so I popped it open after doing a full wash and dry cycle. Still works.
You’ll want to signal the K1 or K2 buttons, in the picture orientation left to right. The edge of the board is battery ground and the inner button contact should be brought to ground to activate.

18916710-6FCD-4520-A398-46CCC4249A74.jpeg
 
It not longer shows up on i2c detect. Wiring matches my other build. It disappeard after a bit of use once I plugged in my separate dosing pump setup (PCA board). I had a short which I corrected but the Ezo board disappeared. Even disconnecting the dosing setup the Ezo baord doesn't show up in the address list.

Its possible something got destroyed. Have you tried without the isolator? Do you have any other I2C devices to test with the Pi?
 
On another note I'm not a raspberry pi expert or even a novice but is there a way to just delay it testing the network or even booting upon start up? But still have it boot no matter what after like 30sec upon power up?
Thank you
There should be. systemd probably have something to do this. I'll check
 
I am currently working on a new Reef-pi build for my 220. Has anyone ever maxed out the GPIO on their pi? I am intending on using all of the GPIO and was hoping someone has successfully used a GPIO expansion board for more IO. Do any of you have experience with this?
Thanks in advance.
 
I am currently working on a new Reef-pi build for my 220. Has anyone ever maxed out the GPIO on their pi? I am intending on using all of the GPIO and was hoping someone has successfully used a GPIO expansion board for more IO. Do any of you have experience with this?
Thanks in advance.
I maxed out but luckily I have not needed to use a GPIO expansion board. What are your goals? Often times you can find ways around using additional GPIO such as mono-directional dosers, PCA board, ect.
 
Its possible something got destroyed. Have you tried without the isolator? Do you have any other I2C devices to test with the Pi?
Good tip. THe isolator board is toast as I bread boarded it to a test reef-pi build and had the same issues. Thought I was going crazy rechecking my wiring again and again. Careful of that flux and solder joints ya'll!
 
I am currently working on a new Reef-pi build for my 220. Has anyone ever maxed out the GPIO on their pi? I am intending on using all of the GPIO and was hoping someone has successfully used a GPIO expansion board for more IO. Do any of you have experience with this?
Thanks in advance.
As of now we don’t have support for any gpio expander . There were plans for supporting mcp23017, but it’s not done yet. Any chance you can use WiFi based outlets ?
 
HELP!

I deleted a driver without deleting the connector first, and now I cannot access the connectors in the Web UI.
The error I get when I go to "Connectors" tab is:

TypeError: Cannot read property 'name' of undefined

in t
in div
in div
in div
in t
in Connect(t)
in div
in div
in t
in div
in t
in t
in div
in div
in div
in div
in t
in Connect(t)
in t
in a



How do I fix this?
 
HELP!

I deleted a driver without deleting the connector first, and now I cannot access the connectors in the Web UI.
The error I get when I go to "Connectors" tab is:

TypeError: Cannot read property 'name' of undefined

in t
in div
in div
in div
in t
in Connect(t)
in div
in div
in t
in div
in t
in t
in div
in div
in div
in div
in t
in Connect(t)
in t
in a



How do I fix this?
About a minute before reading this I did the same thing... Sadly I think the only current way is it delete and reinstall reef-pi but I am not 100%. I don't plan on changing connectors or adding new ones so I will hold off.
 
As of now we don’t have support for any gpio expander . There were plans for supporting mcp23017, but it’s not done yet. Any chance you can use WiFi based outlets ?

Doesn't the PCA PWM driver work for outputs now? I thought I saw support for that
 
Good tip. THe isolator board is toast as I bread boarded it to a test reef-pi build and had the same issues. Thought I was going crazy rechecking my wiring again and again. Careful of that flux and solder joints ya'll!


so I am looking at doing 2 of the DJ power strips for high priority outlet control items. one of the HS300 wifi switches to control mixing station and hand full of levels a few solenoids and temp

16 - relays to control 120v
1 - Temp 1 wire
7 - levels
2 - solenoids

Total I would like to have 5 temps
I will also have the HS300 and two Shellys 1 that will be be a master over the two DJ power strips but that does not require I/O

I would not be against using all wireless HS300 for all outlets but with the startup issues I have it makes me a little scared not that power goes out often but when it does Im out of town and have a tank sitter who knows nothing about my tank other than feed the pre setup containers on the day marked on it lol.
 
HELP!

I deleted a driver without deleting the connector first, and now I cannot access the connectors in the Web UI.
The error I get when I go to "Connectors" tab is:

TypeError: Cannot read property 'name' of undefined

in t
in div
in div
in div
in t
in Connect(t)
in div
in div
in t
in div
in t
in t
in div
in div
in div
in div
in t
in Connect(t)
in t
in a



How do I fix this?
About a minute before reading this I did the same thing... Sadly I think the only current way is it delete and reinstall reef-pi but I am not 100%. I don't plan on changing connectors or adding new ones so I will hold off.

You can also reset the database by running this.

sudo systemctl stop reef-pi.service
sudo rm -rf /var/lib/reef-pi/reef-pi.db
sudo systemctl start reef-pi.service

 
Doesn't the PCA PWM driver work for outputs now? I thought I saw support for that
If that is the case could do this and use it to control my solenoids for R/O and mixing tank that should fee up enough to do what I want

Yeah you can connect many PCA9685 modules for more outputs.
 
Can you run two PCA9685? I could run one to do lights on the frag tank and the second one to do the 16 outputs needed to run the 120v outlets

You can connect 62 so 992 outputs. :)

EDIT: I should clarify, when you add these modules they communicate using I2C but this protocol isn't designed to be run through long cables so you will have to keep the modules as close to Pi as possible, less than 12", and run long output cables. Connecting 62 would be a nightmare so I shouldn't have even said that.
 
Last edited:
You can connect 62 so 992 outputs. :)

EDIT: I should clarify, when you add these modules they communicate using I2C but this protocol isn't designed to be run through long cables so you will have to keep the modules as close to Pi as possible, less than 12", and run long output cables. Connecting 62 would be a nightmare so I shouldn't have even said that.

I would only need two so 62 is like 60 more than I need and no problem on length it's all in the same box.
Thank you
 
I am currently working on a new Reef-pi build for my 220. Has anyone ever maxed out the GPIO on their pi? I am intending on using all of the GPIO and was hoping someone has successfully used a GPIO expansion board for more IO. Do any of you have experience with this?
Thanks in advance.
If you max out, you can use a pca9685 as an i/o expansion and instead of pwm, just turn the channels to 0 percent and 100 percent.
 

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: 17 56.7%
  • Nah, I'll keep mine a secret...(Don't be like that, share with the class!)

    Votes: 13 43.3%
Back
Top
Home
Post thread…
Market
What's new