# Button to reset the Zigbee2Mqtt integration

**URL:** <https://community.gladysassistant.com/t/bouton-pour-reinitialiser-lintegration-zigbee2mqtt/10097>\
**Category:** Demandes livrées\
**Tags:** zigbee2mqtt\
**Created:** [March 5, 2026, 12:39pm UTC](https://community.gladysassistant.com/t/bouton-pour-reinitialiser-lintegration-zigbee2mqtt/10097 "2026-03-05T12:39:35Z")\
**Posts on this page:** 1\
**Showing post:** 5

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [March 6, 2026, 9:14am UTC](https://community.gladysassistant.com/t/bouton-pour-reinitialiser-lintegration-zigbee2mqtt/10097/5 "2026-03-06T09:14:39Z")

</div>

Ok, I implemented it this morning!

I took the opportunity to strengthen the integration’s robustness, because there were instabilities that became even more apparent with this new feature.

Notably the stopped-container bug: until now, in Gladys, if the Zigbee2mqtt container was already stopped, a 304 error was issued and we never proceeded to remove the container. It’s fixed for all integrations ✅

I tested many cases locally on a mini-PC, and it works really well!

Screenshots:

 ![Screenshot 2026-03-06 at 10.11.37](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/a/3/a32975cebfb800883f9c6bd20a6c76539134ef21.png)  
 ![Screenshot 2026-03-06 at 10.11.43](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/d/9/d9c62233b42deaaa2efd3c5e1a875560e69e9bbf.png)

The PR:

> <https://github.com/GladysAssistant/Gladys/pull/2482>
>
> \### Pull Request check-list
> 
> To ensure your Pull Request can be accepted as fa…st as possible, make sure to review and check all of these items:
> 
> \- \[x\] If your changes affect the code, did you write the tests?
> \- \[x\] Are tests passing? (\`npm test\` on both front/server)
> \- \[x\] Is the linter passing? (\`npm run eslint\` on both front/server)
> \- \[x\] Did you run prettier? (\`npm run prettier\` on both front/server)
> \- \[x\] If you are adding a new feature/service, did you run the integration comparator? (\`npm run compare-translations\` on front)
> \- \[x\] Did you test this pull request in real life? With real devices? If this development is a big feature or a new service, we recommend that you provide a Docker image to the community (\[forum\](https://community.gladysassistant.com/)) for testing before merging.
> \- \[x\] If your changes modify the API (REST or Node.js), did you modify the API documentation? (Documentation is based on comments in code)
> 
> \### Description of change
> 
> Implement https://community.gladysassistant.com/t/bouton-pour-reinitialiser-lintegration-zigbee2mqtt/10097
> 
> 
> \## Summary by CodeRabbit
> 
> \* \*\*New Features\*\*
> \* Factory-reset for Zigbee2MQTT with a two-step confirmation flow (visible in local mode)
> \* New user-facing reset UI strings in English, French and German
> \* Reset action available from the integration setup (admin only)
> 
> \* \*\*Bug Fixes\*\*
> \* Corrected i18n/JSON formatting for Zigbee2MQTT messages and links
> \* More robust cleanup handling so reset/disconnect proceeds even if containers are already stopped
> 
> \* \*\*Tests\*\*
> \* Added API and unit tests covering the reset endpoint and workflow

The Docker image:

```auto
gladysassistant/gladys:zigbee2mqtt-reset-button

```

(Already built on x64, [being built](https://github.com/GladysAssistant/Gladys/actions/runs/22756697897/job/66003313427) for arm64)

I’ll do a release this afternoon, if you want to test before then it’s possible 😉

---

_[View the full topic](https://community.gladysassistant.com/t/bouton-pour-reinitialiser-lintegration-zigbee2mqtt/10097)._
