Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Robo-Tank v3.0 is Ready
#1
Hi, I have an update ready, the big feature in this one is custom rules so I thought I should explain it. Next I'll be doing the logs and graphs, then it'll be where it was but better. With the two Arduino Due's it runs very fast, as an example the code to read 5 analog sensors and run through 30 rules, 15 of them active, it does it in 1 millisecond. :)  There's also no delays in the controller sketch so the processor never stops running no matter what equipment is running, previously it paused when the dosing pump was running.

First, I added a procedure that Niksunen on the forum was kind enough to contribute, thanks Niksu! :)  This runs quietly in the background and pings a Google server every 10 minutes to make sure the controller is still connected to the internet, if the ping fails it reconnects to the network.

The first part of the update is a page "port assignments" where you can assign what ports do what. This is the plans for the near future.

Port 6-9 can be a DS18B20 temp sensor or DHT22 humidity/temp sensor. Later I'll add the option so they can read an analog/digital sensor as well. Today port 6-9 will only read a DS18B20 the DHT22 option is coming.

Port 10-13 can be used for a lot of different equipment. The ground is switched so it can turn DC accessories on/off. The port has 12v but you can easily use a 6v or 24v external power source if needed. This pin is PWM so it'll also be able to change the speed of fans or whatever. There's also a pin available on each port that can put out a digital or analog signal to control digital powerheads like the Jebao or Tunze. Technically you can control 8 pieces of equipment on the 4 ports. Today it will only turn on/off one of the pins on each port using a custom rule.

Port 14-17 will have options later, the first thing will be flowmeters.

Port 18-22 will work with any 5v digital or analog sensor, if someone has a sensor that won't work let me know and I'll see what I can do. Today these are the only settings that affect anything. Remember if you use the Optical sensor used for the ATO you need to set the jumper on the controller board otherwise it'll be damaged. When an analog sensor is read it loops 3 times reading the sensor every loop, then the last value is stored and the final reading is the most common number out of 10 readings. This helps smooth out the readings.

So when you configure the controller you'll want to adjust what you have plugged in each port. Only the settings for port 18-22 do anything today. The others should be left the default setting. These settings will be used so values and icons can be changed though out to match what's plugged in.

[Image: ports1.jpg]

Next is the custom rules, this took a lot of work but overall I'm quite happy with how it turned out. I definitely plan to improve it once other equipment has been added. For now there can be a total of 30 rules, I'll probably be increasing it to 50, seems like a good number. 

When you go to the rules page you get a list view. Each page shows 5 rules, at the top it'll tell you how many are active. If there's more than 6 rules the next button in the bottom right hand corner shows up so you can toggle through them. The rules are sorted by rule type, they show up in the same order you see when you add a rule and select the parameter to use. You can't disable a rule, if you don't need it press the delete button and it'll will be gone. 

The page is split into 6 columns.

1st column shows the parameter and value to trigger the rule with a delete button
2nd column is AC outlets (outlet number is under it)
3rd column is dosing pumps (5 characters of the custom name is under it)
4th column is the accessory ports (the port number is under it)
5th column shows the the dosing pump reset timer
6th column shows the options to skip AC outlets based on scheduled

And in the buttom right hand corner is the "add rule" button.

[Image: custom_rules1.jpg]

When you press the add rule button you're presented with all the parameters that can be used to trigger the rule, once you select a parameter it'll ask to confirm and take you to the next page.

[Image: custom_rules2.jpg]

Once you selected the parameter you get a page that allows you to setup what happens. At the top it'll show you the parameter you selected, now you can choose if the rule should be less than or great than a specific value that you can set. Then you select any of the AC outlets, dosing pumps or accessory ports to control. Each rule can only turn on/off 8 pieces of equipment as the list page gets messy with too many icons. If you need more create two rules. 

You'll also see an option "dosing pump reset timer". This is an important setting if you want to dose using the rules. For example, without this if a float switch was being used for a rule and it was flipped a couple times in a row the dosing pump would run twice. With this option you can set a timer so the dosing pumps don't run again no matter what the parameter reads until the timer has expired. The timer can be set from 0 - 720 minutes (12 hours) so it would never dose more than twice a day. If a rule is setup using a dosing pump and the controller is restarted the dosing pump won't run until the sensor is flipped both ways.

Finally there's two options on the right side "skip outlet actions if outlet schedule is running" and "skip outlet actions if outlet schedule is not running", these can be used if you don't want the rule to trigger if the schedule for the outlet is on or off. For example if the rule turned on outlet 1 and 2 and you selected "skip if schedule is not running" outlet 1 might only be turned on if outlet 2 happened to be off based on the schedule. If both outlets were off based on the schedule neither would turn on. 

[Image: custom_rules3.jpg]

I also got the manual mode sorted out for the AC outlets, I really made a mess of that last time with the red power icons. Now the power icons on the home page will always be green if on and gray if off, when an outlet is put in manual mode (by going to the power page and manually changing if its on/off) a red M will show up on the icon in the top left hand corner. Now you can see if the outlet is on or off and if its in manual mode. When an outlet runs in manual mode nothing will turn it on/off, all the schedules and rules are ignored. This is good if you do maintenance and turn something off you don't need to worry about it coming on by surprise. When the "resume" button on the home page is pressed all the outlets go back in auto mode. 

To be clear, when you press the "resume" button on the home page, all the AC outlets go back to the mode based on the daily schedules, then a couple sends later the custom rules will update the outlets based on them. If a dosing pump is in the rule and the resume button is pressed the pump will not run again.

There's also a bunch of visual issues fixed and other possible problems found along the way.
Reply to top
#2
There is bug, so warning levels or anything else don't get saved to sd card. So every reboot they reset back to 0 (and then temp show red, because overtemp) :D  But luckily it is easy to fix, so i think Rob will do it later. Also bug in custom rules. When you create rule like water temp, and press up arrow to increase value, touch coordinates is little off, you have to press up and down arrow left side, about 30 pixels. Easy to fix this too :)  

sdcard bug is found in line 11561, you have to add
Code:
readOnly = 1;


and change line 11650 to

Code:
readOnly = 0;
Reply to top
#3
Great work... ;-)

Reply to top
#4
Crap, always has to be something I forgot. Just uploaded new sketches with those fixed.

Thanks Arne, hopefully the dosing pumps look good this time around.
Reply to top
#5
Rob, is the sync procedure back in in this version?
I have this feeling I need to restore defaults... ;-)
No problem, I will just write down my settings.

Reply to top
#6
Yeah sync is back.

You shouldn't need to restore defaults, when you uploaded the new sketches the display should have said it was going to install v3.0, this adds the new eeprom locations.
Reply to top
#7
Great Rob, that's good news. That makes updating a lot easier... ;-)
Thanks!

Reply to top
#8
So the old function does not work:
- Strom (Weather)
- Graphs
- Power schedule (time 2, 3 4 )
Reply to top
#9
(01-28-2017, 07:56 AM)Irass Wrote: So the old function does not work:
- Strom (Weather)
- Graphs
- Power schedule (time 2, 3 4 )

Power Schedule works, like you see in picture :) Storm and graphs not yet. If i understand correctly Rob brings graphs back (better than previously) in next update :) 

   
Reply to top
#10
Does not work no reaction to touch, I can do only ON OFF

Restore Defaults and works :)
Reply to top
#11
(01-28-2017, 07:56 AM)Irass Wrote: So the old function does not work:
- Strom (Weather)
- Graphs
- Power schedule (time 2, 3 4 )

Hi Irass, next update will include storm and graphs and I haven't forgotten about that 5th light mode and clock screensaver. :)
Reply to top
#12
I only have one freshwater tank (discus 180Gallon) all the rest are reef tanks. Every tank I have ever tried storm settings on ever sense it started years ago on reef central many people will tell you it does nothing for your fish's health. All it does is mostly scare the crap out of them. I fully understand it happens in the wild I grew up in Florida where I seen all the fish disappear just before the storm comes evidence to me they don't like the sudden flashes of light and most people have it as a hay look at this cool thing I have to torture my fish with.

ok I am off my soap box just my 2 cents worth
Reply to top
#13
Robo-Tank has good settings for lightning storm so you don't scare the crap out of your fish. :) You can set a low and high level for the flash, you can adjust it so the flash isn't much brighter than the current brightness, if your lights are dim the lightning will be dim. When I add it again it'll be better than before for sure and it was pretty good. I agree it does nothing for the fish but a nice show.
Reply to top
#14
I understand what you're saying Rott.
I don't know whether the fish experience this as "normal" or as something scary...

Rob, do you have a priority list for the software development?

Reply to top
#15
Yeah I have a priority list, I don't like to discuss too much as some might not like it and things can always change. :)
Reply to top
#16
I just want to make sure my post about lighting hasn't affendeded anyone.
Reply to top
#17
I have a feeling it offended everyone.  K05163  How could Dale offend anyone.  K05106 We love you and everyone.  K05118
Reply to top
#18
Lol yup?
Reply to top
#19
(01-30-2017, 10:24 PM)rott Wrote: I just want to make sure my post about lighting hasn't affendeded anyone.

No Rott, it didn't affend me at all, but I'm not going to respond to you anymore.... JUST KIDDING !!! K05163

Reply to top
#20
Just changed the version number to 3.0 to make life easier. ;)
Reply to top


Possibly Related Threads...
Thread Author Replies Views Last Post
  Robo-Tank v5.13 is Ready Rob F 58 933 05-24-2019, 10:28 PM
Last Post: Rob F
  Robo-Tank v5.12 is Ready Rob F 34 655 04-30-2019, 12:35 PM
Last Post: fietsenrex
  Robo-Tank v5.10 is Ready Rob F 157 2,215 04-18-2019, 10:43 PM
Last Post: Rob F
  Robo-Tank Isolated PH Circuit Rob F 49 1,893 04-12-2019, 05:47 PM
Last Post: Rob F

Forum Jump:

Current time: 05-26-2019, 07:55 AM