BlitzWolf® BW-IS11 - Wireless Siren - Esp8266?

Hi, I was checking this new Wireless Siren, do you know if it’s based on esp8266 so in the future can support esphome or custom firmware?

Source:
https://www.blitzwolf.com/Wi-Fi-Smart-Siren-Alarm-p-744.html

Hello,

I got myself one of these, too. Nice piece of hardware. Looks well built and loud too!

Now if only someone came up with a way to use it in HA automations, that would be awesome!

The WB3S Module is not an ESP8266 and not flashable.
Though the pin layout of the WB3S Module equals ESP-12. You could transplant it.

Do you know if it’s possible to connect to homeassistant ? Thanks

I believe that now it’s possible to flash this siren

Has anyone taken the plunge after having esphome finally supporting the chip natively (ESPHome 2023.9.0 - 27th September 2023 — ESPHome)?

Would appreciate any feedback.

Hi, a new update on this thread. I have everything working on esphome with libretuya component.
Product: BlitzWolf® BW-IS11 Wi-Fi Smart Siren Alarm - 90dB Alarm Soun
Exploit: tuya-cloudcutter

1 Like

I also managed to install esphome in this device, by using tuya-cloudcutter with profile bk7231t-common-user-config-ty-1.1.71-sdk-1.0.2-40.00.json.

BE AWARE that this NOT a fully working config.

In esphome, the device specific configuration I added was the following:

# Disable logging via UART, we need it for the Tuya MCU
logger:
  id: component_logger
  baud_rate: 0

# Becken Wifi chip WB3S/BK7231T - https://developer.tuya.com/en/docs/iot/wb3s-module-datasheet?id=K9dx20n6hz5n4
# Connected pins to board:  TXD1/RXD1/RXD2/TXD2/PWM1 and GND on one side, VCC on the other
# TXD1 and RXD1 are connected to Tuya MCU as per below UART defined connection
# LibreTiny board identification
bk72xx:
  board: wb3s

# Tuya MCU identified as HC32F003C4PA (https://jlcpcb.com/partdetail/XHSC-HC32F003C4PATSSOP20TR/C784649)
# Initialize the UART that connects to the Tuya MCU (via TXD1 and RXD1)
uart:
  rx_pin: P10
  tx_pin: P11
  baud_rate: 9600

# Register the Tuya MCU connection (https://esphome.io/components/tuya)
tuya:

# Siren State in form of problem binary sensor (similar to LocalTuya)
binary_sensor:
  - platform: "template"
    id: binary_sensor_siren_state
    name: "${device_name} State"
    device_class: problem
    icon: mdi:alarm-light
    lambda: |-
      if ( id(select_siren_mode).state == "Off" ) {
        return false;
      } else if ( id(select_siren_mode).state != "" ) {
        return true;
      } else {
        return {};
      }

# Siren Operation Mode (as in TuyaIOT platform)
# https://developer.tuya.com/en/docs/iot/f?id=K9gf47snd3n03
select:
  - platform: tuya
    id: select_siren_mode
    name: "${device_name} Mode"
    enum_datapoint: 1
    optimistic: true
    options:
      3: "Off" #normal
      1: "Light" #alarm_light
      0: "Sound" #alarm_sound
      2: "Sound + Light" #alarm_sound_light

# Siren Muffling/Mute (as in TuyaIOT platform)
# https://developer.tuya.com/en/docs/iot/f?id=K9gf47snd3n03
switch:
  - platform: "tuya"
    id: switch_siren_mute
    name: "${device_name} Mute"
    switch_datapoint: 16

This is how the device will look like in HA once added:

And how to trigger the different siren modes:

@diogopms Maybe you can mark this post as solution, to make it easier to be found when someone is looking for it in the future.

3 Likes

Warning! This code is NOT complete. Flashing the esphome bin file will work, but then you cannot flash it again, because it is missing information.
Amongst others, “ota:” is missing and this makes it impossible to flash it over the air from that moment on!
This rendered my tuya alarm useless, because I cannot use it, I cannot reflash it and I cannot use the exploit again either.
Going to look for a way to flash using an usb-uart adapter / soldering.

This is the complete code (just change devicename, wifi, wifi password and the key:

esphome:
  name: tuyasirene1
  friendly_name: tuyasirene1

substitutions:
  device_name: tuyasirene1

wifi:
  ssid: MyWiFi
  password: MyWifiPW
  
# Disable logging via UART, we need it for the Tuya MCU
logger:
  id: component_logger
  baud_rate: 0

# Enable Web server.
web_server:
  port: 80

# Becken Wifi chip WB3S/BK7231T - https://developer.tuya.com/en/docs/iot/wb3s-module-datasheet?id=K9dx20n6hz5n4
# Connected pins to board:  TXD1/RXD1/RXD2/TXD2/PWM1 and GND on one side, VCC on the other
# TXD1 and RXD1 are connected to Tuya MCU as per below UART defined connection
# LibreTiny board identification
bk72xx:
  board: wb3s

# Tuya MCU identified as HC32F003C4PA (https://jlcpcb.com/partdetail/XHSC-HC32F003C4PATSSOP20TR/C784649)
# Initialize the UART that connects to the Tuya MCU (via TXD1 and RXD1)
uart:
  rx_pin: P10
  tx_pin: P11
  baud_rate: 9600

# Register the Tuya MCU connection (https://esphome.io/components/tuya)
tuya:

ota:

# Siren State in form of problem binary sensor (similar to LocalTuya)
binary_sensor:
  - platform: "template"
    id: binary_sensor_siren_state
    name: "${device_name} State"
    device_class: problem
    icon: mdi:alarm-light
    lambda: |-
      if ( id(select_siren_mode).state == "Off" ) {
        return false;
      } else if ( id(select_siren_mode).state != "" ) {
        return true;
      } else {
        return {};
      }

# Siren Operation Mode (as in TuyaIOT platform)
# https://developer.tuya.com/en/docs/iot/f?id=K9gf47snd3n03
select:
  - platform: tuya
    id: select_siren_mode
    name: "${device_name} Mode"
    enum_datapoint: 1
    optimistic: true
    options:
      3: "Off" #normal
      1: "Light" #alarm_light
      0: "Sound" #alarm_sound
      2: "Sound + Light" #alarm_sound_light

# Siren Muffling/Mute (as in TuyaIOT platform)
# https://developer.tuya.com/en/docs/iot/f?id=K9gf47snd3n03
switch:
  - platform: "tuya"
    id: switch_siren_mute
    name: "${device_name} Mute"
    switch_datapoint: 16

# Enable Home Assistant API
api:
  encryption:
    key: "Pr4h55wFWY9AoK6lFB6xquasDQ3y3CShFTuY1MLdaPI="
1 Like

I’m sorry to hear, but I clearly stated the following above:
In esphome, the device specific configuration I added was the following

Maybe it wasn’t clear enough that it wasn’t a full working config…

1 Like