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

@sfgabe is the only person i know who uses haas and reef-pi. I just posted some details on how to configure mqtt, for haas check their tutorial
thanks
Configuration -> Telemetry -> Enable MQTT , specify mqtt broker details, address should be
Code:
host_ip:port

and other details (password, if any), and hit reload
Hi thanks for taking the time to respond to all our questions, it is really appreciated, and sorry for the late response
 
Has anybody tried tried out the new EZO isolated carrier boards for ph? They’re a lot cheaper than the “old style” ones but noticed they have an SMA connector instead of BNC. Would adapting SMA to BNC effect the performance?
I built my setup with the new SMA board. Only downside I can see is that if you buy another probe it will need SMA connector or use of an adapter. The probe on the Atlas site comes with SMA so it works great no adapter needed. Not sure if this is standard for all probes though. The board mounts using standoffs and a slightly oversized hole is needed - so less water proof I guess.
 
Reef-pi #3 build under way for the 420g system I am setting up. Going to go the clean easy route and use a robo-tank instead of my own cobble together again (though no issues is several years). I did install 4.1 today on the pi and got the basic setup notifications etc done.

Looking forward to this, thinking of setting up realvnc any know issues doing so? Thanks
 
Reef-pi #3 build under way for the 420g system I am setting up. Going to go the clean easy route and use a robo-tank instead of my own cobble together again (though no issues is several years). I did install 4.1 today on the pi and got the basic setup notifications etc done.

Looking forward to this, thinking of setting up realvnc any know issues doing so? Thanks
I would ask why do you think you would need a GUI connection to reefpi. It will support it, but really everything can be done from the cli and it will use a lot less resources. If you really want to have a gui frontend to access on the pi I would strongly recommend you look into x2go, thats just my .02 worth. It's much better from a security and resources point vs a lot of the other stuff, but i've never run it on a pi.

:)
 
I built my setup with the new SMA board. Only downside I can see is that if you buy another probe it will need SMA connector or use of an adapter. The probe on the Atlas site comes with SMA so it works great no adapter needed. Not sure if this is standard for all probes though. The board mounts using standoffs and a slightly oversized hole is needed - so less water proof I guess.
Most ph probes are bnc based
 
Is there any way to obtain the equipment values (ex temp/ph) from reef-pi command line while the system is running? db commands seems to require the service to be stopped. Thanks.
Yes . Using curl and api. Check api example for details
 
Hi all,

I have a question. I have a test install 4.1, on Raspberry Pi 4 Model B Rev 1.2
I am currently just playing around to test what it can/cannot do.

I have found 2 issues alarming, but maybe it is just me.

1.
I have set up an output to pin 21 (just a led with a resistor)
added a file input (config / drivers - file content is just one number)
added the driver to analog input and outlet accordingly
Set up an equipment using outlet (could turn on and of LED )
Set up 2 macros to turn off and on LED equipment
then went and set up a PH type sensor using this input and control 2 macros so when it is high LED on else OFF

Started to change the values and all seems to be fine at first but noticed that when the value is on the or between the Lower or Upper Threshold the LED blinks with the frequency of the "Check Frequency" in my case ever 5 sec

This means it gives a pulse every time it cheeks it but why?

2. I have started to turn on functions so I can do more tests. but there is no way to turn them off. You untick it and it comes back. Not to mention the above setup started to receive constant on status as random values on the chart started to appear above the Upper Threshold which I presume triggered the TURN on macro.

Any idea why?
I’m not sure I understand correctly., there are too many things going on here. I’ll need lot more detail about the file driver setup , controller configurations etc and have to spend time to untangle this. If you think you are seeing bugs then please file a GitHub issue . It’s best to create a thread if you want to maintain some context. Else things get buried pretty quickly in this thread
 
Use the api , and curl
Thanks for pointing me in the general direction. Here is the pythonized version for use:
Code:
#Provided by ReeferLou for Reef-pi telemetry via python script
#give a like if you find useful
print ("Attempt at Reef-Pi API")

import requests
session = requests.session()
#Log into reef-pi session
r = session.post(url='http://0.0.0.0:80/auth/signin', data='{"user":"reef-pi", "password":"reef-pi"}')

rtest = str(r)
#print(rtest)
if ("200" in rtest):
        print("Signed in")
        tempd = session.get(url='http://0.0.0.0:80/api/tcs/1/read')
#       print (tempd,tempd.text)
        temp = str(tempd.text)
        temp = temp.rstrip()

        phd = session.get(url='http://0.0.0.0:80/api/phprobes/2/read')

#       print (phd,phd.text)
        ph = str(phd.text)
        ph = ph.rstrip()
        print ("Current ph =  " + ph)
        print ("Current temp =  " + temp)
else:
        print ("Login failed!")
 
Last edited:
Thanks for pointing me in the general direction. Here is the pythonized version for use:
Code:
#Provided by ReeferLou for Reef-pi telemetry via python script
#give a like if you find useful
print ("Attempt at Reef-Pi API")

import requests
session = requests.session()
#Log into reef-pi session
r = session.post(url='http://0.0.0.0:80/auth/signin', data='{"user":"reef-pi", "password":"reef-pi"}')

rtest = str(r)
#print(rtest)
if ("200" in rtest):
        print("Signed in")
        tempd = session.get(url='http://0.0.0.0:80/api/tcs/1/read')
#       print (tempd,tempd.text)
        temp = str(tempd.text)
        temp = temp.rstrip()

        phd = session.get(url='http://0.0.0.0:80/api/phprobes/2/read')

#       print (phd,phd.text)
        ph = str(phd.text)
        ph = ph.rstrip()
        print ("Current ph =  " + ph)
        print ("Current temp =  " + temp)
else:
        print ("Login failed!")


Use the api , and curl
I just pushed out an update to my "Reef-pi script utils". It includes a 'reef-py.py' command that provides a CLI for the API calls . It tries to mimic the reef-pi db command as much as possible. It also has full Bash completion support, to assist with available options and configured reef-pi ids. It can do some simple value extractions, pretty-print the JSON, or you can pipe the JSON into jq for more advanced options.
Examples:
reef-py.py show temperature_current 2 reef-py.py show ph_readings 7 --value current --last value reef-py.py list timers --pretty

I use it to get the current pH, temperature and time for an OLED display for my tank.
 
I’m not sure I understand correctly., there are too many things going on here. I’ll need lot more detail about the file driver setup , controller configurations etc and have to spend time to untangle this. If you think you are seeing bugs then please file a GitHub issue . It’s best to create a thread if you want to maintain some context. Else things get buried pretty quickly in this thread
Thanks I will. I do believe I see an error here with my first test als think it is not major issue.
 
I just pushed out an update to my "Reef-pi script utils". It includes a 'reef-py.py' command that provides a CLI for the API calls . It tries to mimic the reef-pi db command as much as possible. It also has full Bash completion support, to assist with available options and configured reef-pi ids. It can do some simple value extractions, pretty-print the JSON, or you can pipe the JSON into jq for more advanced options.
Examples:
reef-py.py show temperature_current 2 reef-py.py show ph_readings 7 --value current --last value reef-py.py list timers --pretty

I use it to get the current pH, temperature and time for an OLED display for my tank.
This is awesome. Now if there would be a way to trigger these from macro would make lot of sense instead using 2 schedulers.

I haven’t looked into this in details but if reef-pi would use crontab for its scheduling a whole new word would open.

Knowing there is a way to do this from bash may be the way forward at least for me. Would allow greater access to hardware not officially supported too.
 
I just pushed out an update to my "Reef-pi script utils". It includes a 'reef-py.py' command that provides a CLI for the API calls . It tries to mimic the reef-pi db command as much as possible. It also has full Bash completion support, to assist with available options and configured reef-pi ids. It can do some simple value extractions, pretty-print the JSON, or you can pipe the JSON into jq for more advanced options.
Examples:
reef-py.py show temperature_current 2 reef-py.py show ph_readings 7 --value current --last value reef-py.py list timers --pretty

I use it to get the current pH, temperature and time for an OLED display for my tank.
Do you notice the API for PH reading does not return the same current value that is on the Dashboard? Temp is OK, but ph seems to be an old value when using:
curl -b cookie.txt http://0.0.0.0:80/api/phprobes/{2}/read
 
Had to cobble together another box last night so I can control my new lights on my nem tank.

1614524677232.png


1614524697715.png




1614524726249.png
 
Still testing. As soon as I get this one assembled, I can test and determine if it's going to do what I need it to.

If all is good I'll order the next batch of boards that have more PWM pins, ground pins and a few other minor mods.
 
Still testing. As soon as I get this one assembled, I can test and determine if it's going to do what I need it to.

If all is good I'll order the next batch of boards that have more PWM pins, ground pins and a few other minor mods.
nice work, All I am missing is the RTC and a couple of extra i2c ports for flexibility or just repeat the pins of GPIO so next board can go on top but your ideas are already noted ;)
 

TOP 10 Trending Threads

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

    Votes: 28 45.9%
Back
Top
Home
Post thread…
Market
What's new