I got taken away on a short notice work trip, but I didn't expect to see three pages of replies when I returned! You guys got way into it!
I am glad you spotted my folly with the = instead of ==, I'll fix that right away.
As for the suggestion that I should just pass delay(); an unsigned long- if you look at my code from page one, you will see that the array used AND the "pourdelay" ARE in fact unsigned long variables. I am only hoping you can spot where I am overlooking something I am passing delay that isn't- as that would be an easy fix!
The discussion as to how delay works was a bit over my head, but what I pulled from it is that even though delay accepts an unsigned long variable, it still won't count past a regular integer? (In the original post, I realized that 32 seconds alluded to it stopping after reaching integer length- I just hoped it wasn't true?)
So,if I follow discussion on the last page... I should create a new version of the delay function, which will be able to count higher but slightly less accurately? Let me know if I understood that incorrectly?
P.S. Due to the pumps I am using and the vertical distance being covered by the lines, the pour is very slow. I'll fix that later by ordering bigger pumps... maybe... it's still more convenient than digging out all the ingredients in a seven ingredient drink...- but for now anyways pour times can easily exceed 32 seconds even for regular sized drinks. Sorry, Goforsmoke- no giant drinks here
Additionally, with the power supply I have used- only one pump is capable of running at any given time. The idea that I should have the computer checking other sensors or running other pumps or doing anything at all whilst pumping isn't something I am interested in incorporating. The code already keeps track of every bottle and alerts me when they reach a certain level- which is all the help I require from it. When it is pouring- that's all I want it doing.
If I can fix this delay problem- I will be in business here. Fingers crossed that I can!