OpenSprinkler › Forums › OpenSprinkler Unified Firmware › Announcing OpenSprinkler Unified Firmware 2.2.1(0)
- This topic has 11 replies, 6 voices, and was last updated 4 months, 3 weeks ago by Ray.
-
AuthorPosts
-
July 25, 2024 at 10:39 pm #79648
RayKeymasterHi All, we have just released OpenSprinkler Unified Firmware 2.2.1(0). This is a major revision from the previous 2.2.0(3). Most of the changes are focused on supporting OTC (OpenThings token) and new integration features. The release notes are on github:
https://github.com/OpenSprinkler/OpenSprinkler-Firmware/releases/tag/221(0)Associated firmware user manual, API document, and support articles that explain how to use these features are all available at our support website:
https://support.opensprinkler.comA big thank-you to Andrew F. and Nate P. who implemented most of the features, as well as a number of other github contributors. A bit of background about this firmware: it started with the goal of supporting OTF on OpenSprinkler Pi / Linux. The implementation was inspired by the work of Stefan, our German distributor, and we modified the WebSocket library to support fragmentation, which resulted in significantly reduced memory footprint and the ability to transfer larger data over multiple fragments. Subsequently we found with the reduced memory footprint, it became feasible for ESP8266 to make SSL connection to remote servers. This opened the door to a number of features: HTTPs station, Remote OTC station, and Email notification, all of which require secure connections.
Among them, the remote OTC station feature is quite handy if you need to have a master controller manage one or more remote controllers that may or may not be on the same network. Previously the remote station only supported defining a remote controller using its IP address. This is quite limited as this is largely only suitable for cases where all controllers are on the same network. With the remote OTC station, the master controller can communicate with remote controllers that exist on different WiFi / Lan networks, and the connection is through the secure OpenThings cloud server.
The Email notification feature provides an alternative method to IFTTT for receiving notification messages. The IFTTT notification uses Webhooks, a feature that now requires a paid IFTTT subscription plan. To work around this, we implemented Email notifications: it allows the firmware to directly send email messages using an SMTP server and authentication data. IFTTT still has the advantage that it supports all of email, SMS, and phone push notifications. But if you prefer a free method that doesn’t require monthly payment, the Email notification is a perfect alternative.
In addition to the above, the MQTT subscription feature has long been requested and has remained on the todo list for a long time. We now finally have the first implementation of it. It’s not perfect and it only supports a limited set of actions, but hopefully this will make it easy to expand the feature in the future.
If you are interested in trying out the new firmware, please follow the firmware update instructions available at the support website (link given above). Most of the new features require UI / app version 2.4.1. The web version of this UI has already been released (at ui.opensprinkler.com), as well as all of iOS / Android / macOS apps. Please remember to make a backup copy of your current configurations as updating firmware across major revisions will trigger a factory reset. Speaking of that, the main reason this firmware has a major revision change is that the string option’s character limit has been increased, to accommodate for longer configuration strings, such as the email configuration and MQTT configuration. We had one user who requested this because they are using TheThingNetwork which generated an MQTT password that’s about 100 characters long. We are hoping this is the last firmware that still triggers a factory reset upon major firmware update — the future firmwares will store option values in JSON format so that they can be preserved across firmware updates.
If you have any comments / suggestions / bug reports, feel free to post them here, or submit a support ticket at the support website above. Thanks.
July 28, 2024 at 4:34 am #79662
franzsteinParticipantHello Ray,
I’ve compiled the OpenSprinkler Unified Firmware 2.2.1(0) but got some warnings and an UnknownPackageError: Could not find the package with ‘greiman/SdFat @ 1.0.7’ requirements for your system ‘windows_amd64’ at the end of the complilation. However, the firmware.bin file was created successfully.Can you please have a look at the attached logfile and tell me if I can use the firmware.bin file to update my Opensprinkler DC 3.1?
Thanks and regards
Franz
July 28, 2024 at 4:37 am #79663
franzsteinParticipantChanged the file ending to txt
Attachments:
July 28, 2024 at 7:17 am #79667
RayKeymastergreiman/SdFat @ 1.0.7 is a SD card library required to compile for OpenSprinkler 2.3 (based on AVR microcontroller). Are you trying to compile for OpenSprinkler 2.3? That version has been discontinued close to a decade ago. If not, you can comment that section out in platformio.ini so it will ignore that part.
July 29, 2024 at 3:02 pm #79691
franzsteinParticipantI’ve compiled the Firmware for OpenSprinkler 3.x according to the article Compile the OpenSprinkler Firmware. I was only wondering for the compilation warnings and the error received. However, using the resulting firmware.bin file to update my OpenSprinkler works perfect. Thanks for the update and the new features available now.
August 2, 2024 at 5:47 pm #79761
ogniwoParticipantI’ve installed it today on my Pi Zero WH and there’s an issue with OTC integration – in diagnostics the OTC has “connecting” status all the time. Cannot connect from my mobile device with OTC.
Also in system status the weather service displays an error, but on the main site there’s a weather report available.Attachments:
August 4, 2024 at 7:25 pm #79775
MidwoodParticipantI just updated one of our OS units to the new firmware. The extra functions of the MQTT was what I was interested in, I now see the ‘on’ state of the master valve via MQTT, however it does not update on valve closing only on opening. I did read that duration was not going to show and that is fine. Early days I understand.
Thankyou for the update’sAugust 5, 2024 at 8:20 am #79779
RayKeymasterAs described in the release notes:
https://github.com/OpenSprinkler/OpenSprinkler-Firmware/releases“The event when a master zone is turned on has been added to MQTT, IFTTT, and Email notifications.”
Currently it does NOT send notification when master is turned off. There are two reasons: 1) this is added mainly to address some customer’s requests that they want the ‘master on’ event to be sent on MQTT in order to trigger other actions; the ‘master off’ event doesn’t matter; 2) it was easy to change the firmware to add support for ‘master on’ event while ‘master off’ requires significant more changes. This is mainly because the way master zones are implemented are different from regular zones, and unlike regular zones, master zones don’t appear in the running queue, nor do they have scheduled duration, their on or off status is completely determined on the fly by other zones’ statuses. For that reason, we didn’t add ‘master off’ but this can be added in the future.August 13, 2024 at 4:22 am #79871
NicolaParticipantI installed 2.2.1 rev0 in my OS 2.3, after a hard reset and followed by another hard reset.
The email notification settings are not visible (app 2.4.1 both on PC and Android).
Do they work for OS 2.3 ?August 13, 2024 at 5:17 am #79872
RayKeymasterAh, sorry for not being clear: email is NOT supported on OS 2.3 (AVR microcontroller). This is because email notification requires secure HTTP connection, which is beyond the capability of OS 2.3.
September 8, 2024 at 3:39 am #80101
Bob SternParticipantThe API 2.2.1(0) documentation, section “8. Get Station Names and Attributes”, says the variable “stn_seq” is deprecated, but it is still present for backwards compatibility.
I’d like to warn people that stn_seq is NOT returned by the “Get Station Names and Attributes” command (/jn). If your JSON decoder requires this key, it will fail.
September 8, 2024 at 8:43 am #80103
RayKeymasterThat’s a good call: stn_seq has been removed since it has been replaced by stn_grp. I will fix the document.
-
AuthorPosts
- You must be logged in to reply to this topic.
OpenSprinkler › Forums › OpenSprinkler Unified Firmware › Announcing OpenSprinkler Unified Firmware 2.2.1(0)