Closed Koenkk closed 3 years ago
for me, frontend is reachable, but frontend tab "Devices" times out with:
Loading devices takes too long time.Consider reading documentation
normally started via systemd unit:
ExecStart=/usr/bin/docker run --rm --name=%p \
-e TZ=Europe/Berlin \
-v z2m-data:/app/data \
-v z2m-root:/root \
--device=/dev/ttyACM0 \
-p 8080:8080 \
koenkk/zigbee2mqtt:latest-dev
configuration.yaml as described at https://www.zigbee2mqtt.io/information/frontend.html
frontend:
port: 8080
experimental:
new_api: true
The error first occured with
Going back until working correctly with
Switching back to latest-dev:
...solves the error !?!
Running into the same issues as above
If you have issues with the frontend itself please report them here: https://github.com/nurikk/z2m-frontend/issues/202
Hi. GUI works nice when using local IP. I wish to have it over my nginx proxy and own domain with subfolder in url. Tried config:
location ^~ /zigbee2mqtt/ {
proxy_pass http://192.168.28.50:8080/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ^~ /zigbee2mqtt/api/ {
proxy_pass http://192.168.28.50:8080/api;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
But when accessing http://domain.com/zigbee2mqtt/ I only see GUI and loading page that fails with text:
Loading devices takes too long time. Consider reading documentation
Any tips how to change reverse proxy configuration to make it work if it is even possible.
You can specify any port in configuration
Actually you have to specify a port, although the documentation suggests all attributes for the frontend
element are optional.
Just figured out that adding just
frontend:
to configuration.yaml is not enough. You have to define (at least) the port, too.
Does anyone else get this error in Safari Javascript console when loading the frontend page through an nginx SSL proxy with basic auth:
WebSocket connection to 'wss://ip:port/api' failed: Unexpected response code: 401
The top menu bar is visible but the rest just shows a spinning wheel. In Chrome and Firefox this error does not seem to occur and the page loads correctly. If I turn off the proxy, the page also loads in Safari.
The reason for my problem is probably this Safari bug by which Basic Auth does not work with WebSockets over HTTPS: https://bugs.webkit.org/show_bug.cgi?id=80362 I have now disabled Basic Auth in the reverse proxy and now use the Auth Token. Maybe this should be mentioned in the documentation
The reason for my problem is probably this Safari bug by which Basic Auth does not work with WebSockets over HTTPS: https://bugs.webkit.org/show_bug.cgi?id=80362 I have now disabled Basic Auth in the reverse proxy and now use the Auth Token. Maybe this should be mentioned in the documentation
I have "basic auth" activated in Domoticz, which is needed for authentication of Controlicz (control domoticz with Google Home) i.c.w letsencrypt.
But I can access domoticz from outside Not sure if this "basic auth" is the same function
Maybe it is because I use a self-signed cert? Does Domoticz also use WebSockets? I use the example from the documentation for basic auth.
Might be a result of https://github.com/Koenkk/zigbee2mqtt/commit/3768504480ca1f7038d6de3013652dd403cec5e6
The frontend is still using the wrong order of the topic.
Ops... I did move the message to a new issue on the right repo (checked the first post) (https://github.com/nurikk/z2m-frontend/issues/349)
Also note, I did update z2m today just in case a fix was already there ;)
Does anyone the same problem? WARNING (MainThread) [supervisor.addons.options] Unknown option 'new_api' for Zigbee2mqtt (7ad98f9c_zigbee2mqtt) thx
Does anyone the same problem? WARNING (MainThread) [supervisor.addons.options] Unknown option 'new_api' for Zigbee2mqtt (7ad98f9c_zigbee2mqtt) thx
Yes & seems impossible to get rid of again no matter where i delete in config/config-files.
Does anyone the same problem? WARNING (MainThread) [supervisor.addons.options] Unknown option 'new_api' for Zigbee2mqtt (7ad98f9c_zigbee2mqtt) thx
Yes, I have the same issue and it drives me crazy :) cannot delete it.
I copied my config, uninstalled & then reinstalled zigbee2mqtt, pasted config & then removed "new_api" text before i started zigbee2mqtt. Case closed :-)
@ChipMIK1 thank you sir, that helped
Firstly thanks for this it's a big step forwards in configuration. Even first time through most things seem intuitive and work as expected.
Except: Device > Settings(specific).
I cannot create a new entry, GUI works without error but does not create any entry in devices.yaml Also if I try to delete an entry (e.g. temperature_calibration) it leaves this in devices.yaml:
_temperaturecalibration: null
I can however edit an existing entry successfully
Minor point there is a typo in the page heading:
"Get possible device specific praemeters on RTCGQ11LM"
Thanks again for a great bit of code.
Hi,
Great Interface but I've recently noticed an odd issue that I don't think is browser related, as I'm experiencing it on Edge and Chrome on Windows 10, and Safari on IOS. When I try and bind a device to a group or another device, as soon as I select the destination, within a few seconds (varies randomly) what I've actually selected disappears and goes back to the 'select device' before I have time to select the endpoints and actually click on bind. I've not tried to bind anything for ages so I don't know when specifically this started happening. It makes binding with the front end practically impossible now. Any ideas?
hoggerz
Hi,
Great Interface but I've recently noticed an odd issue that I don't think is browser related, as I'm experiencing it on Edge and Chrome on Windows 10, and Safari on IOS. When I try and bind a device to a group or another device, as soon as I select the destination, within a few seconds (varies randomly) what I've actually selected disappears and goes back to the 'select device' before I have time to select the endpoints and actually click on bind. I've not tried to bind anything for ages so I don't know when specifically this started happening. It makes binding with the front end practically impossible now. Any ideas?
hoggerz
You might want to file an issue here: https://github.com/nurikk/z2m-frontend/issues
Hi, Great Interface but I've recently noticed an odd issue that I don't think is browser related, as I'm experiencing it on Edge and Chrome on Windows 10, and Safari on IOS. When I try and bind a device to a group or another device, as soon as I select the destination, within a few seconds (varies randomly) what I've actually selected disappears and goes back to the 'select device' before I have time to select the endpoints and actually click on bind. I've not tried to bind anything for ages so I don't know when specifically this started happening. It makes binding with the front end practically impossible now. Any ideas? hoggerz
You might want to file an issue here: https://github.com/nurikk/z2m-frontend/issues
I think it's already covered in https://github.com/nurikk/z2m-frontend/issues/489
Hi sjorge and timoline,
Thank you, I hadnât see that thread (or that github!), Iâll keep watching that for now.
hoggers
Great work, thanks, it is impressive.
Would it be possible to get access to the internal API with devices states visible on some of the pages (or the JSON dump).
See also https://community.home-assistant.io/t/how-to-retrieve-programmatically-from-zigbee2mqtt-the-states-of-the-devices/325813 for the rationale (especially the bottom discussion of why this vs directly querying the MQTT broker)
Is it not possible to change the friendly name of the device in the UI? Is that intentional?
Is it not possible to change the friendly name of the device in the UI? Is that intentional?
There is a button for it and it works fine, I use it all the time.
Ah, I didn't see that button. Thanks. I just saw that on the settings tab of the device, the name field is disabled.
It would be great if we could issue MQTT commands from the GUI for things like changing the power-on behaviour of Hue bulbs where you have to send an MQTT command to zigbee2mqtt/FRIENDLY_NAME/set with a payload.
Hi, is there a way to see devices, that are unplugged / offline / lost connection in the device overview? Right now I get some popup messages that a specific device is offline and I can see that in the log but I cannot see that status reflected in the device tab... Thx, Sebastian
Hi, is there a way to see devices, that are unplugged / offline / lost connection in the device overview? Right now I get some popup messages that a specific device is offline and I can see that in the log but I cannot see that status reflected in the device tab... Thx, Sebastian
Currently no, but that might be a nice feature request to add a availability
column.
You can file those here https://github.com/nurikk/zigbee2mqtt-frontend
Installed 1.22.1 on Windows with defaults, it starts ok but frontend is not working. When entering localhost:8080 in Chrone I get:
Access Error: 404 -- Not Found Cannot locate document: /
What am I missing?
Is the Settings -> Advance experimental? I don't get the settings to stick after a host-reboot. Settings are valid when saving and pushing the "Restart" though.
Example; Set last_seen to ISO_8601 it will show the last seen time in GUI, reboot the host and it is not.
Do I have to shrink the configuration.yaml
for the plugin?
If the GUI just doesn't load - how can I check the reason? I run zigbe2mqtt in docker. Log:
today at 12:33:57Using '/app/data' as data directory
today at 12:33:58Zigbee2MQTT:debug 2021-12-27 12:33:58: Loaded state from file /app/data/state.json
today at 12:33:58Zigbee2MQTT:info 2021-12-27 12:33:58: Logging to console and directory: '/app/data/log/2021-12-27.12-33-58' filename: log.txt
today at 12:33:58Zigbee2MQTT:debug 2021-12-27 12:33:58: Removing old log directory '/app/data/log/2021-12-27.11-37-48'
today at 12:33:58Zigbee2MQTT:info 2021-12-27 12:33:58: Starting Zigbee2MQTT version 1.22.1 (commit #c2b5229)
today at 12:33:58Zigbee2MQTT:info 2021-12-27 12:33:58: Starting zigbee-herdsman (0.13.176)
today at 12:33:58Zigbee2MQTT:debug 2021-12-27 12:33:58: Using zigbee-herdsman with settings: '{"adapter":{"concurrent":null,"delay":null,"disableLED":false},"backupPath":"/app/data/coordinator_backup.json","databaseBackupPath":"/app/data/database.db.backup","databasePath":"/app/data/database.db","network":{"channelList":[11],"extendedPanID":[221,221,221,221,221,221,221,221],"networkKey":"HIDDEN","panID":6754},"serialPort":{"path":"/dev/ttyACM0"}}'
today at 12:33:59Zigbee2MQTT:info 2021-12-27 12:33:59: zigbee-herdsman started (resumed)
today at 12:33:59Zigbee2MQTT:info 2021-12-27 12:33:59: Coordinator firmware version: '{"meta":{"maintrel":3,"majorrel":2,"minorrel":6,"product":0,"revision":20211115,"transportrev":2},"type":"zStack12"}'
today at 12:33:59Zigbee2MQTT:debug 2021-12-27 12:33:59: Zigbee network parameters: {"channel":11,"extendedPanID":"0xdddddddddddddddd","panID":6754}
today at 12:33:59Zigbee2MQTT:info 2021-12-27 12:33:59: Currently 1 devices are joined:
today at 12:33:59Zigbee2MQTT:info 2021-12-27 12:33:59: 0x286d970001047c55 (0x286d970001047c55): Not supported (Unknown)
today at 12:33:59Zigbee2MQTT:warn 2021-12-27 12:33:59: `permit_join` set to `true` in configuration.yaml.
today at 12:33:59Zigbee2MQTT:warn 2021-12-27 12:33:59: Allowing new devices to join.
today at 12:33:59Zigbee2MQTT:warn 2021-12-27 12:33:59: Set `permit_join` to `false` once you joined all devices.
today at 12:33:59Zigbee2MQTT:info 2021-12-27 12:33:59: Zigbee: allowing new devices to join.
today at 12:33:59Zigbee2MQTT:info 2021-12-27 12:33:59: Connecting to MQTT server at mqtt://192.167.1.7:1883
today at 12:33:59Zigbee2MQTT:debug 2021-12-27 12:33:59: Using MQTT anonymous login
today at 12:34:32Zigbee2MQTT:debug 2021-12-27 12:34:32: Received Zigbee message from '0x286d970001047c55', type 'commandQueryNextImageRequest', cluster 'genOta', data '{"fieldControl":1,"fileVersion":17,"imageType":32,"manufacturerCode":4673}' from endpoint 1 with groupID 0
today at 12:38:58Zigbee2MQTT:debug 2021-12-27 12:38:58: Saving state to file /app/data/state.json
today at 12:39:35Zigbee2MQTT:debug 2021-12-27 12:39:35: Received Zigbee message from '0x286d970001047c55', type 'attributeReport', cluster 'msTemperatureMeasurement', data '{"measuredValue":2267}' from endpoint 1 with groupID 0
Containers:
version: '3.8'
services:
zigbee2mqtt:
container_name: zigbee2mqtt
image: koenkk/zigbee2mqtt
restart: unless-stopped
volumes:
- /mnt/docker/zigbe2mqtt/data:/app/data
- /run/udev:/run/udev:ro
ports:
# Frontend port
- 8887:8080
environment:
- TZ=Europe/London
devices:
# Make sure this matched your adapter location
- /dev/ttyACM0:/dev/ttyACM0
mosquitto:
image: eclipse-mosquitto
volumes:
- /mnt/docker/mosquitto:/mosquitto/:rw
ports:
- 1883:1883
- 9001:9001
Configuration.yaml
homeassistant: false
permit_join: true
mqtt:
base_topic: zigbee2mqtt
server: mqtt://192.167.1.7:1883
serial:
port: /dev/ttyACM0
frontend:
port: 8080
host: 0.0.0.0
advanced:
log_level: debug
devices:
'0x286d970001047c55':
friendly_name: '0x286d970001047c55'
@parshivets you forgot the add 8080:8080
to the ports list in the docker compose yaml file
Dear Koenk,
Are you willing to do a small article about getting the sonoff zigbee 3.0 into BSL.
This is really hard as it seems.
Kind regards, Eric W
Op ma 27 dec. 2021 18:19 schreef Koen Kanters @.***>:
@parshivets https://github.com/parshivets you forgot the add 8080:8080 to the ports list in the docker compose yaml file
â Reply to this email directly, view it on GitHub https://github.com/Koenkk/zigbee2mqtt/issues/4266#issuecomment-1001664846, or unsubscribe https://github.com/notifications/unsubscribe-auth/AI3ZKQVRKWZF5KHU3IWANOTUTCNYVANCNFSM4QY4EBSQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you are subscribed to this thread.Message ID: @.***>
@parshivets you forgot the add
8080:8080
to the ports list in the docker compose yaml file
to where? in configuration.yaml I set port 8080. This is inside the container, right? Then in docker-compose I expose: ports:
- 8887:8080
So the GUI should be available on 8887 as 8080 is in use already. And container runs: 307a2942ca0c koenkk/zigbee2mqtt "docker-entrypoint.sâŠ" 6 hours ago Up 6 hours 0.0.0.0:8887->8080/tcp, :::8887->8080/tcp
I also logged in to container. /app # netstat -tulpn Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.11:45645 0.0.0.0: LISTEN - udp 0 0 127.0.0.11:54681 0.0.0.0: -
So I do not see that port 8080 is there.
@kirelam see sonoff documentation: https://sonoff.tech/wp-content/uploads/2021/09/Zigbee-3.0-USB-dongle-plus-firmware-flashing-1-1.docx
@parshivets sorry looked at the wrong entry in the docker compose file, what happens when you remove the host
from the z2m configuration.yaml
and do a curl localhost:8887
on the system.
@kirelam see sonoff documentation: https://sonoff.tech/wp-content/uploads/2021/09/Zigbee-3.0-USB-dongle-plus-firmware-flashing-1-1.docx
@parshivets sorry looked at the wrong entry in the docker compose file, what happens when you remove the
host
from the z2mconfiguration.yaml
and do acurl localhost:8887
on the system.
This is from inside the container: /app # curl localhost:8080 curl: (7) Failed to connect to localhost port 8080 after 0 ms: Connection refused
From host: parshivets@parnas:~$ curl localhost:8887 curl: (56) Recv failure: Connection reset by peer
And this is just to show that other containers are ok: parshivets@parnas:~$ curl localhost:8080 <!DOCTYPE html>
@parshivets I believe the issue is that startup is blocked because it cannot to the MQTT server, please check your MQTT settings, you should see Connected to MQTT server
in your logs
@parshivets I believe the issue is that startup is blocked because it cannot to the MQTT server, please check your MQTT settings, you should see
Connected to MQTT server
in your logs
you were right. For some reason in configuration.yaml if I set ip:1883 - doesn't work even I was able to telnet from inside the container. Changed to Mosquitto_container_name:1883 - it works!
Thanks a lot for the Frontend page. This is great. At this moment it is at version and running on my Raspberry Pi 3B+ How can I update the Frondend page to a new version.
@mcmellow it is updated automatically when you update z2m
@parshivets I believe the issue is that startup is blocked because it cannot to the MQTT server, please check your MQTT settings, you should see
Connected to MQTT server
in your logsyou were right. For some reason in configuration.yaml if I set ip:1883 - doesn't work even I was able to telnet from inside the container. Changed to Mosquitto_container_name:1883 - it works!
I think that I'm having the same issue -- I cannot connect to my mqtt server. What do you mean by "changed to mosquitto_container_name:1883? Below is the details of my mosquitto container:
Any help would be greatly appreciated.
@parshivets I believe the issue is that startup is blocked because it cannot to the MQTT server, please check your MQTT settings, you should see
Connected to MQTT server
in your logsyou were right. For some reason in configuration.yaml if I set ip:1883 - doesn't work even I was able to telnet from inside the container. Changed to Mosquitto_container_name:1883 - it works!
I think that I'm having the same issue -- I cannot connect to my mqtt server. What do you mean by "changed to mosquitto_container_name:1883? Below is the details of my mosquitto container:
Any help would be greatly appreciated.
in docker containers can ping each other by container name. check container name
docker ps --format "{{.Names}}"
use it instead of ip
@parshivets I believe the issue is that startup is blocked because it cannot to the MQTT server, please check your MQTT settings, you should see
Connected to MQTT server
in your logs
I'm currently in a bit of a situation where this is actually a slight issue. Due to some remodeling work, power to my MQTT server is turned off. I want to replace the wall plug to my server with a different one. I can reach my Pi running zigbee2mqtt. However, I can not pair my new plug, because the interface won't start, because the MQTT server is down.
So, I vote for starting the frontend before connecting to MQTT.
@danielvandenberg95 I am not sure if I understand your problem correctly, but couldn't you pair the plug in another socket (if this is the kind of "intermediate smart plug"), or temporarily connect your server to another socket (of the new plug is a fixed one - I would be interested in the model on that case)
Yeah I could have connected my server to another socket, but that would mean powering it up, down, up. That's what I was trying to prevent.
"If it's down now anyways I can just as well swap out the plug" - my thought process
I've been using zigbee2mqtt for a while now, and it has been really great. More recently I've deployed into kubernetes and accidentally nuked the volume the configuration was on. It occurs to me, after enabling the frontend that a simple way to backup and restore would be really handy. I've spent a few years building up some xiaomi aqara, but after I broke the network, these devices didn't re-pair to the new network, so being able to backup before doing something dangerous is obvious, and perhaps the frontend could provide a simple way to do this.
QuizĂĄs sea una tonterĂa, pero como en el manual dice que por seguridad hay que cambiar la serie de nĂșmeros en vertical, asĂ lo hice, y todo dejo de funcionar. DespuĂ©s de darle mil vueltas lo Ășnico que hice fue desplazar todos los - Âż? un paso a la izquierda, quizĂĄs parezca una tonterĂa pero asĂ me apareciĂł el panel despuĂ©s de reiniciar.
Un saludo
What's confusing about the above, is that the config file seems to be read and written to by z2m, so a simple point in time backup could still result in missing devices if you don't get a recent backup of the config.
Hi! I have installed z2m on my raspberry pi zero with Raspberry Pi OS. TI CC2531 USB stick. Before i don't use frontend because don't know that it exists. It was version 1.17.1 and now I have updated to lates (1.25.2). After start z2m daemon i got error that nodejs too old. After i update npm up to 8.12.1 and nodejs up to v18.3.0. Start daemon and frontend still no available. Server starts normally, and has connection to mqtt bus. Port don't occupied by other services. Home Assistant is not installed. How can i check that all works well and how i can get reasons why frontend still not available?
configuration.yaml
homeassistant: false
permit_join: true
forntend: true
mqtt:
base_topic: zigbee2mqtt
server: 'mqtt://localhost'
user: 'my_user'
password: 'my_pass'
serial:
port: /dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B001CD6ED04-if00
advanced:
network_key:
- 211
- ..... and so on
starting logs:
> zigbee2mqtt@1.25.2 start
> node index.js
Zigbee2MQTT:info 2022-06-06 12:20:47: Logging to console and directory: '/opt/zigbee2mqtt/data/log/2022-06-06.12-20-46' filename: log.txt
Zigbee2MQTT:info 2022-06-06 12:20:47: Starting Zigbee2MQTT version 1.25.2 (commit #a252914e)
Zigbee2MQTT:info 2022-06-06 12:20:48: Starting zigbee-herdsman (0.14.34)
Zigbee2MQTT:info 2022-06-06 12:20:53: zigbee-herdsman started (resumed)
Zigbee2MQTT:info 2022-06-06 12:20:53: Coordinator firmware version: '{"meta":{"maintrel":3,"majorrel":2,"minorrel":6,"product":0,"revision":20201127,"transportrev":2},"type":"zStack12"}'
Zigbee2MQTT:info 2022-06-06 12:20:53: Currently 0 devices are joined:
Zigbee2MQTT:warn 2022-06-06 12:20:53: `permit_join` set to `true` in configuration.yaml.
Zigbee2MQTT:warn 2022-06-06 12:20:53: Allowing new devices to join.
Zigbee2MQTT:warn 2022-06-06 12:20:53: Set `permit_join` to `false` once you joined all devices.
Zigbee2MQTT:info 2022-06-06 12:20:53: Zigbee: allowing new devices to join.
Zigbee2MQTT:info 2022-06-06 12:20:53: Connecting to MQTT server at mqtt://localhost
Zigbee2MQTT:info 2022-06-06 12:20:56: Connected to MQTT server
Zigbee2MQTT:info 2022-06-06 12:20:56: MQTT publish: topic 'zigbee2mqtt/bridge/state', payload 'online'
Zigbee2MQTT:info 2022-06-06 12:20:58: MQTT publish: topic 'zigbee2mqtt/bridge/config', payload '{"commit":"a252914e","coordinator":{"meta":{"maintrel":3,"majorrel":2,"minorrel":6,"product":0,"revision":20201127,"transportrev":2},"type":"zStack12"},"log_level":"info","network":{"channel":11,"extendedPanID":"0x00124b001cd6ed04","panID":6754},"permit_join":true,"version":"1.25.2"}'
curl
pi@smart-pie:/ $ sudo curl --get http://localhost:8080
curl: (7) Failed to connect to localhost port 8080: Connection refused
netstat output
pi@smart-pie:/ $ sudo netstat -tuplan | grep LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 455/sshd
tcp 0 0 0.0.0.0:1883 0.0.0.0:* LISTEN 448/mosquitto
tcp6 0 0 :::22 :::* LISTEN 455/sshd
tcp6 0 0 :::1883 :::* LISTEN 448/mosquitto
It may be this line:
forntend: true
It has a typo (should be frontend
)
This experimental feature allows to run a frontend straight from Zigbee2MQTT (so no additional setup is required). This frontend is developed by @nurikk, the source code can be found here: https://github.com/nurikk/z2m-frontend
To enable this, switch to the dev branch and add the following to your
configuration.yam
.In case you find any issues in the frontend, report them here: https://github.com/nurikk/z2m-frontend/issues