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

Martin Lowry

Community Member
View Badges
Joined
Sep 19, 2017
Messages
60
Reaction score
65
Location
Dover, NH
Rating - 0%
0   0   0
I've searched the threads coz I'm sure that I saw it somewhere... Can't find it! Can anyone help me with how I can choose which feeds are sent to AIO? AIO displays the first 10 in alphabetical order but not the feeds that I want. Sorry if this is a basic question but I'm a Noob with AIO.
 
Last edited:

Bigtrout

Valuable Member
View Badges
Joined
Dec 16, 2018
Messages
1,189
Reaction score
2,811
Rating - 0%
0   0   0
I've searched the threads coz I'm sure that I saw it somewhere... Can't find it! Can anyone help me with how I can choose which feeds are sent to AIO? AIO displays the first 10 in alphabetical order but not the feeds that I want. Sorry if this is a basic question but I'm a Noob with AIO.
In my experience when you first set up your pi, setup the things with the 10 feeds you want first. Then set up everything else and the extra feeds will be ignored and can be deleted from adafruit.
 

Martin Lowry

Community Member
View Badges
Joined
Sep 19, 2017
Messages
60
Reaction score
65
Location
Dover, NH
Rating - 0%
0   0   0
In my experience when you first set up your pi, setup the things with the 10 feeds you want first. Then set up everything else and the extra feeds will be ignored and can be deleted from adafruit.
Good point. Thinking on it, as I probably have to reverse engineer it, I may rename the devices in RPI to have the naming convention for temp probes PH and the things that I want that will show up at the top of the AIO feeds list. I think!
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,680
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
You should buy him a beer and see what else he has. He certainly has made my life easier!
+1 he has been a pillar for this project. He is little busy right now with all things life.
 

3sgterror

Active Member
View Badges
Joined
Nov 24, 2019
Messages
274
Reaction score
183
Rating - 0%
0   0   0
Any reason why this sometimes happens on the dashboard?

It seems to happen completely at random when I access the dashboard. Normally it only displays 2 decimal points.

I am on Reef-pi 4.0, using a leviathan hat on this iteration, if that plays into it at all.

I don't not see this happen with my 4.0 reef-pi running a robotank hat.
1607634656175.png
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,680
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
Hi all, got an issue with my pH probe setup I'm hoping someone can help with.

Right now when I add a new pH driver, input, and probe (all newly created to be safe), I get the following error when I activate or try to calibrate the probe:



I have a vague idea from my coding background of what might be causing this, but I want to see if anyone has experience fixing this before I blow up my .db and settings (because it's a pain to re-build all of that).

For further context, my first attempt to fix this involved manually tweaking the drivers in the .db file (via the terminal download to json/update commands), so it's very possible that my db file has something weird going on based on that manual update.

Happy to provide more info as needed, I'm just a little out of my depth on this one. Thanks in advance!
what ph board you are using? This is an i2c error. If you are using ezo boards, make sure to convert them in i2c mode using atlas scientific libray, they have good docs on their site. Make sure you are using the correct decimal representation of the i2c address, reef-pi is still needs to improve on this part (making user aware of i2c hexadecimal address -> decimal conversion)
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,680
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
Any reason why this sometimes happens on the dashboard?

It seems to happen completely at random when I access the dashboard. Normally it only displays 2 decimal points.

I am on Reef-pi 4.0, using a leviathan hat on this iteration, if that plays into it at all.

I don't not see this happen with my 4.0 reef-pi running a robotank hat.
1607634656175.png
its a bug that originates from nuanced handling of floating point numbers in go , we fixed a bunch places, but some still remained. Its on my plate to fix this (along with the Y axis limits)
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,680
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
I've searched the threads coz I'm sure that I saw it somewhere... Can't find it! Can anyone help me with how I can choose which feeds are sent to AIO? AIO displays the first 10 in alphabetical order but not the feeds that I want. Sorry if this is a basic question but I'm a Noob with AIO.
As of now reef-pi does not have the ability to selectively choose telemetry for adafruit. its all or none. you can use the trick that @Bigtrout has mentioned, but even in that case reef-pi tries to send all the data and fails (due to deleted feed or being rate limited by adafruit), which is benign, but probably not the right thing to do.
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,680
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
Is it possible to log "events" rather then just "errors"? I did a quick search and didnt find anything.
events as in? generally the trigger conditions are emitted as metrics in adafruit /promethes / mqtt.. you can treat those as event (definitely in mqtt). It will be awesome if you can detail how you plan to use such feature..
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,680
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
@Ranjib maybe you can help me fix this manually -- is there a way to edit the drivers list if I edit the json file manually? I know it's possible to edit individual drivers with the terminal command, but is it possible to edit the entire drivers file as a json?
theres no bulk driver editing feature right now. in database each object is stored as individual json entity.
If you are comfortable with some scripting this is easily doable outside reef-pi, using perl/python/ruby etc.
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,680
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
Yep, I've got one temp probe running. i2cdetect included below for reference:

1607612462454.png
what is the i2c address you have specified in the driver config? it should be 88.
 

Martin Lowry

Community Member
View Badges
Joined
Sep 19, 2017
Messages
60
Reaction score
65
Location
Dover, NH
Rating - 0%
0   0   0
As of now reef-pi does not have the ability to selectively choose telemetry for adafruit. its all or none. you can use the trick that @Bigtrout has mentioned, but even in that case reef-pi tries to send all the data and fails (due to deleted feed or being rate limited by adafruit), which is benign, but probably not the right thing to do.
Thanks @Ranjib . I've been messing with it this afternoon and it's a bit hit or miss. So far I've deleted unwanted feeds and others appear that are useful so I have what I need for now. Think I'm going to go in the Prometheus/Grafana direction but that's a whole different learning curve. :rolleyes:
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,680
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
Man get busy and blink and reef-pi is out with v4, congrats. :) Where can I go to find the release notes in the threads, anyone have that handy? Found it...wish my tank looked as nice as your @Ranjib I'm currently in Dino hades. Things are running so well on 3.x that I am always reluctant to mess with things.

On another note, I am wanting/needing to start dosing Kalk and I do not want to run it in my ATO, I have @Michael Lane hat and dosing module hooked up to a jaebo doser but having second thoughts on using the Jaebo. Thinking of going with w/ a BRS doser controlled by reefpi on a timer. What is everyone using for dosing, I have a Nano tank and overdosing is much easier to accomplish, I've given a lot of thought to try to make it as fail proof as possible just looking for some advice.

Thanks :)
I did a lot of tinkering with dosing setup in 2019. My end state was i can not do two part due to Ca not being that low (i do pretty regular water change) and alk additive spiking up ph,. I ended up using sodium bicarbonate only dosing, which fixed Alk without disturning Ca or Ph. Because of the ATO chart i kinda know how much water is going in the tank and just added the necessary sodium bicarbonate concentrated solution in ato water directly. The result as pretty amazing, since its much frequent but higher dilution adjustment which gave me way more leverage to adjust the values based on daily or twice/weekly Alk readings. Since moving to new house, things got complicated due to me being very busy with all sorts of work. But im getting back to the tank chores now, and i want to revisit the dosing subsystem with new rigor and vigor (read as stepper driver ) :-)
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,680
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
Thanks @Ranjib . I've been messing with it this afternoon and it's a bit hit or miss. So far I've deleted unwanted feeds and others appear that are useful so I have what I need for now. Think I'm going to go in the Prometheus/Grafana direction but that's a whole different learning curve. :rolleyes:
If you really like charts , please go for it. Its amazing. You can have a Pi 3/4 or even zero running prometheus and grafana (its as simple as the initial reef-pi installation), but it will open up the whole lot of metrics /charting possibilities. You will not regret. It will take some time, but hey so does this hobby, and we are here to help you out.
Grafana /Prometheus is what the big tech companies use , these tool are absolutely stellar. I get to see my 50+ pi metrics, their health, different sensors, behavior of ATO/temperature controller and much more. All charting customizations (boundary values, colors, graph style) are at your finger tip.
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,680
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
I’m not familiar with the 2 part probe at BRS. I looked real quick there and didn’t see it. Is it a double junction probe. If so then it should be fine.

the robotank board is communicating to the pi through i2c. Did you do this?

6. Setup reef-pi – Pi Clock Stretching for I2C
Note: If you installed reef-pi using the install script this page can be skipped as it will have been added.
The hardware on Raspberry Pi supports clock stretching however the drivers don’t so we need to manually adjust the clock speed on the Pi so it works with all I2C devices. This is required to use the Robo-Tank pH circuit.
clock stretching is required? Im not sure about this. My experience has been i2c errors are almost always due to wrong address configuration, for ezo and reef-pi ph board at least.

on related note, i noticed some confusion around why we are seeing i2c error when this is an analog input. Pi does not have analog input, we use ancillary circuit to do the analog input and that circuit is hooked up to pi using i2c , hence pH drivers are always i2c based.
 

Boostable

Active Member
View Badges
Joined
May 17, 2011
Messages
227
Reaction score
136
Location
Lake Mary, FL
Rating - 0%
0   0   0
events as in? generally the trigger conditions are emitted as metrics in adafruit /promethes / mqtt.. you can treat those as event (definitely in mqtt). It will be awesome if you can detail how you plan to use such feature..

Events as in anything that is triggered, switched or otherwise activated. (outlet, timers, on/off, ato, etc). Im my field (Industrial Instrumentation) we use event logs to verify functionality or success of a specific event/trigger. We use the event to trigger a change in state, that change in state confirms the action, be it a voltage/current change, load, etc. In the end I want to know the event actually did what I asked it to do. In Reef-Pi I can see an outlet change state on the dashboard, but I don't see it being logged that it actually happened. I know logging it does not give confirmation, however its a good start to at a minimum verify logic of a macro, timer, etc.

If this exists somewhere, please point me in the right direction.

Thanks for all you do.
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,680
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
Events as in anything that is triggered, switched or otherwise activated. (outlet, timers, on/off, ato, etc). Im my field (Industrial Instrumentation) we use event logs to verify functionality or success of a specific event/trigger. We use the event to trigger a change in state, that change in state confirms the action, be it a voltage/current change, load, etc. In the end I want to know the event actually did what I asked it to do. In Reef-Pi I can see an outlet change state on the dashboard, but I don't see it being logged that it actually happened. I know logging it does not give confirmation, however its a good start to at a minimum verify logic of a macro, timer, etc.

If this exists somewhere, please point me in the right direction.

Thanks for all you do.
most of the things you have mentioned should be logged as well as emitted as metrics. i,e. reef-pi logs as well as emits metric every time outlet state is changed. subsystem enable/disable (like enabling a specific timer) is only logged, if they do change equipment state, that will have log /metric trail as well. let me know if you need help with verifying any of these.

We can extend the telemetry sub-systems to include anything more sophisticated. I have some plans to accommodate metric backend (Adafruit, mqtt, Prometheus) specific nuances.. I can roll in anything relevant from event integration there.
 

arbiter42

New Member
View Badges
Joined
Sep 21, 2020
Messages
16
Reaction score
11
Location
Washington, D.C.
Rating - 0%
0   0   0
what is the i2c address you have specified in the driver config? it should be 88.
For the pH probe I have it at 99, which (I believe) is per the robo-tank manual. I know those are frequently updated though, so maybe I'm behind the times.

EDIT: changing the address to 88 (or making the probe/connector/driver new with that address) doesn't change the error I'm getting, sadly.

That error, for reference:
{"error":"write /dev/i2c-1: remote I/O error"} | HTTP 404
 

TOP 10 Trending Threads

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

  • 100% live rock + bagged sand

    Votes: 38 27.3%
  • 100% dry rock + 100% live sand

    Votes: 47 33.8%
  • 50/50 live/dry rock, 50/50 live/bagged sand

    Votes: 30 21.6%
  • 75% live rock, 25% live sand

    Votes: 14 10.1%
  • 25% live rock, 75% live sand

    Votes: 10 7.2%
Back
Top