ReefRhythm - Advance Stepper Motor Controller with OpenSource

Actually I'm thinking to limit max RPM in firmware by default. With option to disable limits in settings.
I will make the maximum rpm equal to the maximum calibration point.

Mostly its because user can accidentally start motor with 1k RPM when setup(peristaltic pump head etc) can't handle it. Or to prevent dumping full bottle of traces in aquarium.

And as a bonus, this will make the calibration graph more readable because only the desired range will be displayed in it
A reasonable limitation:)

Why do you need to make several calibration points...? Isn't it possible to recalculate the data for dosing with one point?
 
A reasonable limitation:)

Why do you need to make several calibration points...? Isn't it possible to recalculate the data for dosing with one point?
Because pumps have non-linear performance.
Current firmware requires a minimum of 2 points

If you don’t want to do calibration at many points, I suggest just doing it at the highest PRM(this will be the limit) and at 1 revolution/min, for example.
 
Because pumps have non-linear performance.
Current firmware requires a minimum of 2 points

If you don’t want to do calibration at many points, I suggest just doing it at the highest PRM(this will be the limit) and at 1 revolution/min, for example.
Understood. Thank you!
 
In testing;)
Screenshot 2024-05-21 161033.png
 
Can you explain what the “Analog control” option is for and what its function is?
 
Can you explain what the “Analog control” option is for and what its function is?
It's for integration with external controllers. Or if you want to add manual control by a variable resistor.

You can connect an analog signal to the physical port of the controller to control flow.

Some 3-part controllers can output sensor values as a 0–10V signal, for example. And you can control the pump with it.

As an option, you can enable 100% trigger in Analog Control to make the pump "always on" and control it by turning on and off power if you want.
 
It's for integration with external controllers. Or if you want to add manual control by a variable resistor.

You can connect an analog signal to the physical port of the controller to control flow.

Some 3-part controllers can output sensor values as a 0–10V signal, for example. And you can control the pump with it.

As an option, you can enable 100% trigger in Analog Control to make the pump "always on" and control it by turning on and off power if you want.
Thank you for the clarification!
 
Is the OTA upgrade broken? The OTA page stalls at 0%. Manually following the link returns a 404.
Hi, it's because of new release, please restart controller and try again.


Sorry for the inconvenience. I am still figuring out how github releases work. I have the theory that you catch state when a new release is already published, but the github link is not working yet.
 
"Maintenance mode" by software and hardware button is not in this release because I'm too lazy to solder it to my pumps...

And I'm preparing for my honeymoon vacation in June:)
There are so many things to do to prevent possible disasters in my tank. So maybe it'll be some weeks before the next major release, but feel free to add some concerns; it's easy to fix some bugs or tinker with some functionality.
 
The restart has worked. Thanks and congratulations on your wedding! Does the software automatically attempt to reconnect to the MQTT broker if the connection drops? I've noticed on some occasions it disconnects and the only way to reconnect is to restart the pump.
 
The restart has worked. Thanks and congratulations on your wedding! Does the software automatically attempt to reconnect to the MQTT broker if the connection drops? I've noticed on some occasions it disconnects and the only way to reconnect is to restart the pump.
It has, but I just checked one negative scenario and found out a crash.
Thank you for feedback.

Fix in v1.1.2, please upgrade leave feedback if problem still reproducing.
 
Namely, under what conditions is the notification received when the dosing pump empties the reagent container, from % ...?
 
Namely, under what conditions is the notification received when the dosing pump empties the reagent container, from % ...?
Currently, when it's reaching 0,

I can add some custom notifications with an adjustable level. If you have a view of how it should be, feel free to share your thoughts.
 
Last edited:
I made a series of improvements to the MQTT feature. Should be more robust now.
Also, the controller will publish uptime (~ every 20 seconds) and version, so it'll be easier to localize MQTT connection issues.

Note that controllers now subscribe to the $SYS/broker/uptime topic.
This is mandatory for keeping the connection alive.
It exists by default in the Mosquito MQTT broker, but if you use another broker, please leave a message if this "topic" does not exist.
 

Attachments

  • Screenshot 2024-05-24 141919.png
    Screenshot 2024-05-24 141919.png
    35.6 KB · Views: 31
Currently, when it's reaching 0,
It is more logical when notifications will come from the % specified, and this gives time to mix the next reagent:)

You have already done it)
Thank you!
 
Last edited:
I would also like to suggest some innovations... :)

It would be nice to develop a dashboard on the main page and display the main parameters of the pumps, for example:
  • Total dosing volume per day (ml)
  • Reagent remaining/ container volume (display a picture)
...

To also be able to instantly switch to the pump from the dashboard...;)
 

IF YOU HAD TO TAKE A REEFING EXAM, WOULD YOU PASS?

  • Yes!

    Votes: 32 45.7%
  • Not yet, but I have one that I want to buy in mind!

    Votes: 9 12.9%
  • No.

    Votes: 26 37.1%
  • Other (please explain).

    Votes: 3 4.3%
Back
Top