March 19, 2015 at 1:30 pm #36114
I create a copy of an existing program, change the name and get an error “you have not selected any stations” even though the program that was copied shows the station in green.
I try to add a new program, I set the days of the week, i set a station to run for one hour and hit save and get an error “please check input and try again”.
I currently have 14 programs. Documentation says i can have 36.
But I can’t add any new programs (maybe since the upgrade to 2.1.3?).March 19, 2015 at 1:34 pm #36115
I guess i found the answer in the newer manual.
2.1.1 only supports 14 programs.
Why is that limit set? Can it be raised?March 19, 2015 at 6:59 pm #36121
You are right that the current firmware support up to 14 programs. Because programs must be stored in non-volatile memory (EEPROM) space, and there is only a limited amount of EEPROM on the microcontroller (2K bytes), it has to be limited. Earlier firmwares (2.0.9 and prior) do not support individual water time per station within a program, hence they allow a large number of programs. The current firmware supports individual water time per stations within a program, therefore the number of programs is significantly lower. Still, for most users 14 programs are well above sufficient.
If you are not using all 48 stations, one immediately solution you can use is to modify the firmware code to limit the number of stations. Specifically, change the MAX_EXT_BOARDS:
to fit exactly the number you need. For example, if you only have 24 stations, change MAX_EXT_BOARDS to 2 (e.g. for a total of (1+2)*8 = 24 stations). This will halve the data per program, and consequently should allow almost twice as many programs. This does require you to compile the firmware code, but will definitely allow you to use more programs.July 14, 2015 at 11:18 am #39259
Does the current app support more programs than 14?
I do think that this is a weakness of the design. 48 station but only 14 programs.
My first attempts was with 4 stations and I bumped the program limit easily. Granted I was really trying to finesse the programming.
I do see information on adding external eeproms for expansion on other arduino projects.
I am a long ways from being an expert. Any comments to the feasibility of this?July 15, 2015 at 2:46 pm #39279
@Randy: this is not a limitation of the app — it’s a limitation imposed by the firmware. If you have OpenSprinkler 2.3, it actually has extra EEPROM space that isn’t fully utilized yet. To be fair, I think OpenSprinkler already provides a lot more programs than the standard sprinkler controllers you can find on the market. Most standard one give you choice of 3 to 4 programs, each with 4-6 start times. OpenSprinkler provides 14 programs, and the start times can be either 4 fixed times or defined on an interval. I am curious how complex your programs are such that you will reach the limit with only 4 stations.July 16, 2015 at 11:35 am #39302
I don’t disagree with the programmability of system compared to the off the shelf products out there, at least on the low end of the number of stations. If you are uniformly watering than this is not an issue. It implies that multiple stations is more about water pressure drop than programmability of the stations. In other words, the flexibility of the system is inversely proportional (ok not exactly) to the number of stations.
For the record, I do like this system.
I am currently using mine to water potted plants, and I have a bunch. Potted plants are quite a bit more finicky to control moisture levels in the soil. Different stations have different water needs in; plant water needs, sun availability, and pot size. Each station has a basic watering program. Each station also should really have deep watering program for X number of days. I also have a fertigation system that is “Y” into the system, another program for each station. I really would like 3 programs per station, preferable 4 for any future expansion, i.e. different fertilizing needs. I am looking at adding another 4 to 5 potted plant stations in addition to the current lawn watering system.
I understand the EEprom limit, I was wondering if the software is flexible enough support an EEprom programming change without modification?
I saw in another thread the suggestion of moving the firmware to an SD card. You would essentially remove any memory limits, the issue then would then be addressability. I think this is a fantastic idea.July 16, 2015 at 8:08 pm #39314
@Randy: in theory it’s fairly easy to change a couple of macro defines in defines.h and that will instantly enable twice as many programs. Assuming you have OpenSprinkler 2.3 (or OSPi/OSBo), which has twice as much EEPROM space, you can change the NVM_SIZE from 2048 to 4096. Then suitably increase MAX_PROGRAMDATA to use the extra 2048 bytes. However, I should be cautious in saying so because the app might be making certain assumptions about the number of programs and so this needs to be checked and verified.
Just in case, I assume you are using a fairly recent firmware, which supports per-station water time per program, is that right? If you are using an old firmware, that only supports a uniform water time per program, and that was a big limitation.July 17, 2015 at 10:28 am #39343
I don’t have access to the system right this second, but yes I can set stations to have different water times within a program.
I will see if I can handle this, it won’t happen this weekend, and I can’t say when I will get to it. Life has other priorities at the moment. But I will report back about the results when I do.
- You must be logged in to reply to this topic.