Forum Replies Created
-
AuthorPosts
-
RayKeymasterSorry to hear that. The unified firmware hasn’t been thoroughly tested on OSBo, and I will try to see if we can reproduce the issue. Just to make sure, is your code up to date (i.e. have you performed git pull to grab the latest version)?
RayKeymasterYes. The 12MHz shown in the schematic is wrong (I must have forgotten to change it from OS 2.1 schematic).
RayKeymasterI’ve actually thought about this before and it’s definitely possible. Because OpenSprinkler uses HTTP GET commands, to trigger a valve on another controller you just need to send a GET command to the other controller. The firmware always send GET commands to the opensprinkler cloud server to query weather, so in theory there is no technical barrier. Specially, you can define any station as a remote station (by giving it’s ip address and station index). Of course this will require changing the firmware code, and for the moment we can use the station name to provide the ip address and station index (just like how RF stations use the station name to encode the RF signal).
I don’t think we have time to fit this into the upcoming firmware 2.1.4, but it should definitely be considered for future updates.
By the way, you mentioned that the RF system is not very reliable. One thing I should mention is that I’ve found a few cases where you need to tweak the signal timing a little bit, especially if you have the more recent OS 2.2 or 2.3 (which uses 16MHz clock). Specifically, check the last 4 digits of the HEX code, and try to increase that to see if it improves reliability. Those 4 digits define the signal timing used for RF signals. It is scaled (75%) internally by the firmware to account for processing overhead. However, since 2.2 and 2.3 use faster mcu clock, the processing overhead is likely smaller so you need to increase the timing data to counter-act the scaling. In the future we really need to add a self-calibration procedure to measure the processing overhead more accurately.
RayKeymasterBecause the GUI doesn’t show OpenSprinkler 2.3 yet, I assume you just selected OpenSprinkler 2.2 as the device? I doubt this is going to work, because OpenSprinkler 2.2 and 2.3 use different microcontrollers (though they are pin compatible). To be specific, when you say the same issues, does this include the LCD issue or it’s only the network issue?
RayKeymasterFirst of all, the second MAC address ’00:69:69:2d:31:00′ indicates that you have gone back to an earlier firmware, which uses software MAC address. That MAC address is a software-defined address. OpenSprinkler 2.3 uses a hardware MAC, and all recent firmwares support the hardware MAC chip.
Second, since there is only one firmware (2.1.3) that we’ve released for OpenSprinkler hardware 2.3, if you have gone back to an earlier version of firmware, that must have been an incorrect firmware (i.e. for a different microcontroller or frequency). That explains the LCD issue.
I just realized that we haven’t even updated the Firmware Updater to support OpenSprinkler 2.3 (because all OpenSprinkler 2.3 are shipped with the latest firmware 2.1.3 already). So if you’ve ever updated the firmware, you would not be able to recover it. We will release the new Firmware Updater right away to address this.
So in summary, I think the issue you’ve seen is due to flashing an incorrect firmware.
RayKeymasterMaybe you can use a download tool like FlashGet which support resuming download if it gets disconnected for any reason.
Also, in case you are using Windows, be sure to use a third-party unzip tool, like 7-zip or WinRAR. Do NOT use Windows’s build-in unzip tool because it’s a piece of crap and cannot handle large files.
RayKeymaster@rjalex: if your OS is not connected to the Internet most of the time, the weather feature would not work at all, less to say varying the parameters. The weather feature requires querying the cloud server for weather data. So without Internet connection it won’t work.
RayKeymasterBy the way, you should export your current configurations before switching. The reason is that your current programs and settings are stored in a file name nvm.dat, and that file exists in different folders when the firmware was started as cron job vs. started as /etc/init.d job. So after you switch, you may notice that all settings and programs have been reset to factory default. There are two ways to restore: one is to import the configurations, the other is to locate the nvm.dat and simply copy it and overwrite the one in your OpenSprinklerGen2 folder. Of course if you don’t mind you can always just re-create the programs and settings.
RayKeymasterHi Sean, here are the instructions:
1) go to the firmware folder (should be OpenSprinklerGen2 by default)
2) run ‘git pull’, you don’t need to run it in sudo
3) run ‘./build.sh ospi’. This will compile the firmware and install a script /etc/init.d/OpenSprinkler
4) run ‘sudo crontab -e’ and remove or comment out the last line (which was added when you installed the unified firmware initially).
5) restart, and check if you can access http://x.x.x.x:8080 where x.x.x.x is your RPi’s IP address.I will check with Samer if I’ve missed anything here, but I think that’s what I did last night.
RayKeymasterIt’s very likely that the valves will start just fine with less than 22VAC. As I explained in this blog post:
http://rayshobby.net/understanding-24vac-sprinkler-valves/
the solenoid valves typically require a high impulse voltage to get energized. Once energized, the voltage can go much lower and that’s enough to keep it energized.The firmware will not be able to adjust the output voltage — this completely depends on the output voltage from your transformer, and the firmware has no control over it.
RayKeymasterWell, I don’t have enough knowledge to answer this question. The water pipes are all designed to endure certain water pressure, right? For example, if you turn off your faucet, the pressure will build up internally but shouldn’t burst your pipe. So are you saying that when the pump kicks in, it creates significantly higher pressure than the normal water pressure inside the pipes?
RayKeymasterThanks for reporting. We did receive a small number of similar reports of the Tp-Link adapter issues, and we are going to stock some powerline adapters in the near future. Thanks.
RayKeymasterWhen you say you can’t download the file, can you provide more specifics? Did the download start and fail to complete, or the download couldn’t even start?
“failed to bind socket: -1” means you have another service running at port 8080, and it conflicts with the unified firmware.
RayKeymasterYou are right that the TVS’s are connected differently on OSPi vs expansion board. This was not a mistake. When OSPi was designed, the TVS’s are designed to be connected to the COM wire. Later, when the expansion board was designed, they have to be connected to GND, because the expansion board has no access to the COM wire (that runs outside of the expansion board). However, since there is a TVS (TVS0) between COM and GND on OSPi, the two connections are basically equivalent — in the event of transient voltage, the TVS0 will provide a short path. If I am to redesign OSPi, I can change the TVS’s to be connected to GND, which makes it consistent with the expansion board. Hope this makes sense.
RayKeymasterAccording to the Zimmerman algorithm:
https://opensprinkler.freshdesk.com/solution/categories/5000022938/folders/5000099525/articles/5000017312-using-weather-adjustments
70F is used as the reference temperature (i.e. temperature above that will result in more watering and temperature below that will result in less watering). Because the algorithm calculates a watering percentage, it will go smoothly to 0 as temperature lowers.I am trying to think how to balance customization need vs. simplicity. As is, you can always customize the weather script (which is written in Python) and host it on your own server. This way you have complete control over how you’d like to implement the rules. However, this will be a technical barrier for average users. I think it should be possible to support a per-user, customizable script stored on the cloud server. Users can modify the script according to their own need (and we can provide a few default ones). This will provide the most flexibility.
RayKeymasterIt’s pretty straightforward to log the weather parameters. I am debating on whether to add this to the immediate next firmware update. The main reason is that adding this support would incur some UI changes (perhaps adding a separate table to display the weather parameters, since we don’t want these to be mixed with the sprinkler station log data).
RayKeymasterWe did some extensive tests and it turns out that setting the firmware to run as cron job may have lead to the issue. So we’ve changed to use a startup script to set the program to run on startup. If you perform ‘git pull’ you should see a newly added file build.sh. It will compile the firmware and add a startup script to /etc/init.d/. Make sure you remove the existing entry on crontab (sudo crontab -e, remove the last line). Then restart RPi and see if it works. Thanks.
RayKeymasterWe did think about allowing some parameters to be changed and there is no technical barrier to implement this. On the other hand, we also want to be cautious exposing these parameters to average users, who may not want to see these options. Anyways, for the sake of getting started, are there any other parameters of the Zimmerman method that you’d like to be able to adjust?
We are also working towards adding the California watering restriction, and working out ET based weather algorithm (which hopefully will become the default algorithm to use once it’s done).
RayKeymasterThe part number is 7D560K
RayKeymasterOK cool. About translation, sure you can help. The translation is crowdsourced by using Get Localization available at:
http://www.getlocalization.com/OpenSprinkler/
I think Hungarian is already one of the supported languages, but you can help validate the translation.
RayKeymasterOK, if I understand it correctly, you mean you see the device USBasp in Device Manager? Is there a question mark next to it? ‘Cause if there is a question mark, that means the driver didn’t work properly.
Can you post the log file? I would need to check the exact error it reports. By the way, since you already know your device is 2.1, you don’t have to click on ‘Detect Device’, you can simply select OpenSprinkler_v2.1 from the dropdown list, and click on the Update Firmware button. The reason is that if you clicked on ‘Detect Device’ first, the device will exit bootloader and so you will have to re-enter bootloader before clicking on Update Firmware.
RayKeymasterI don’t understand what you mean by “If the program is just a simple GUI I think the command line won’t work, either.”?
RayKeymasterTo help diagnose the problem, could you let me know:
1) Did you use the pre-configured SD card image, and then installed and switched to the unified firmware?
2) or Did you start from a fresh raspbian image, and installed the unified firmware?
3) Did you configure the system to use the DS1307 RTC in any way?Basically I need to be able to reproduce the issue in order to debug the code. Thanks.
RayKeymasterI will make some high-level comments: in general if you are looking to build a custom system, OpenSprinkler would be a pretty suitable platform, due to its open-source nature and the availability of spare pins which you can use to extend the hardware functionality. A while back I modified an OpenSprinkler to become a biology experiment controller:
http://rayshobby.net/modified-opensprinkler-becomes-a-biology-experiment-controller-2/
it controls two linear actuators, two solid state relays, one air valve and it monitors CO2 level using a CO2 sensor.The existing OpenSprinkler firmware can probably cover most of your need already. You will likely have to change the code to support EC sensor. Because OpenSprinkler is based on the Arduino software platform, if you have any sensor in mind, you can just Google ‘EC sensor Arduino’ and you should find some links with useful information, perhaps even with an Arduino library or source code you can make use of directly.
This is just my high-level comments. I did take a quick look at your description of the system, and I am pretty sure it can all be done. The question is how much hardware and software changes it involves, hopefully not much.
RayKeymasterRegarding the first question, I will leave it to Samer because he is more familiar with the weather station and the UI.
About rain sensor, please check the user manual -> page 14, the answer to question ‘What’s the relationship between Rain Delay, Rain Sensor, and Weather-based Adjustment?’
https://opensprinkler.freshdesk.com/solution/categories/5000022938/folders/5000147083/articles/5000522596-user-manual-firmware-2-1-1-current- -
AuthorPosts