ZigStar - ZigBee Coordinators and Routers

@zmeu Hello, sorry for my very late reply.
Send me and support email: [email protected] and i will assist you.

i flashed this with router firmware, as i was hoping this would help with some bad areas of my house, but Z2M isnt adding the device??

Can this be done?

Triger BSL button,should work,if no just flash again,but keep z2m in pairing mode

1 Like

I have the hamgeek devices. I assume the BSL is the same as the button on the back of these

Sorry i don’t support 3rd party devices, what copy my design and firmware.

BTW Hamgeek is just a reseller.
Ask for support from them, I don’t know what they did there with hardware.

Good day, have you had experience with upgrade to latest firmware?
Per my earlier note over a year ago my lan coordinator didn’t work.

ESPHome >=2023.4 Zigbee firmware won’t work when compiled using yaml provided.

You need to update stream-server. See

I tested mixed esphome firmware (Zigbee + Bluetooth proxy) compiled using esp-idf. Works well.

The ESP32 Platform component should be configured to use the esp-idf framework, as the arduino framework uses significantly more memory and performs poorly with the Bluetooth proxy enabled.

  framework:
    type: esp-idf

In yaml made a dirty fix: for uptime sensor char buffer[17]; → char buffer[32]; to compile with esp-idf.

1 Like

Thank you for taking your time and let me know.
Can you provide full .yaml file for reference?

My yaml configuration uses modular approach.

# common config without device specific information
# zigstar/common.yaml inside /config/esphome/ folder
ota:
  password: ${ota_password}

api:
  encryption:
    key: ${api_key}
  reboot_timeout: 0s  

esphome:
  name: ${name}
  friendly_name: ${friendly_name}
  name_add_mac_suffix: false
  project:
    name: ${project_name}
    version: ${project_version}

esp32:
  board: esp32dev
  framework:
    type: esp-idf


# Logger is enabled
logger:
  level: DEBUG


# Enable HA Time
time:
  - platform: homeassistant
    id: homeassistant_time

esp32_ble_tracker:
  scan_parameters:
    interval: 1100ms
    window: 1100ms
    active: true

bluetooth_proxy:
  active: true

## Safe Mode
button:
- platform: safe_mode
  name: Safe Mode Boot
  entity_category: diagnostic

#External component Stream Server
external_components:
  - source: github://oxan/esphome-stream-server

# Extra sensor to keep track of gateway uptime
text_sensor:
  - platform: template
    entity_category: diagnostic
    disabled_by_default: true
    name: "Uptime"
    lambda: |-
      uint32_t dur = id(uptime_s).state;
      int dys = 0;
      int hrs = 0;
      int mnts = 0;
      if (dur > 86399) {
        dys = trunc(dur / 86400);
        dur = dur - (dys * 86400);
      }
      if (dur > 3599) {
        hrs = trunc(dur / 3600);
        dur = dur - (hrs * 3600);
      }
      if (dur > 59) {
        mnts = trunc(dur / 60);
        dur = dur - (mnts * 60);
      }
      char buffer[32];
      sprintf(buffer, "%ud %02uh %02um %02us", dys, hrs, mnts, dur);
      return {buffer};
    icon: mdi:clock-start
    update_interval: 60s

#Uptime
sensor:
  - platform: uptime
    id: uptime_s
    update_interval: 60s
  - platform: stream_server
    connection_count:
      entity_category: diagnostic
      name: Zigbee connections    

# Device functions:
switch:
  - platform: restart
    name: "Gateway Restart"

  - platform: gpio
    pin: ${zRST_gpio}
    id: zRST_gpio
    inverted: yes
    restore_mode: ALWAYS_OFF
  - platform: template
    name: "Zigbee RST"
    icon: mdi:toggle-switch
    id: zRST
    turn_on_action:
      - switch.turn_on: zRST_gpio
      - delay: 15ms
      - switch.turn_off: zRST_gpio
      
  - platform: gpio
    pin: ${zbsl_gpio}
    name: "Zigbee BSL"
    icon: mdi:toggle-switch
    id: zBSL
    inverted: yes
    restore_mode: ALWAYS_OFF
    internal: true
    
  - platform: template
    name: "Firmware Update"
    icon: mdi:cellphone-arrow-down
    turn_on_action:
      - script.execute: fw_update_mode
    turn_off_action:
      - switch.toggle: zRST

#Update CC2652 Firmware
script:
  - id: fw_update_mode
    then:
      - switch.turn_on: zBSL
      - delay: 1s
      - switch.turn_on: zRST_gpio
      - delay: 1s
      - switch.turn_off: zRST_gpio
      - logger.log: "Delaying ~5 seconds for TI chip to be ready"
      - delay: 5s
      - switch.turn_off: zBSL
      - logger.log: "Update with cc2538-bsl tool now!"
      - logger.log: "Usage: cc2538-bsl.py -p socket://ip_or_hostname:6638 -evw firmware.hex"

#UART Settings
uart:
  id: uart_bus
  rx_pin: ${rx_pin}
  tx_pin: ${tx_pin}
  baud_rate: 115200

#Serial Bridge Settings,uncomment #port to change default 6638 TCP port
stream_server:
  uart_id: uart_bus
# device information for olizig
# zigstar/olizig.yaml

#Ethernet connection information
ethernet:
  type: LAN8720
  mdc_pin: GPIO23
  mdio_pin: GPIO18
  clk_mode: GPIO17_OUT
  phy_addr: 0
  power_pin: GPIO12

substitutions:
  project_name: "Zigstar.Olizig"
  project_version: "Original"
  rx_pin: GPIO36
  tx_pin: GPIO4
  zRST_gpio: GPIO16
  zbsl_gpio: GPIO32
# device information for lan gateway
# zigstar/lan_gateway.yaml
#Ethernet connection information
ethernet:
  type: LAN8720
  mdc_pin: GPIO23
  mdio_pin: GPIO18
  clk_mode: GPIO0_IN
  phy_addr: 1
  power_pin: GPIO16

substitutions:
  project_name: "Zigstar.Lan Gateway"
  project_version: "v2.2"
  rx_pin: GPIO5
  tx_pin: GPIO17
  zRST_gpio: GPIO33
  zbsl_gpio: GPIO32
# device information for Hamgeek (chinese clone of Zigstar Lilyzig)
#zigtar/hamgeek.yaml

#Ethernet connection information
ethernet:
  type: LAN8720
  mdc_pin: GPIO23
  mdio_pin: GPIO18
  clk_mode: GPIO17_OUT
  phy_addr: 0

substitutions:
  project_name: "Zigstar.Lilyzig"
  project_version: "Hamgeek (Chinese clone)"
  rx_pin: GPIO36
  tx_pin: GPIO4
  zRST_gpio: GPIO16
  zbsl_gpio: GPIO32
  
# Actual device yaml

substitutions:
  name: "xxx"
  friendly_name: "xxx"
  ota_password: "xxx"
  api_key: "xxx"

packages:
    common: !include zigstar/common.yaml
    device: !include zigstar/[olizig|hamgeek|lan_gateway].yaml
1 Like

Thank you, when will have time will update all configs.

Hi, I’m interested in the ZigStar LAN Gateway but I would like to install it on a DIN rail. Has anybody tried it or even has a case for a DIN rail?

1 Like

Unfortunately i didnt see any 3D design for DIN rail and I’m bad at 3D Design.

Hi,
I am using 3 ZigStar Lan Gateways as router to extend my Zigbee NW. Unfortunately, they often lose connection. Power Off and/or just pressing one of the buttons is not helping. Also when refreshed, pairing often takes many trials. Any suggestions on troubleshooting? Is there a possibility to re-pair in the web interface? Thx

Hello,please send an email to [email protected],to look in your issue.

:warning: Product announcement :warning:

Very happy to announce our new product - UZG-01 (Universal Zigbee Gateway)

Visit our product page for an in-depth exploration of the UZG-01 and its remarkable features.

You can apply the code “HAC2023” to receive a unique discount tailored for the Home Assistant Community.

2 Likes

Nice, will it support matter etc?
Is it a big step up from the zigstar GW

1 Like

Still working on firmware, but require a new chip to make this happen.

Lady’s and gentlemen’s ,
check out new addon for HA:
ZigStar TI CC2652 FW Flasher
Now you can flash your ZigStar USB/LAN dongle directly from Home Assistant, also I didn’t forget about people using another dongles like Sonoff ZBdongle-P, TubesZB or any other dongle with BSL button.

Auto-BSL:

  • ZigStar Ethernet Devices: UZG-01,LAN GW, LilyZig, Olizig
  • Sonoff ZBdongle-P
  • TubesZB

Flash your dongle without hassle.

6 Likes

Hello,

I purchased 2 x UZG-01 Universal Zigbee Gateways and I am having problems to connect from Home-Assistant managed + zigbee2mqtt (Home assistant managed means no access to shell, Docker is managed automatically).

When connecting with USB it works and could migrate my zigbee2mqtt network to UZG-01. At least I am quite happy because I could migrate my sonoff key to UZG-01 which is the future IMHO.

But still, I cannot use a suitable solution to connect over the network using zigbee2mqtt.

If I change port to tcp://device_ip::6638 the docker image is unable to connect.

The log file is:
[21:51:35] INFO: Preparing to start

[21:51:36] INFO: Socat not enabled
[21:51:39] INFO: Starting Zigbee2MQTT

Zigbee2MQTT:info 2023-09-16 21:51:50: Logging to console and directory: ‘/config/zigbee2mqtt/log/2023-09-16.21-51-50’ filename: log.txt
Zigbee2MQTT:info 2023-09-16 21:51:50: Starting Zigbee2MQTT version 1.33.0 (commit #unknown)
Zigbee2MQTT:info 2023-09-16 21:51:50: Starting zigbee-herdsman (0.18.5)
Zigbee2MQTT:error 2023-09-16 21:52:11: Error while starting zigbee-herdsman
Zigbee2MQTT:error 2023-09-16 21:52:11: Failed to start zigbee
Zigbee2MQTT:error 2023-09-16 21:52:11: Check Zigbee2MQTT fails to start | Zigbee2MQTT for possible solutions
Zigbee2MQTT:error 2023-09-16 21:52:11: Exiting

Zigbee2MQTT:error 2023-09-16 21:52:11: Error: Failed to connect to the adapter (Error: SRSP - SYS - ping after 6000ms)
at ZStackAdapter.start (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:103:27)
at Controller.start (/app/node_modules/zigbee-herdsman/src/controller/controller.ts:132:29)
at Zigbee.start (/app/lib/zigbee.ts:60:27)
at Controller.start (/app/lib/controller.ts:101:27)
at start (/app/index.js:107:5)

I also tried to set socat to true without success.

I am not blocked since I am using USB 
 but still I am waiting for network usage.

I checked Zigbee2MQTT fails to start | Zigbee2MQTT and nothing applies. I have access to the web interface of the UZG-01 and it is configured with “LAN mode” 


I feel that there should be a dedicated documentation for Home assistant managed mode when zigbee2mqtt is running in docker.

Please advice.

My setup for zigstargw gw is like picture but i dont have docker thou