Paing between Nuki Fob and NUKI Lock(simulated by ESP32S3 )

Hello everyone,

I simulate NUKI Lock with a ESP32S3.

I did two things: Pairing betweenNuki App and Nuki Lock(ESP32) and Pairing between Nuki Fob and Nuki Lock(ESP32),

you can see the result in terminal, in Picture 1, there is no problem for Nuki App pairing NUki Lock(ESP32), I have got the feedback “0100 0300 27A7”.

but in Picture 2, there is problem, if Nuki Fob pairing Nuki Lock(ESP32). the poblem is “connection params status =15”, it means , the update parameter is out of range. I guess the timeout is not correct, but it is wired, I can’t change the timeout =300. It is always 300, whatever I changed.

my questions:

  1. what’s wrong is the above problem about timeout chang? Is there any write protect for timeout in Fob?

  2. there is an example about Nuki App pairing Nuki lock in Nuki Smart Lock API V2.1, is it same as Nuki Fob pairing Nuki lock? if no, is there a discribtion about Nuki Fob pairing Nuki Lock?

as I know that, normally, if client connect with server, the blow event will happen:

connect event → Gatt Mtu event-> write event → Gatt configure event-> read event

I use ESP32 as Server(Nuki Lock) and have two different clients: Nuki App und Nuki Fob

It seems that, Nuki App happens same as above events, but Fob miss the Gatt Mtu event…

what is the different of the pairing mode between Nuki App and Nuki Fob?

Hi Lidong,

The log is showing that after connection establishment the Nuki Fob is requesting an connection parameter update on your simulated lock.
It asks to use the parameters the Nuki Fob would suggest (connection interval of 15ms, slave latency of 0 and supervision timeout of 3 seconds) but one of these may be out of range of your ESP32. This should not do any harm as you don’t need to accept the parameters.

MTU size depends on the FW Version for the Nuki Fob (check for an update with the Nuki App). Earlier versions did not accept any change in MTU size (so max. 20 bytes payload) but recent versions (>= 1.8.0) accept an MTU size up to 247 bytes.