PIR (Motion sensor)
In this page, you will learn how the PIR sensor works and what available settings you can change.
Since the device is primarily solar-powered, the PIR sensor cannot be always ON, as the device will need a lot of light on average.
Therefore, we have implemented a duty-cycle on the PIR - turning it ON for certain period of time and turning it OFF for some period. This means that the device may not always report accurate movement detection.
If you need to have the PIR constantly enabled and detecting movement, you have to insert 2 or 4 AA batteries and reconfigure the settings of the PIR sensor.
If you want to do this, we recommend sending the following downlink to the device:
Option 1 - blind period 1 minute: 3C014A00004C003C3D4B4D Option 2 - blind period 10 minutes 3C014A00004C02583D4B4D
Read more about the blind period below.
PIR Status
This commands allow you to set/get the PIR status - whether it's enabled or disabled at all. By default, the PIR is disabled.
Byte index
Hex value – Meaning
0
3C – The command code.
1
00 – Disable the PIR sensor; Default state.
01 – Enable the PIR sensor.
Example downlink: 0x3C01 – Turn on the PIR sensor.
Byte index
Sent request
Received response
0
3D – Command code
3D – Command code
1
00 - The PIR sensor is disabled. 01 - The PIR sensor is enabled
Example downlink sent by the server: 0x3D;
Example command response: 0x3D01 – The PIR sensor is on.
With the default values for PIR Check interval (54s) and PIR Measurement duration (3s) and PIR Blind time (10m) it means that:
PIR powers up every 54 seconds (PIR Check interval)
It stays powered and is looking for movement for 3 seconds (PIR Measurement duration)
If a movement is detected, it sends an immediate uplink and disables the PIR for the next 10 minutes (PIR Blind period)
PIR Blind period
Тhe PIR sensor functionality has been changed to report pir=true during the blind period for devices with firmware version ≥ 1.4.
After detecting a movement in the room, the PIR sensor is disabled for the specified blind period to avoid too many uplinks, improving the energy usage - saving battery or requiring less light to harvest.
Example with Blind period of 1 minute:
The moment the sensor detects movement, it sends an uplink.
Then the PIR is powered down for 1 minute to save energy.
After 1 minute, the PIR is powered up again and the device will send a new uplink immediately after the PIR detects movement.
The shorter the Blind period, the more time-accurate detection of movement and more uplinks, but more energy is used.
Byte index
Hex value – Meaning
0
4C – The command code.
1
XX – PIR blind period data, bits 15:8;
2
XX – PIR blind period data, bits 7:0. Default value = 10min.
Byte index
Sent request
Received response
0
4D – Command code
4D – Command code
1
XX - PIR sensor blind period - bits 15:8
2
XX - PIR sensor blind period - bits 7:0
Note: Acceptable values: 15...65535sec. (1sec. resolution).
PIR Check interval
This value instructs the sensor what's the period between PIR measurements. Outside this time, the sensor is not powered.
When the value is 0, the PIR is constantly powered and checking for movements.
Byte index
Hex value – Meaning
0
4A – The command code.
1
XX – PIR check interval data, bits 15:8;
2
XX – PIR check interval data, bits 7:0. Default value = 54sec.
Example downlink: 0x4A0006 – Set the PIR check period to 6sec.
Byte index
Sent request
Received response
0
4B – Command code
4B – Command code
1
XX - PIR sensor check interval - bits 15:8
2
XX - PIR sensor Check interval - bits 7:0
Example downlink sent by the server: 0x4B;
Example command response: 0x4B0006 – Measurement period of the PIR sensor = 6 sec.
Note: Acceptable values: 0...65535sec. (1sec. resolution).
PIR Measurement period
The PIR Measurement period is a value that instructs the sensor how long it should be checking for movements before going back to sleep to conserve energy.
Byte index
Hex value – Meaning
0
48 – The command code.
1
XX – PIR measurement period. Default value = 3sec.
Example command: 0x4804 – Set the measurement period of the PIR sensor = 4sec
Byte index
Sent request
Received response
0
49 – Command code
49 – Command code
1
XX - PIR measurement period [sec]
Example downlink sent by the server: 0x49;
Example command response: 0x4904 – Measurement period of the PIR sensor = 4 sec
Note: Acceptable values: 3...255sec. (1sec. resolution).
PIR Sensitivity
The PIR sensitivity can be set from 12 to 255. The minimum value we advise setting is 12 or 0x0C - the sensor will be super sensitive to movements.
Byte index
Hex value – Meaning
0
3Е – The command code.
1
XX - PIR sensor sensitivity. 20 is the dafault value.
Example downlink: 0x3E1E – Set PIR sensor sensitivity 0x1E = 30.
Byte index
Sent request
Received response
0
3F – Command code
3F – Command code
1
XX - The sensitivity of the PIR sensor
Example downlink sent by the server: 0x3F;
Example command response: 0x3F1E – The sensitivity of the PIR sensor = 0x1E => converted to decimal = 30.
Note: Acceptable values: 12...255.
Last updated
Was this helpful?