Issue thread (GDO blaQ): Australia & New Zealand device compatibility

We’ve been working with a couple of customers in Australia and New Zealand who are having compatibility issues with the GDO blaQ. Chamberlain operates in the region under the Chamberlain and Merlin brands of garage openers.

We’ve found some differences in the protocol and speed of communication with the Australian openers. Particularly, the openers in Australia are apparently not required to have an optical beam obstruction sensor like they are here in the US, and without that the garage door won’t respond to a “close” command. However, it works with the toggle command so we had to re-arrange some things to only call toggle when working with these openers. So, this adds a Toggle Only option which you can flip to enable this.

We’re currently testing this as a release candidate, which will soon be merged into a firmware update. Testing this custom firmware build can be done by Home Assistant users using ESPHome dashboard to manage their firmware locally. If you can test it this way, just copy-paste this config:


substitutions:

  ####
  # NAME
  # By default, the name of the ESPHome device is "konnected-xxxxxx" where xxxxxx is a unique identifier. The device's
  # hostname on your network is also defined by the name, defaulting to "konnected-xxxxxx.local". Edit this variable to
  # customize the name and hostname. Note: only lowercase characters, numbers and hyphen(-) are allowed.
  name: konnected
  friendly_name: GDO blaQ
  project_name: konnected.garage-door-gdov2-q
  project_version: "1.2.0-rc1"
  garage_door_cover_name: Garage Door
  garage_light_name: Garage Light
  garage_openings_name: Garage Openings
  garage_lock_name: Lock
  garage_motion_name: Motion
  garage_obstruction_name: Obstruction
  garage_motor_name: Motor
  garage_button_name: Wall Button


  ####
  # GARAGE DOOR CLOSE WARNING DURATION
  # Duration to blink the warning LED and beep the buzzer before the garage door closes.
  garage_door_close_warning_duration: 5s

  ####
  # ADDITIONAL SETTTINGS
  sensor_debounce_time: 200ms
  blink_on_state: "true"

  ####
  # INTERNAL MAPPINGS
  # DO NOT EDIT these when using Konnected hardware
  uart_tx_pin: GPIO1
  uart_rx_pin: GPIO2
  input_obst_pin: GPIO5
  warning_beep_pin: GPIO4
  warning_leds_pin: GPIO3
  status_led: GPIO18

external_components:
  - source: github://konnected-io/konnected-esphome@door-op-fixes
    components: [ mdns, secplus_gdo ]

####
# PACKAGES
# Each package includes a Garage Door Opener feature described
# Remove or comment out any packages that you do not need or want.
packages:

  remote_package:
    url: https://github.com/konnected-io/konnected-esphome
    ref: door-op-fixes
    refresh: 5min
    files:

      ####
      # CORE
      # This package is required and sets up core ESPHome features.
      - packages/core-esp32-s3.yaml

      ####
      # WIFI
      # Enables WiFi connectivity and diagnostics. Uncommet below to enable WiFi.
      # wifi: !include packages/wifi.yaml
      - packages/wifi.yaml

      ####
      # WARNING LED
      # Enables the onboard warning LED light, with strobe effect. Used to visually warn of garage door automatic closing.
      # warning_led: !include packages/warning-led.yaml
      - packages/warning-led.yaml

      ####
      # PRE-CLOSE WARNING
      # Enables a pleasant and customizable pre-close warning tone  using the onboard piezo buzzer. Used to audibly
      # warn of a garage door automatic closing.
      - packages/buzzer-rtttl.yaml
      - packages/pre-close-warning-tones.yaml

      ####
      # STATUS LED
      # Enables the onboard blue status LED as an activity/error indicator
      # status_led: !include packages/status-led.yaml
      - packages/status-led.yaml

      ####
      # SECPLUS GDO
      # The logic and capabilities of the GDO communication
      - packages/secplus-gdo.yaml

      ####
      # SELF-TEST
      # Self test script used to validate the hardware post-assembly
      # - packages/gdo-self-test.yaml

####
# DASHBOARD IMPORT
# Enables automatic discovery and upgrades via ESPHome Dashboard
# more: https://esphome.io/guides/getting_started_hassio.html
dashboard_import:
  package_import_url: github://konnected-io/konnected-esphome/garage-door-GDOv2-Q.yaml@door-op-fixes
  import_full_config: false

####
# LOGGER
# more: https://esphome.io/components/logger.html
logger:
  level: VERBOSE
  # hardware_uart: UART0  -- uncomment on batch 2403; not needed on batch 2404 and newer
  logs:
    ledc.output: INFO
    vl53l0x: DEBUG
    sensor: INFO
    json: INFO
    api: DEBUG

####
# NATIVE API
# Enables the native ESPHome API
# more: https://esphome.io/components/api.html
api:

####
# OTA UPDATES
# Enables over-the-air updates
# more: https://esphome.io/components/ota.html
ota:

improv_serial:

esp32_improv:
  authorizer: false

web_server:

esphome:
  platformio_options:
    lib_deps:
      - https://github.com/konnected-io/gdolib#command-delay-rx-fix
    build_flags:
      - -DUART_SCLK_DEFAULT=UART_SCLK_APB
1 Like

As a follow on I in New Zealand and have a Merlin Commander Elite.

[Commander Elite MS105MYQ - Go Merlin]

Took a punt that it would work and got the Konnected Unit a few days ago.

Installed it (connecting the wiring into the serial port - I assume to just get connected I don’t have to wire in port 2 just yet as that is currently used by a hardwired connection from my C4 controller) and doesn’t seem to be quite working. I get a constant series of protocol errors, albeit after leaving it for a few hours it seemed to work briefly enough to tell me how many times the door had opened (and I managed to get the warning sound that the door was going to close) and has not worked since. Example of errors below.

22:33:57 [D] [number:012]e[1;31m[gdo_main_task]e[0;36m ‘Rolling Code’: Sending state 2024849.000000
22:33:57 [I] [secplus_gdo:043]e[1;31m[gdo_main_task]e[0;32m Rolling code set to 2024949, retryng sync
22:34:03 [I] [secplus_gdo:032]e[1;31m[gdo_main_task]e[0;32m Synced: false, protocol: Security+ 2.0
22:34:03 [I] [secplus_gdo:034]e[1;31m[gdo_main_task]e[0;32m Client ID: 1638, Rolling code: 2024970
22:34:03 [D] [number:012]e[1;31m[gdo_main_task]e[0;36m ‘Rolling Code’: Sending state 2024970.000000
22:34:03 [I] [secplus_gdo:043]e[1;31m[gdo_main_task]e[0;32m Rolling code set to 2025070, retryng sync
22:34:08 [I] [secplus_gdo:032]e[1;31m[gdo_main_task]e[0;32m Synced: false, protocol: Security+ 2.0
22:34:08 [I] [secplus_gdo:034]e[1;31m[gdo_main_task]e[0;32m Client ID: 1638, Rolling code: 2025091

@David_McCallum is this with the beta firmware config linked above? Or using the original firmware on the device?

It was the original firmware as when I tried to update it using the connected app it failed to update.

Have tried again now but app says it can’t open a socket.

Unit is not currently responding to a web page request either. Unifi says it has been connected for 1 hr 57 which implies it has reset itself for some reason a few hours ago. Have turned power off and on and no change.

Was about to send and then web page started up, interestingly uptime from my unifi says it rebooted itself.

Regardless have tried to firmware update again without success, getting same socket error, and website has gone down again which is unsurprising

pinged it and getting mix of success and time-outs.

Pinging 192.168.1.196 with 32 bytes of data:
Request timed out.
Reply from 192.168.1.196: bytes=32 time=866ms TTL=64
Reply from 192.168.1.196: bytes=32 time=703ms TTL=64
Request timed out.

Ping statistics for 192.168.1.196:
Packets: Sent = 4, Received = 2, Lost = 2 (50% loss),
Approximate round trip times in milli-seconds:
Minimum = 703ms, Maximum = 866ms, Average = 784ms

Got some errors which may have been about the time of the firmware update attempt.

wonder if the continuing failure to connect is due to the ongoing attempts to connect with the opener overtaxing the system?

I’ll try and update via USB tonight

@David_McCallum this beta firmware for Australia/NZ is not distributed yet in the Konnected app or via install.konnected.io. It will be once we have a bit more testing done.

Currently you can test this release candidate by copy/pasting the above config YAML into ESPHome dashboard and installing the update via ESPHome (add-on to Home Assistant or run via command line).

If you’re not using Home Assistant then you can wait till we’ve tested and merged this update in to the main line firmware release.

Hey @nate thanks for adding compatibility for us folks from down under. Following on from Door close command not working on Merlin GDO wih blaQ · Issue #61 · konnected-io/konnected-esphome (github.com) I’ve now tried to install this release candidate but I get

warning: Could not find remote branch command-delay-rx-fix to clone.
fatal: Remote branch command-delay-rx-fix not found in upstream origin
VCSBaseException: VCS: Could not process command [‘git’, ‘clone’, ‘–recursive’, ‘–depth’, ‘1’, ‘–branch’, ‘command-delay-rx-fix’, ‘GitHub - konnected-io/gdolib’, ‘/data/cache/platformio/cache/tmp/pkg-installing-kzi_eqfm’]

If I change

   - https://github.com/konnected-io/gdolib#command-delay-rx-fix

to

  - https://github.com/konnected-io/gdolib

then it compiles fine. I can see the toggle option and best part, I was able to close the door!

although it seems now every time I open or close it, I have to click Re-sync in order to be able to toggle it again. E.g. if it’s closed I press open, it opens, but then the only way to close it is to first click Re-sync, otherwise it doesn’t do anything and the state of the garage door is wrong.

@Ben_Anderson you beat me to it, I was just about to post an update here. I’ve made it a bit easier for you all to test pre-release and release candidate firmware. The command-delay-rx-fix branch is gone now, and we’ve created a dev branch to track the bleeding edge / experimental firmware changes.

Two ways to update:

1. Update via USB cable at install.konnected.io

Connect your computer to the GDO black using a data-capable micro-USB cable. Go to install.konnected.io, select the GDO blaQ and ESPHome firmware. Now you have the option to choose the stable or dev build. The release candidate for AU fixes is in the dev build.

2. Update via ESPHome

If you’re using HA and have ESPHome add-on installed, you can edit your config to build from the dev branch. Open the ESPHome dashboard, click Edit on your GDO blaQ device, and modify the branch identifier in the dashboard_import line to dev, like this:’

From:

packages:
  konnected.garage-door-gdov2-q: github://konnected-io/konnected-esphome/garage-door-GDOv2-Q.yaml@master

To:

packages:
  konnected.garage-door-gdov2-q: github://konnected-io/konnected-esphome/garage-door-GDOv2-Q.yaml@dev

That’s great. It is in fact much easier to update now. This new version works really well. I’ll do some more testing later but I’m really pleased that I can make full use of it all now. Cheers.

1 Like

Great to hear! Please do share any feedback you have after a day or two of use. I’m hoping to get this released soon.

It’s continued to work great over the last few days. The only potential bug I’ve identified is that it can’t close to a certain percentage. If for example it’s fully open, I can’t close it to 50%. I can only fully close it. I can however open it to a percentage value such as 10% open.
Perhaps when closing to a percentage it sends the regular close command instead of the toggle close command.

1 Like