Description
Request Z-Stack 3.x.0 Zigbee coordinator firmware with RTS / CTS Hardware Flow Control enabled and compatible with the new Sonoff Zigbee 3.0 USB Dongle Plus adapter by ITead which hardware support Hardware Flow Control when enabled via dip-switch:
https://sonoff.tech/wp-content/uploads/2021/09/Zigbee-3.0-USB-dongle-plus-firmware-flashing-1-1.docx
(Guide above linked from https://sonoff.tech/product-review/zigbee-3-0-usb-dongle-plus/ written by ITead).
2. Enable hardware flow control and generate firmware (optional) section says "2.1 Import the ZNP project of CC1352P into CCS. Open the .syscfg configuration file in the ZNP project. Enable serial flow control in the UART option in the .syscfg configuration file."
Configuration in the image from that document looks like tick the box for "Flow Control" under "UART" and use configuration:
UART Peripheral = Any(UART0)
TX Pin = DIO13/4 (XDS110 UART)
RC Pin = DIO12/3 (XDS110 UART)
CTS Pin = DIO19/19 (Header)
RTS Pin = DIO18/36 (Header)
This request was initially brought up as a wish in #316 but since that issue specifically regarding Zigbee router firmware and nor Zigbee coordinator firmware I thought that I would post a seperate issue as a request for Zigbee coordinator firmware for this.
Would you be willing to compile and host firmware images that support using hardware flow control with this specific dongle?
I understand switching to hardware flow control mode on the new Sonoff Zigbee 3.0 USB Dongle Plus adapter by ITead is done manually via the physical dip-switch on the adapters board but also understand that we need a custom firmware built for it too(?).
Picture from https://itead.cc/product/sonoff-zigbee-3-0-usb-dongle-plus/ show an "DIP switch for hardware flow control":
So would need custom coordinator firmware before enabling hardware flow control in the software application like Zigbee2MQTT:
https://www.zigbee2mqtt.io/information/configuration.html
# Optional: RTS / CTS Hardware Flow Control for serial port (default: false)
rtscts: true
Hardware flow control should in theory make for more stable serial communication since the flow control is off-loaded from the application and the system CPU to the MCU, but not sure if it will really be more stable in the real world for Zigbee2MQTT.
PS: Know I read that openHAB's Zigbee developer recommended hardware flow control for commercial use for added stability, however then we are talking about Zigbee Coordinators and Zigbee devices, not about dedicated stand-alone Zigbee routers.