Holman WiFi Tap timers intergration?

Did some more irrigation work over the weekend. I found that there is plenty of water flow in WX2 to drive three hoses with sprinklers. The 12mm hose is the bottleneck, so putting a double splitter after the tap timer creates a whole bunch more flow than piggy backing the sprinklers on the same line. I now have a splitter on each of the outlets with three lines like so:

The photo only has one splitter, that was taken before I added the second one.

Question. With the Tuya Local integration, is the Manual Timer and Time remaining supposed to work? I tried yesterday and found that the timer setting was glitchy. It was set, reflected in the Tuya app, then a couple of minutes after it reset to the original time. Perhaps thatā€™s because I set it after I turned it on?

Time remaining seemed to stay at zero the whole time.

Yeh - all the base64 dps are in the device file as ā€œdiagnosticā€ which equates to read-only. I donā€™t know enough to know if that is a limitation in tuya-local, or the device files themselves ā€¦

Iā€™ve never seen that ā€œTime leftā€ value get set properly. The ā€œManual Timerā€ value seems to update correctly though with the time remaining

I tried to look at the code, but havenā€™t look hard. It seems they should be writable. Are they set to diagnostic manual or is base64 always diagnostic? What if you donā€™t set them as such?

Yep cool, thanks. Let me play around with it some more.

From looking at other device files, it looks like it should be possible. Having a quick play I couldnā€™t get anything working.
e.g

  - entity: switch
    name: Inching
    category: config
    icon: "mdi:reload"
    dps:
      - id: 44
        type: base64
        name: switch
        mapping:
          - mask: FF0000
          - dps_val: 0
            value: false
            mask: FF0000
          - dps_val: 1
            value: true
            mask: FF0000
  - entity: number
    name: Inching duration
    category: config
    icon: "mdi:reload"
    dps:
      - id: 44
        type: base64
        name: value
        unit: s
        range:
          min: 0
          max: 3600
        mapping:
          - mask: 00FFFF

Interesting page with all these compatibility issues: https://support.holmanindustries.com.au/hc/en-au/articles/4416773404569-How-do-WX1-and-WX2-Tap-Timers-work-with-the-WXMS-Smart-Moisture-Sensor-s-

Iā€™d love to see it, I have a bx2 and would love to avoid battery checking!

hey thereā€¦ is that season again, gonna get myself an WX1 this timeā€¦ any movement on easy integration? all im wanting is ability to turn the tap on for 60s every 15-20min

Yeh, Tuya Local guidance above has gotten me up and running again very quickly.

Iā€™d love to invest more time in a better solution, but fwiw, basic monitoring and control that comes out of the box now plus a few Node-Red flows has me happy - I press ā€œWater the lawnā€ and off it goes :smiley:

Here is the implementation: Holman BX1 ESP Adapter Ā· GitHub, havenā€™t really got time to tidy it up though. A few notes on what Iā€™ve found out with regards to BX1:

  • You will need to unpair it from your phone app, and pair it with the ESP board in order for the board to control the tap.
  • The pairing step is a bit funny, each BLE session is relatively short lived (around 2-ish seconds each). The ESP device is paired with the BX1 by setting some random passcode upon connected, then the BX1 will somehow remember the ESP device.
  • To start watering, IIRC the package consists of 10 bytes. The first byte will need to be 1, third, forth and fifth bytes are hours, mins, and seconds for which the tap will run (e.g. [1, 0, 1, 2, 3, ... (don't care)] runs the tap for 1 hour, 2 minutes and 3 seconds). It will automatically stop.
  • To force stop the tap, just send 10 0ā€™s.

You can see in the implementation I keep setting up the passcode multiple times, itā€™s not necessary though, but easy to just do it that way. If you fail to connect to the Tap, just turn the tap off, donā€™t let it run forever because constantly nagging the device can drain its battery very quickly. Itā€™s possible to check the charges left on the device battery, but I just donā€™t bother doing that :smiley:

2 Likes

And WX2 just been added to the latest (2023.10.0) release of tuya-local!

Is there anyway to just use a BT dongle plugged into Home Assistant? So just using the HA Bluetooth integration?

I think it is possible, you might need to write some python code though, my HAS is too far from the tap so I couldnā€™t do it

What does thsi mean? Does this make things easier somehow?

Struggling to navigate this.

Yes - if you want WX2 (or WX1 which was already there) integration, tuya-local is the easy way. Not as many features or control as funtastixā€™s method, but good engouh for me to automate watering.

Thanks @ izevaka! This was a monsterously confusing with all the different ways people have tried to take a stab at this, but your way worked.

Spent a few days reading about how to integrate the Holman WX1 hub (socket+WX1 timer) into HA. Can only get the local key for the hub so I gather the socket and WX1 are entities off this?!?
I have created a device in local tuya based on the DIPS and added the yaml to the local tuya devices folder as there was not one present.

Any advice as I just want to automate the socket and water timer. nothing fancy.

Hi Ben,
Can you help clarify how you got it working. The script calls for the local key for both the socket and the hub as ā€œkey from APIā€. My query on the IoT platform does not show a local key for either the socket or the tap timer, only the hub.
Also, the IP address, is that from the hub to the two devices or do I need to use the hub ip address on my network?
Thanks

Sorry - was offline for a while. I canā€™t help on how to do it with local tuya, as Iā€™ve only used tuya-local.