I control the temperature of my fridges

🌡 Why I monitored my fridges in Home Assistant

With the summer heatwave, I wanted to monitor my fridges and freezer for a very simple reason: Avoid the unpleasant surprise.

A poorly closed door, a drifting probe or a device that starts to tire, and you can quickly lose all the content without realising it.

I chose to set up a full follow-up in Home Assistant, with sensors, notifications, a dedicated screen and a visual alert on the dashboard.

The idea was not just to read a temperature, but to see right away if something was out of the ordinary.

🧊 The sensors I retained

I separated the surveillance into several areas to keep something legible and easy to maintain.

I have a sensor for the freezer, one for the fridge on the left, one for the fridge on the right and one for the fridge in the pantry.

The entities I use are the following, they are inherited from the different temperature sensors. I did not bother to make them homogeneous because they are used elsewhere:

  • sensor.temperature _freezer _temperature
  • sensor.frigo_left _tdeg _temperature
  • sensor.frigo_right _tdeg _temperature
  • sensor.frigo_cellier_temperature_frigo_cellier

For fridges, I have chosen an alert threshold of 10°C. For the freezer, I have chosen -5°C.

This is not a “generic” logic, it is really adapted to what I want to monitor at home.

📈 The screen I created

I then put all this together in a dedicated view in Home Assistant. I called this page Controls, with a fridge icon, to have all my cold equipment in one place.

On this screen, I put 7-day temperature charts and a chart of the day.

It allows me to quickly see if a temperature variation corresponds to abnormal behavior or a simple door opening.

I also have a ‘warn me’ button, I explain this right after.

🗓 Temperature charts

For each fridge and freezer, I added a temperature graph with a red annotation at the threshold. This is very convenient because you immediately see when the curve approaches the limit.

I use custom:apexcharts-card for this, with two different views: one over 7 days and one over the current day. The whole thing remains legible, even when I compare several days in a row.

Type: custom:apexcharts-card header: show: true title: Freezer temperature show_states: true colorize _states: true graph_span: 7d series: - entity: sensor.temperature _freezer _temperature color: "#0ba4e9" show: name_in _header: false apex _config: yaxis: - min: -4 max: -20 annotations: yaxis: - y: -5 borderColor: "#FF0000" strokeDashArray: 0 label: borderColor: "#FF0000" style: color: "#FFF" background: "#FF0000" text: Alert threshold -5°C

🧩 I started by creating my helpers

Before I even took care of the alert buttons, I created my helpers in Home Assistant. I used input_boolean under the heading Entries, to have one switch per device.

I wanted something simple: if the alert is activated, Home Assistant notifies me; If it's turned off, it doesn't bother me.

It also allows me to temporarily disable the notification if a message has already been sent.

It allows me to stay in control, without touching the automation itself.

🔘 Alert buttons

I have also added one button per device to enable or disable notifications. This corresponds to the input_boolean created just before.

I wanted to be able to temporarily cut off alerts when I know I'm going to open the door for a long time, or when I do a cleaning.

The button simply displays “Enabled” or “Disabled”, which avoids getting lost in the technical states. It is a detail, but for everyday use it makes the screen clearer.

Type: tile entity: input_boolean.prevenir_si_souci_de_temperature_freezer name: Notify me if temperature alert threshold exceeded features_position: vertical bottom: false tap_action: Action: toggle icon_tap_action: Action: toggle state _display: >- {% if is_state('input_boolean.prevenir_si_souci_de_temperature_freezer', 'on') %} Activated {% else %} Disabled {% endif %}

🔔 The notifications I have put in place

When the temperature exceeds the threshold, I send two types of notifications: a visual notification and an SMS.

I wanted something reliable, because a fridge or freezer problem deserves to be seen quickly.

I only trigger the alert if the input_boolean corresponding is activated. Then the automation cuts the same button to avoid receiving a flood of notifications until the problem is solved.

I'm not documenting my notifications here. I use Pushover to warn me with notify.icone _rouge and my wife is on Free, so notify.sms _christel _via _free.

🧾 The automation of the freezer

The freezer operates on a slightly different logic from the refrigerators, with a threshold set at -5°C. As soon as the temperature rises above this value, the alert is triggered if monitoring is activated.

alias: Control Temperature Freezer Description: "" Triggers: - trigger: state entity _id: - sensor.temperature _freezer _temperature conditions: - condition: and conditions: - condition: state entity _id: input_boolean.prevenir_si_souci_de_temperature_freezer state: "on" - condition: numeric _state entity _id: sensor.temperature _freezer _temperature above: -5 actions: - action: notify.icone _rouge data: Message: >- The current temperature is {{ states('sensor.temperature _freezer _temperature') }} °C. title: Check the freezer - action: notify.sms _christel _via _free data: Message: >- The current temperature is {{ states('sensor.temperature _freezer _temperature') }} °C. title: >- The current temperature is {{ states('sensor.temperature _freezer _temperature') }} °C. - action: input_boolean.turn_off target: entity_id: input_boolean.prevenir_si_souci_de_temperature_freezer mode: single

🌡 Automation of the left fridge

I made exactly the same logic for the left-hand fridge, with a threshold of 10°C. Again, the idea is to prevent it only if the surveillance is active.

alias: Control Temperature Fridge Left Description: "" Triggers: - trigger: state entity _id: - sensor.frigo_left _tdeg _temperature conditions: - condition: and conditions: - condition: state state: "on" entity _id: input_boolean.prevenir_si_souci_de_temperature_frigo_left - condition: numeric _state entity _id: sensor.frigo_left_tdeg_temperature above: 10 actions: - action: notify.icone _rouge data: Message: >- The current temperature is {{ states('sensor.frigo_left _tdeg _temperature') }} °C. title: Check the left fridge - action: notify.sms _christel _via _free data: Message: >- The current temperature of the left fridge is {{ states('sensor.frigo_left _tdeg _temperature') }} °C. title: >- The current temperature of the left fridge is {{ states('sensor.frigo_left _tdeg _temperature') }} °C. - action: input_boolean.turn_off target: entity_id: input_boolean.prevenir_si_souci_de_temperature_frigo_left mode: single

🚪 The right fridge and the pantry

I have reproduced the same structure for the fridge on the right and for the fridge in the pantry. The principle is always the same: a sensor, a threshold, an alert button, a notification, and then an automatic shutdown to avoid duplication.

alias: Control Temperature Fridge Right Description: "" Triggers: - trigger: state entity _id: - sensor.frigo_right _tdeg _temperature conditions: - condition: and conditions: - condition: state state: "on" entity _id: input_boolean.prevenir_si_souci_de_temperature_frigo_right - condition: numeric _state entity _id: sensor.frigo_right _tdeg _temperature above: 10 actions: - action: notify.icone _rouge data: Message: >- The current temperature is {{ states('sensor.frigo_droite _tdeg _temperature') }} °C. title: Check the right fridge - action: notify.sms _christel _via _free data: Message: >- The current temperature of the right fridge is {{ states('sensor.frigo_droite _tdeg _temperature') }} °C. title: >- The current temperature of the right fridge is {{ states('sensor.frigo_droite_tdeg _temperature') }} °C. - action: input_boolean.turn_off target: entity_id: input_boolean.prevenir_si_souci_de_temperature_frigo_right mode: single
alias: Control Temperature Fridge Cellier Description: "" Triggers: - trigger: state entity _id: - sensor.frigo_cellier_temperature_frigo_cellier conditions: - condition: and conditions: - condition: state state: "on" entity _id: input_boolean.prevenir_si_souci_de_temperature_frigo_cellier - condition: numeric _state entity _id: sensor.frigo_cellier_temperature_frigo_cellier above: 10 actions: - action: notify.icone _rouge data: Message: >- The current temperature is {{ states('sensor.frigo_cellier _temperature _frigo_cellier') }} °C. title: It is necessary to check the fridge of the pantry - action: notify.sms _christel _via _free data: Message: >- The current temperature of the cellar fridge is {{ states('sensor.frigo_cellier _temperature _frigo_cellier') }} °C. title: >- The current temperature of the cellar fridge is {{ states('sensor.frigo_cellier _temperature _frigo_cellier') }} °C. - action: input_boolean.turn_off target: entity_id: input_boolean.prevenir_si_souci_de_temperature_frigo_cellier mode: single

🟥 Conditional cards on the dashboard

I wanted to go a little further than just notifications. On my main view of the dashboard, I also display a red badge flashing directly on the plan when a fridge exceeds its threshold.

The principle is simple: as long as everything is fine, nothing appears. As soon as a sensor passes above the threshold, the card is displayed at the intended location and immediately catches the eye.

🧩 The decluttering template I use

To avoid repeating the same block for each device, I created a template decluttering. It allows me to reuse the same structure with only the sensor, name, position and threshold changing.

decluttering _templates: fridge: element: Type: conditional conditions: - condition: numeric _state entity: "[[sensor]]" above: "[[threshold]]" style: top: "[[top]]" left: "[[left]" elements: - type: state-badge entity: "[[sensor]]" name: "[[name]]" style: font-size: 15px text-align: center font-weight: bold color: white "--label-badge-text-color": white "--label-badge-background-color": red "--ha-label-badge-label-color": white

Then I simply call it with the variables of each device:

- type: custom:decluttering-card template: Variable fridges: - sensor: sensor.frigo_left_tdeg_temperature - name: Left - top: 62% - left: 29% - temperature threshold: 10 card_mod: style: | @keyframes blinker { 50% { opacity: 0; } } :host { animation: blinker 2s linear infinite; }

Note that I did not manage to integrate card_mod in the decluttering. I therefore reproduced it directly on the dashboard.

I took up the same principle for the right-hand fridge, the pantry and the freezer, with their respective positions on the plan.

For the freezer, of course, the threshold remains at -5°C, since the monitoring logic is not the same as for fridges.

✅ What I won with this implementation

In the end, I now have a clear, visual and useful monitoring of my cold equipment.

I see the history, I get an alert if needed, and I have an immediate visual indicator in general if something exceeds the threshold.

What I like most is that everything is easy to read on a daily basis.

I do not need to go to the menus to find out if a fridge is starting to heat: either I see it on the dashboard, or I receive a notification.

🛠 Small choices that make a difference

The mix of graphics, notifications and conditional badges works really well for this use case.

It is not a gadget: it is a real supervision of comfort and safety for the home.

And since I kept a reusable structure, I can easily add another device later without doing it all over again.

🎯 Conclusion

I did not try to do anything complicated.

I simply wanted to know at all times whether my fridges and freezer remained in the right temperature range, and to be notified as soon as a threshold was exceeded.

With Home Assistant, a few sensors, well-thought-out automations and a clear dashboard, I now have a system that speaks to me right away when action is needed.

And for me, this is exactly what is expected of good home automation: be useful, discreet and reliable.

I connect the Nuki Smart Lock Ultra to my home automation

📘🔐 Special file: Nuki Smart Lock Ultra

This article is part of my complete file from installation to accessories to home automation.

When I installed the Smart Lock Ultra At home, I quickly had this pleasant feeling: “Okay, there I switched to another category of connected lock”.

With the Keypad 2 NFC, I settled the question of everyday life: how to enter the house without taking out your phone, without a key, without instructions for use.

There was one outstanding point, the most interesting for me: How can I make sure that my lock is not “just” connected, but really integrated into all my home automation? How do I get her to talk with my scenarios, my sensors, my automations, in short, everything I have already built around Home Assistant and my ecosystem?

This is exactly what this article is about: the three possible paths, what I tested, what I kept … and what I will not do again.

🧭 Three paths for a single lock

When you go into the lock settings, into “Functions & Configuration” and then “Smart Home”, Nuki offers three main integration families:

  • Connection via Matter (Apple Home, Google Home, Amazon Alexa, Samsung SmartThings, Homey, Home Assistant…)
  • Local integration via MQTT, for advanced home automation platforms (Home Assistant, Homebridge, Jeedom, Loxone, OpenHAB, etc.)
  • Integration web via Nuki Web, initially designed for old hubs and some cloud integrations

On paper, Nuki ticked all the boxes: open standard (Matter), home automation geek protocol (MQTT) and more “classic” web integration.

In real life, these three paths do not make the same experience at all. I therefore decided to approach them one by one, with one question in mind: “does it fit neatly into my ecosystem, and does it remain consistent with my search for local-first and sovereignty?”

🏠 Matter: the “official” multi-ecosystem pathway

✨ Why I started with Matter

Matter is the new grand standard meant to unify Apple Home, Google Home, Alexa, SmartThings and others.

The Smart Lock Ultra supports it natively, via Thread, with the following idea: a single integration, and behind all ecosystems know how to speak to the lock.

On the Home Assistant side, Nuki even joined the Work with Home Assistant programme, which means that the Matter integration has been tested and validated by the HA team.

For someone like me who has:

  • Home Assistant in the heart of the house,
  • some connected speakers,
  • one-off uses with Google / Alexa,

So Matter looks like the natural way to start.

🔌Connection via Matter

The Matter pairing is done globally as for any other equipment: one activates Matter/Thread in the Nuki app, one goes through the compatible hub (Home Assistant, Apple Home, Google Home, etc.) and the lock appears with its entities (state, locked/unlocked, battery, door sensor according to configuration).

I check my hub Matter

I check that my hub is compatible, the List of compatible hubs is given in the documentation.

I have a ZBT-1, it is perfect, I am surprised that the ZBT-2 is not present in this table.

There are two modes of dialogue, as the table shows, I take two minutes to understand.

🏠 Matter via Thread: integrate the lock into my home automation

The first mode is the one I really use to bring Nuki into my home automation world.

Matter via Thread allows me to attach the lock to Home Assistant and see it as a full-fledged piece of equipment in the house.

The interest is simple: I can control the lock, know its condition, integrate it into my automations and have it interact with the rest of my installation.

This is the most logical solution if integration is to be clean, standardised and compatible with several ecosystems.

📡 Remote Access via Thread: more direct remote access

The second mode is remote access via Thread.

In principle, it does not serve to better integrate the lock into the home automation, but to make it reachable remotely without going through the built-in Wifi of the lock.

Interest is a more direct, modern and potentially energy-efficient architecture, with Thread as the basis for communication.

On the other hand, this method imposes certain technical conditions: Nuki requested that the hub provide internet access and support NAT64. Nuki even states that Thread devices will only have access to the Internet if NAT64 is activated on the hub.

In practical terms, this means that Home Assistant must not only manage the lock locally: it must also be able to act as a Thread border router and bridge the gap between the Thread network, which runs on IPv6, and the necessary Internet access for the remote service.

This requires installing the OpenThread Border Router add-on in Home Assistant, enabling NAT64, and verifying that the correct border router is being used by the lock.

Attention should also be paid to the network itself: if more than one Thread border router is present, the lock may be associated with the wrong one, which may block access to the Internet.

In practice, therefore, it requires a clean configuration, a single active Thread router or at least clearly defined as the preferred network, and a network stack that correctly accepts IPv6 and NAT64 translation.

⏳ What I do now

For my part, I have decided not to go further than Matter via Thread for the time being.

I would like to finish the three-mode test before going deeper into Matter.

I prefer to keep this evolution for later, when I will have more time to put it in place properly and above all to derive a real concrete benefit from it.

The Nuki application

On the Remote Access switch button, I understood that it corresponds to Remote Access via Thread, it is really not easy to understand if you do not dive into this issue.

When I try to activate it, the button returns to the disabled state, so the conditions for activating Remote Access via Thread are not met.

On Home Assistant

The equipment has therefore arrived well in the list of Matter Devices.

The sensor proposal is complete.

The main sensor that drives the lock was created in lock.smart _lock _ultra, I will rename it and turn the sensor into lock.smart _lock entere

I have a Nuki sensor Door Sensor which makes it possible to know if the door is open or not. I don’t mention it here either, but I can see the state of the (open/closed) door here.

The select.smart _lock _ultra_mode_de_functioning sensor is a particularly relevant configuration parameter, bravo to developers. For those who do not want to be able to unlock their lock remotely, simply change this sensor.

Both options speak for themselves, I tested and quickly understood. I'll leave it to normal. As I will not touch this configuration, I disable this sensor in HA.

Finally, the diagnostic tools framework will be able to create automations or notifications if something goes wrong.

I played with the button Identifier, the sensor button.smart _lock _ultra _identifier at home, which flashes the lock, it is just a pity that the flashing does not reflect the state of the lock. This would allow the status to be visually checked via this command.

Benefits that I quickly noticed:

  • Everything is managed locally, no need for Nuki cloud to control the lock from my home automation server.
  • The integration in Home Assistant is clean, recognised, and the entities go back correctly.
  • Voice assistants can follow, each on their own, without me having to multiply the specific integrations.

In short, Matter does what he promises: it simplifies multi-ecosystem integration, with a “once and for all” logic.

⚖ Where Matter shows its limits

For mainstream integration and for the WAF, Matter is fine. But for a homebuilder who likes to drive everything by the millimetre, it is less flexible:

  • The granularity of events is more limited than what can be achieved with MQTT (e.g. the last precise action, some fine states, etc.).
  • We remain dependent on how each hub implements Matter and exposes entities and events.
  • Advanced diagnostics, for debug or fine-tuning of automations, are more difficult to obtain than with a detailed MQTT flow.

To sum up, I kept Matter as a “universal” compatibility layer (and for voice uses), but this is not where I found the finest finesse for my advanced home automation.

📡 MQTT: the Path of Demanding Domoticians

🔍 Why I turned to MQTT

Alongside Matter, Nuki offers MQTT integration directly from the lock, via Wi-Fi or Thread. The idea is simple: the lock publishes its status (locked, unlocked, open door, battery, etc.) on MQTT topics, and accepts commands to open or close.

The advantages, on the home automation side:

  • Widespread protocol, supported by Home Assistant, Jeedom, Homebridge, Loxone, OpenHAB and company.
  • Local integration, real-time, without going through the Nuki cloud.
  • Automatic discovery in Home Assistant possible (auto-discovery), which makes integration much simpler than you might initially imagine.

On forums and blogs, there is also a lot of very positive feedback: Some have even built 100 installations. % local with Nuki + MQTT + Home Assistant, without ever opening any port to the outside.

⚙ How I integrated it into my installation

In the Nuki App, activation takes place via:
‘Lock settings’ → ‘Functions & Configuration’ → ‘Integrations’ → ‘Smart Home’ → ‘Configure MQTT’.

 

On the Home Assistant side, with the auto-discovery enabled, the lock goes up on its own as an MQTT entity, just like a Zigbee2MQTT module for example.

To check this, I used to use MQTT Explorer, here is the result.

The name sent to MQTT is the one I put on the ‘Door House’ lock, which is how the new MQTT device was named. I note that there are 11 entities that date back.

🔧 The 4 controls

When I open the MQTT integration of my Nuki in Home Assistant, I find 11 entities, including 4 commands.

These first 4 commands are not all useful for all users.

They depend mainly on how the door opens and the Exterior Hardware Store : handle, knob, bar, or other configuration.

Nuki explains that the behaviour changes depending on the type of external handle:

  • with a handle, Nuki unlocks the door and you still have to press the handle to enter;
  • with a button / knob / bar, Nuki can also pull the bolt and open the door more completely.

🚪 Gate House

lock.porte _maison

This is the main action of the lock. This is the one I use every day to lock or unlock the door normally. If I had to take only one check, it would be that one.

🏃 Lock 'n' Go

button.door _house _lock _n _go

This mode serves me when I leave home. I trigger the action, the lock lets me out, then it automatically locks again after a few seconds. It’s convenient when I want to make sure I don’t forget to close behind me.

🚪 Lock 'n' Go with unlatch

button.porte_maison_lock_n_go_with_unlatch

This is the fuller version of the previous mode. There, the lock does not only automatically lock after exit, it also releases the door during action. This is useful when a clearer opening is needed, depending on the configuration of the door.

🔓 Unlatch

button.door _maison _unlatch

This action is used to open the door “for real”, releasing the mess. It is not just a simple unlock: it is the mode that allows the door to open immediately, without any additional effort.

🔧 The Sensor

🚪 Door sensor

It is the sensor that tells me whether the door is open, closed or in an uncertain state. This is very useful because it allows me to know not only if the lock is locked, but also if the door is actually closed.

🔧 Diagnosis

🔋 Battery

This one simply indicates the battery level of the lock. This is basic information, but essential to avoid unpleasant surprises.

⚡ Battery charging

This entity tells me whether the lock is charging or not. It is useful to quickly check if the feeding is going well.

🚨 Battery Critical

It is an alert indicator. If it turns red or critical, it means that the battery is too low and must be intervened.

🚨 Door sensor battery critical

Same logic, but this time for the battery of the door sensor. If this sensor is battery powered, this entity warns me when it becomes too weak.

🧠 Firmware version

This entity displays the firmware version of the lock. This is especially useful for technical monitoring, updates and diagnosis.

🚨 Keypad battery critical

This concerns the battery of the keypad. If I use an input keyboard, this entity lets me know when its batteries start to fade.

🛡 Limits and Precautions on the MQTT Side

Not everything is perfect either, and there are a few things to keep in mind:

  • The MQTT communication is not encrypted by default: it is based on network security (Wi-Fi / Thread) and user/password authentication.
  • The MQTT broker must be considered as a sensitive point of the infrastructure, to be seriously protected (no broker open on the Internet, management of ACLs, network segmentation, etc.).

However, for a house already equipped with an MQTT broker and a well-established Home Assistant, this is probably the best compromise between flexibility, performance and sovereignty.

☁ Web integration: the ‘Historical Cloud’ mode

🌐 Nuki Web, what's the point?

Before Matter and MQTT, Nuki already offered Nuki Web, a cloud gateway to remotely control the lock, have access logs and integrate certain external services (Alexa, Google Home, some older hubs, etc.).

🧪 Why I chose to keep it in the background

Web integration remains interesting for:

  • certain remote management functions (journal consultation, management of users on the move),
  • environments where you do not want to enter MQTT or where Matter is not available.

This message makes it clear that my data will go to Nuki’s cloud server when that is precisely what I am trying to avoid.

So, in my case, there are two things that make me treat it more like a spare wheel:

  • I prefer mostly local control, with as little dependence as possible on a third-party cloud service.
  • Matter and MQTT already cover most of my integration and automation needs.

As a result, Nuki Web remains disabled at home, but I think my architecture as if everything should continue to work even if the Nuki cloud is cut, so that nothing can be sent outside.

🧪 I compare Matter and MQTT

📡 Sensors available

For this part, I mainly look at what each integration actually goes back to in Home Assistant, because this is often where the difference can be seen right away.
Matter gives me the essential information to control the lock and track its condition, while MQTT reassembles more diagnostic sensors and technical information.

Sensor / Entity 🥈 Matter 🥇 MQTT Reading
Door ✅ ✅ Both integrations can be traced back to the opening or closing state of the door.
Battery ✅ ✅ In both cases, I find the battery level of the lock.
State of charge ✅ ✅ Both solutions indicate whether the lock is loaded or not.
Critical battery ✖ ✅ MQTT exposes a finer level of diagnosis on the state of the battery.
Critical Door Sensor Battery ✖ ✅ MQTT also raises an alert dedicated to the door sensor.
Firmware version ✖ ✅ MQTT provides useful technical information for monitoring and diagnosis.
Critical Keypad Battery ✖ ✅ MQTT also tracks the critical state of the keypad battery.
Mode of operation ✅ ✖ Matter exposes here an interesting configuration parameter directly in Home Assistant.
Identify ✅ ✖ Matter also allows the lock to react visually to identify it.

On a daily basis, Matter is more than enough for simple, clean and immediate use.

On the other hand, MQTT clearly goes further as soon as I want to monitor the lock in detail, recover more complete diagnoses or exploit ancillary information such as that of the keypad or door sensor.

⚡ The speed of reaction

Historically, the difference between Matter and MQTT is quite telling.
Matter mostly goes back to the final state, while MQTT also displays intermediate transitions such as “locks” and “unlocks”, giving a finer reading of the lock’s behaviour.

Event 🥈 Matter 🥇 MQTT Reading
Locks — 19:18:02 MQTT displays the transition first, before the final state.
Has been locked 19:18:03 19:18:03 Both then go back to the final state at the same time.
Unlocks — 19:17:13 MQTT displays the transition first, before the final state.
Has been unlocked 19:17:14 19:17:14 Both then go back to the final state at the same time.
Unlocks — 19:17:04 MQTT displays an additional transition at the same second.
Is open 19:17:06 19:17:06 Both go up the state of the door at the same time.
Has been unlocked 19:17:04 19:17:04 Both then go back to the final state at the same time.
Locks — 19:16:22 MQTT displays the transition first, before the final state.
Has been locked 19:16:23 19:16:23 Both then go back to the final state at the same time.
Unlocks — 18:56:28 MQTT displays the transition first, before the final state.
Has been unlocked 18:56:29 18:56:29 Both then go back to the final state at the same time.
Locks — 18:55:09 MQTT displays the transition first, before the final state.
Has been locked 18:55:10 18:55:10 Both then go back to the final state at the same time.

🏁 My verdict

What I remember most of all is that Matter is clean and legible, but MQTT gives a more talkative and lively history.
On transitions, MQTT reveals a level of detail that Matter does not show, which makes it more interesting if I want to analyze precisely the reaction of the lock.
But the difference is really minimal, both are immediate and give full satisfaction. Neither protocol is ahead of the other.

🧭 What I keep

For my part, I will keep Matter and MQTT in parallel for a while. The idea is simple: compare the speed of reassembly of states, fluidity on a daily basis, and see which protocol suits me best over time.

In substance, the two approaches are close, and that is precisely what makes the choice interesting. Matter gives me a clean and standardised integration, while MQTT retains the advantage of a finer and more advanced home automation-oriented approach.

So I prefer not to decide too quickly. As long as both work well, I'll let them co-exist to observe what suits me best in my actual setup.

🎯 My Feeling

Honestly, at this point, both Matter and MQTT solutions are close enough for everyday use.

The real difference will be in the comfort of use, perceived responsiveness and how each fits into my Home Assistant automations.

Nuki Web remains an option, but clearly in the background for my use. I keep it as a backup solution or for more cloud / remote access needs, without making it the heart of my installation. Simply sending my personal information to a cloud blocks me at this stage.

In the immediate future, I therefore retain this dual local approach, with a slight advantage for the one that will seem to me the most natural to use.

And if the deviations remain minimal, I will probably choose mainly according to the simplicity of maintenance and the evolution of my installation.

🏁 Conclusion

In the end, the Nuki Smart Lock Ultra ticks exactly what I expect from a modern connected lock: real local integration, several communication options, and above all the possibility of adapting it to an already well-built home automation system.

What I appreciate most is not being locked in a single model.

Matter and MQTT give me the freedom to test, compare, and then keep the solution most consistent with my usage and my vision of the connected home.

Nuki Web completes the table, but for my use it remains in the background, as a complementary option rather than an integration base.

For now, I do not want to go too fast: I let both work, I observe, and then I will see which one will remain as the main solution.

I domotised my bathroom heater with a SONOFF BASIC-1GS (Matter)

🔥 Why I rebuilt this installation

There are home automation installations that are made for the first time, They serve for years, and then we end up revisiting them because the ecosystem around them has evolved.

This is exactly what happened here: I already had domotized the heating of my bathroom several years ago, but this time I wanted to start with something simpler, more modern and, above all, better integrated with Home Assistant.

The original idea has not changed: be able to start heating when I need it, switch it off easily, and integrate it properly into my automation systems.

On the other hand, the equipment has changed: for this new version, I chose to use a SONOFF BASIC-1GS, a Matter-compatible Wi‑Fi module that Sonoff presents as a 10A connected switch designed for simple, local use in Matter and Home Assistant-compatible ecosystems.

Read More

I replace my Danalock V3 with a Nuki Smart Lock Ultra

📘🔐 Special file: Nuki Smart Lock Ultra

This article is part of my complete file from installation to accessories to home automation.

📌 Why this change of home automation lock?

For several years I have been using a Danalock V3 Zigbee on my front door. It had itself replaced an old Danalock in Z-Wave, when I switched my home automation installation from Z-Wave to Zigbee.

She is still doing the job very well, but I wanted to move to a more modern solution and above all better suited to my current installation, especially with Matter in mind. I also wanted to forget the physical keys without multiplying the modules for it. And, quite honestly, I also wanted to get rid of 😇 battery management.

With the Nuki Smart Lock Ultra, What immediately interested me was the promise of a more mature package: Built-in Wi‑Fi, Matter over Thread compatibility, rechargeable battery, universal cylinder supplied and guided installation.

Looking through the official documentation, I also understood that Nuki had not simply sought to make a lock look prettier or smaller. The Ultra introduces a brushless motor, presented as more efficient and sustainable, with a technological approach that the brand brings closer to what is already known in other sectors such as electric vehicles.

In this article, I tell how I went from my Danalock V3, installed in 2023, to the Nuki Smart Lock Ultra, from the removal of the old connected lock to the first tests in the application. I will document in other articles the different modes of home automation connection as well as the interface in Home Assistant.

To tell you the truth, I discovered the Nuki Lock thanks to an opportunity to loan the equipment, I did not know the Smart Lock Ultra, I only knew the Smart Lock Go, the one with a white case under the lock. It was never compatible with my front door, because of the relief/reinforcement on the leaf between the lock and the edge of the door. Read More

I connect an Ethernet camera to Wi‑Fi with a TL-WR902AC

By 2020, I had already achieved this Assembly with a TL-WR802N to add Wi‑Fi to an Ethernet camera.

At the time, the solution met my needs, but over time I noticed regular disconnections, frequent enough that I finally decided to change equipment.

So I took over the installation completely with a TL-WR902AC, with the aim of achieving a more stable and flexible set-up.

My objective remained the same: connect a camera with only one Ethernet port to my Wi‑Fi network, without pulling an additional network cable to the box.

The TL-WR902AC acts here as a bridge: it connects to the Wi‑Fi of the house, then transmits this connection to the camera through its RJ45 port in Client mode.

🔁 I replace my old TL-WR802N

My first montage is from 2020. At that time, I had used a TL-WR802N to give Wi‑Fi access to this Ethernet camera. In principle, this worked, but the installation was not sufficiently reliable over time.

So I chose to start from scratch with a newer model.

The TL-WR902AC I was interested for a simple reason: it also allows the use of 5 GHz, whereas my previous assembly with the TL-WR802N did not give me this possibility in this context.

Read More

Néo reviews the sealing of its external siren Zigbee NAS-AB06B2

I still remember this early December 2025, my siren Zigbee outdoor NEO NAS-AB06B2, star of my initial test and my Zigbee siren comparison, had gone offline.

I climb the ladder, I dismantle … and there, disaster: full of water, the circuit soaks. I try an emergency resuscitation, nothing to do, the battery works perfectly, it is full, it is the electronic card that does not leave. Rip the mermaid!

More than a year of impeccable service reduced to nothing by inadequate sealing. I was disgusted because it was the only real good outdoor siren Zigbee.

My doubt at its reception was the ability of the solar collector to hold over time, its ability to provide more energy than the siren consumes, it worked perfectly, the fault of the siren was its tightness.

Once the mourning has been done and I admit to many requests from visitors to my blog who asked me for news of my mermaid, as it also came to them to make their souls determined, I order a new one. NAS-AB06B2 to autopsie the problem and offer my loyal readers a tutorial to tweak with putty. And there, total surprise! When I open it, I discover that NEO has reviewed its copy: the manufacturer had to receive tons of returns like mine and upgraded the model without changing the reference. Without indicating anything on the box, but by making some modifications that I will present to you.

Read More

I'm testing the smoke detector Zigbee US E8

🎯 My objectives

I need to monitor my house for fire risks as soon as the first smokes appear.

The Zigbee Smoke Detector We E8 is ideal for this mission, it is part of the 3 Zigbee equipments of the consumer range. In order to decide between them, I made a comparison:

The data of the E8 enable accurate alerts in Zigbee2MQTT and Home Assistant, such as sirens, push notifications and automatic ventilation.

The security of my home is thus strengthened in a simple and effective way.

This device complies with European standards EN14604 for autonomous smoke detectors (DAAF), as well as CE and RoHS certifications, ensuring its compliance with European safety standards.

The Photoelectric Smoke Detector We E8 home ZigBee detects a fire by detecting smoke in the air and triggers an audible and luminous alarm as soon as a certain concentration threshold is reached. It is designed for residential buildings and its single-source detection chamber is protected against false positives caused by dust, insects or moisture.

The internal ‘maze’ design allows for rapid fire detection, while limiting undesirable triggers. The case is made of fireproof plastic with a glossy finish. Read More

I am testing the new Sonoff Zigbee range: ZB2GS, ZB2GS-L and ZBDIM

Today, I am taking you on a step-by-step journey through the latest Sonoff Zigbee series of modules released at the end of 2025. What are these “Sonoff Zigbee modules”? Let me explain everything from the beginning, as if we were sitting around a table with a coffee.

Imagine: you have a banal wall switch that turns on your living room lamp. With one of these modules, this switch becomes intelligent. You can turn it on from your smartphone, say ‘Alexa, turn off the kitchen’, or program ‘turn off auto after 5 minutes if forgotten’. No cables everywhere, no WiFi that trains: it is Zigbee, a special home automation radio super stable (like WiFi but dedicated, ranged 10 to 30 meters per module, and it automatically extends into ‘mesh’ – each module relays the signal of others, like a chain of friends passing the word).

These modules are small electronic boxes (39 mm long, 45 mm wide, 17 mm thick). You're the ones hide behind your existing switch, without changing the visible button or redoing the electricity. They cost between 15 and 25 euros each, are screwed in 10 minutes (two screws, phase/black wire + neutral/blue or not depending on the model), and work with Home Assistant (HA, free software on a mini-PC or Raspberry Pi that centralizes your entire smart home).

Read More

I'm testing the Sonoff MINI DUO Zigbee MINI-ZB2GS

Compact 16A double relay for my lights

The Sonoff MINI DUO Zigbee (reference MINI-ZB2GS) is a Zigbee 3.0 dual relay micro-module with neutral, designed to fit behind a standard wall switch and drive two circuits up to a total of 16A.

MINI DUO Zigbee: why I'm testing it

I was looking for a Zigbee Dual Relay Micro Module capable of controlling two lighting circuits while remaining very compact, to be installed behind an existing switch. The Sonoff MINI DUO Zigbee (MINI-ZB2GS) promises 10A per channel, 16A in total, true Zigbee repeater mode and simple integration into modern Zigbee ecosystems.

Perfect for managing the kitchen and living room, the two switches are next to each other, with the neutral and a common phase.

Read More