Forum Replies Created

Viewing 25 posts - 76 through 100 (of 4,199 total)
  • Author
    Posts
  • in reply to: Raspberry Pi 5 (bookworm) not working with OSPI? #79479

    Ray
    Keymaster

    I forgot to mention: if you run
    git log
    in the firmware repository, what’s the first few lines that’s displayed?

    in reply to: Raspberry Pi 5 (bookworm) not working with OSPI? #79478

    Ray
    Keymaster

    Can you check if this file exists on your system:
    /sys/class/gpio/gpiochip512

    Basically the build script uses this file’s existence to check if it needs to link with the gpiod library (which is needed for gpio operations in bookworm):
    https://github.com/OpenSprinkler/OpenSprinkler-Firmware/blob/master/build.sh#L41C11-L41C38

    in reply to: Manual needed for older system #79461

    Ray
    Keymaster

    From the picture, it looks like you have OpenSprinkler 3.0 AC-powered. You can point them to the OpenSprinkler support website:
    support.opensprinkler.com
    which has videos, user manuals, and answers to common questions.

    in reply to: Raspberry Pi 5 (bookworm) not working with OSPI? #79460

    Ray
    Keymaster

    Please follow the instructions here to update your firmware to the latest:
    https://openthings.freshdesk.com/support/solutions/articles/5000631599-installing-and-updating-the-unified-firmware-on-ospi
    Bookworm made breaking changes about how GPIOs are operated and we’ve updated the firmware to address that issue.

    in reply to: Error Code: 0x2D #79386

    Ray
    Keymaster

    Make sure the SD card is formatted to FAT32 and not other format. You can always reformat the SD card and try again.

    in reply to: ESP v3 EEPROM #79359

    Ray
    Keymaster

    Ah, ok yes, version 3.3 top board does have a 24C02 EEPROM, but it’s only used in order for the firmware to distinguish between versions 3.2 and 3.3, it’s not used to store any data. What’s going on is that 3.3 and 3.2 are otherwise the same except the pin ordering for the wired Ethernet jack are different (3.3 is for W5500 module and 3.2 is for ENC28J60 module). Without any ‘signature’ the firmware will not be able to tell these two apart. So I added a very cheap I2C EEPROM as a way for the firmware to detect which version it is. There are no other spare GPIO or analog pins for this purpose. So an I2C chip would be the easiest.

    in reply to: ESP v3 EEPROM #79351

    Ray
    Keymaster

    OTA update itself doesn’t reset WiFi and configurations, what does is the firmware change across major revisions, such as from 2.1.9 to 2.2.0. If you are updating the firmware within the same revision (i.e only the minor revision changes), then it doesn’t reset WiFi and configurations. For example, updating from 2.2.0(1) to 2.2.0(3) will preserve all settings. The main reason updating across major revisions wipes out flash is that usually these major revisions involve major flash memory changes or partition table changes (for example, the file system on earlier firmwares used SPIFFS, now it’s LittleFS), as a result, a flash memory wipe-out is necessary and cannot be avoided.

    For that reason, we try to keep new firmware updates within the same major revision, until it becomes necessary to change the flash layout again.

    There is no EEPROM on ESP8266 — all files and data are stored in flash memory. The module (ESP-12F) has 4MB flash, among which 1MB is used for the firmware, 1MB is for OTA update buffer, and 2MB are left for data.


    Ray
    Keymaster

    Minor revisions (4) and (5) are on Github but they are not officially released/announced. (4) addresses the issue caused by breaking changes in GPIO controls with Raspbian Bookworm; (5) fixed an issue introduced in (4) that only affects OpenSprinkler 3.x and it’s not relevant to OSPi/RPi. So neither of these two versions changes the HTTP API which remains the same with minor revision (3).

    MQTT instructions can be found on our support website:
    https://openthings.freshdesk.com/support/solutions/articles/5000859089-how-to-use-mqtt

    It currently only supports outputting information through MQTT (i.t. MQTT publishing). You cannot yet use MQTT to trigger an action on OpenSprinkler (i.e. MQTT subscription). It’s quite easy to modify the firmware code to implement subscription. The last time we tried to do this, the developers did not agree on the APIs to use so we stalled there (then the pandemic happened and things got slowed down dramatically). So if you want to trigger an action, at the moment you need to either use the HTTP API, or implement MQTT subscription yourself.

    in reply to: MQTT Reporting #79331

    Ray
    Keymaster

    You can’t activate master zone independently. Master zone can only be activated by another zone that is associated with it. You can use a dummy zone, set it to activate master 1 (or 2, whichever you need). Then when you activate that dummy zone, it activates the master.


    Ray
    Keymaster

    First, could you clarify if the firmware you installed is version 2.3.3? That’s not a firmware that we released (our most recent one is 2.2.0(3)).

    Second, when you send curl command, and the http get link has & sympbols in them, you need to wrap the command in quotes like “http://blah.blah “, otherwise those & would be interpreted differently by command line.

    in reply to: Re-enable disable zone station #79290

    Ray
    Keymaster

    Click the lower-right corner icon, then ‘Show Disabled’. Also, ‘Show Disabled’ is available in Edit Options -> Station Handling.

    in reply to: Water level in master/remote configuration #79163

    Ray
    Keymaster

    All APIs use the station index and not the name, because names can be duplicate and indices are unique. The master controller does NOT query the remote controller for its zone names. Once you set up the master/remote configuration, you should only modify zones on the master controller and generally should not modify anything on the remote controller. If you want to name a remote station differently, do it on the master controller. As I said, a remote controller should be regarded as just a passive ‘expander’ for the master controller.

    in reply to: Feature Request: NTP by hostname and not IP #79162

    Ray
    Keymaster

    The firmware already uses a pool of predefined NTP servers, all defined using hostnames:
    https://github.com/OpenSprinkler/OpenSprinkler-Firmware/blob/master/opensprinkler_server.cpp#L2285

    The custom IP address is just for users who want to use their own NTP server (typically their router) to avoid accessing the Internet. It’s certainly possible to modify the firmware (and UI) to allow hostname for the custom NTP server too, but the predefined set of servers are typically sufficient for most users.

    in reply to: Current 2.3.3 API and MQTT docs? #79157

    Ray
    Keymaster

    The MQTT feature currently only supports publishing (i.e. for notification etc.), it does NOT support subscribing yet (i.e. receiving command). It’s quite easy to add support for subscription, but it hasn’t been done yet.

    If you run a command using curl, you should put the command around “”, otherwise it will cut off at special characters like &. In fact, you should also use the -g option because characters like [ will also throw it off because it’s a globbing character. For example:

    curl -g "https://demo.opensprinkler.com/mp?pid=0&uwt=0"

    should work (note that the demo website is not password protected so I ignored the pw= parameters. Also note that the password needs to be a md5 checksum, so your ‘opendoor’ will not work. Instead, you should use the md5 checksum of opendoor, which is a6d82bced638de3def1e9bbb4983225c

    in reply to: Water level in master/remote configuration #79156

    Ray
    Keymaster

    When a controller is set up as remote controller, it does not run its own programs. It only listens to the master controller. Conceptually a remote controller mimics a physical extension to the master controller (like an expander), but it’s not hardwired directly to the master controller. So the water level on the remote controller is irrelevant. Only the water level on the master controller applies. The master controller sends command to the remote controller to turn zones on and off, and those commands carry the specific zone run time.

    If you want the remote controller to apply its own specific water level, then you cannot directly use the default master-controller feature. You can either modify the firmware to implement what you want, or you have to write an external script to send command to the remote controller.

    in reply to: OpenSprinkler and PWS #79034

    Ray
    Keymaster

    You need to modify the code. Most noticeably, the ETo algorithm will throw an error if the weather data source is pws:
    https://github.com/OpenSprinkler/OpenSprinkler-Weather/blob/master/routes/adjustmentMethods/EToAdjustmentMethod.ts#L20

    in reply to: OpenSprinkler and PWS #79021

    Ray
    Keymaster

    1) At the time the ET algorithm was implemented, solar radiation was not a required field by WU. So while some WU stations report solar radiations, a lot didn’t. I am not sure about what’s the current situation, whether it’s required now or not, but if you are able to host your own weather service, then

    2) You can modify the weather code to allow using ET with WU. In fact, users who host their own weather service primarily because they want to customize the weather code. So what you were asking regarding the ‘difference’ is mainly that you can modify the code and enable ET with WU, or you can customize it in any other way you want. I am not familiar with Ecowitt. The OpenSprinkler weather code:
    https://github.com/OpenSprinkler/OpenSprinkler-Weather
    supports several weather providers, it’s relatively easy to add additional providers, as long as you have their APIs.

    in reply to: NTP (Time Server) and OSPi #78954

    Ray
    Keymaster

    The NTP IP in the settings do not apply to OSPi — on OSPi and any Linux-based system, the firmware uses the system time. So these options values are ignored. However, it does use the time zone obtained from the OpenSprinkler server to calculate the local time.

    in reply to: Hunter Solar Sync? #78922

    Ray
    Keymaster

    I thought the solar sync only works with Hunter’s own controllers. It is not a on-off type of sensor, it sends some kind of encrypted signal that encodes the solar radiation data. I don’t think this can work with OpenSprinkler or OpenSprinkler Pi.

    in reply to: OSPi enclosure with cutout for Ethernet #78882

    Ray
    Keymaster

    Very neat. Thanks for sharing!

    in reply to: Maximum current per channel? #78865

    Ray
    Keymaster

    I can’t find the electric spec sheet of GVA-24. Everywhere I looked, it just says 24V, it doesn’t even specify if this is AC or DC.

    in reply to: Maximum current per channel? #78860

    Ray
    Keymaster

    Each channel can drive up to 1 amp. Are you sure your valve draws 0.6A at holding state? Most sprinkler valves draw about 0.2 to 0.25A at holding state (and 0.6A impulse, which is only for a split second when it opens). In any case, the power adapter should be ok to drive a single 0.6A valve as long as you have only one open at a time. You can always buy a 24VAC adapter with larger current rating if needed.


    Ray
    Keymaster

    So exactly how many is ‘more than 2 valves’? The 500mA transformer might be able to run 3 or 4 at the same time, but it’s definitely pushing the limit. If you want to run more than 2 simultaneously, you should buy a 24VAC transformer with higher current capacity. We recommend jameco.com, you can search 24VAC transformer, make sure it’s ‘AC to AC’ transformer. Each open valve draws about 200mA, so if you want to open 4 at a time, you need about 1 amp current. We don’t recommend running more than 4 at the same time — if you do want that, you should get an external relay to help drive more current. The circuit on OpenSprinkler is not designed to drive a large amount of current.

    Transformer with higher current rating will NOT damage the controller — as long as it outputs 24VAC. Current rating means how much current the transformer is capable of delivering. The actual current draw depends on how much the solenoids need. It’s analogous to say that just because your power socket is rated 15A doesn’t mean it’s pumping 15A all the time — how much is actually delivered depends on how much the device needs, or if a device is connected at all. 15A just means it’s capable of delivering 15A if needed.

    in reply to: MQTT password length #78764

    Ray
    Keymaster

    The maximum length of MQTT user name and password are both 32:
    https://github.com/OpenSprinkler/OpenSprinkler-Firmware/blob/master/mqtt.cpp#L78
    It’s certainly possible to increase these further, but 98-character password? That seems excessively long. Is that even necessary?


    Ray
    Keymaster

    I forgot to mention: not sure if this is anything useful to you: although you should’t insert multiple zones into one port, you CAN, however, insert one zone simultaneously into multiple ports (i.e. you split the wire into multiple, so that you can insert them to multiple ports). This allows the same physical zone to be opened by multiple logic zones, so that if any of the ports opens, the physical zone opens. This has been used by some customers in situations where the same zone needs to be associated with different pump/master zones in different programs. For example, if a physical zone A needs to trigger master 1 in program 1, but master 2 in program 2, the current firmware does not allow you to dynamically change associated masters on the fly. But if you insert zone A simultaneously to say, port 5 and 7, and have zone 5 associate with master 1, and zone 7 associate with master 2, then in program 1 you can schedule zone 5 and program 2 schedule zone 7. This way, both programs will result in physical zone A to open, but they trigger different master zones.

Viewing 25 posts - 76 through 100 (of 4,199 total)