Device driver interface for the PIR motion sensor.
More...
Device driver interface for the PIR motion sensor.
|
| file | pir.h |
| | Device driver interface for the PIR motion sensor.
|
| |
| file | pir_params.h |
| | Default configuration for PIR devices.
|
| |
◆ anonymous enum
PIR specific return values.
| Enumerator |
|---|
| PIR_OK | everything went as expected
|
| PIR_NOGPIO | errors while initializing the GPIO
|
| PIR_NOTHREAD | errors while registering the thread
|
| PIR_TIMEERR | errors while getting the time information
|
Definition at line 35 of file pir.h.
◆ pir_event_t
event type for a PIR sensor
| Enumerator |
|---|
| PIR_STATUS_ACTIVE | motion was detected
|
| PIR_STATUS_INACTIVE | no motion is detected
|
Definition at line 78 of file pir.h.
◆ pir_get_occupancy()
| int pir_get_occupancy |
( |
pir_t * |
dev, |
|
|
int16_t * |
occup |
|
) |
| |
Read OCCUPANCY value.
- Parameters
-
| [in] | dev | device descriptor of the PIR motion sensor to read from |
| [out] | occup | occupancy ratio [in 100 * percentage] The value is renewed when it is read. So it is percentage of occupancy since the last read. |
- Returns
- 0 on success,
-
-1 on errors,
◆ pir_get_status()
Read the current status of the motion sensor.
- Parameters
-
| [in] | dev | device descriptor of the PIR motion sensor to read from |
- Returns
- 1 if motion is detected, 0 otherwise
◆ pir_init()
Initialize a PIR motion sensor.
The PIR motion sensor is interfaced by a single GPIO pin, specified by gpio.
- Note
- The sensor needs up to a minute to settle down before meaningful measurements can be made.
- Parameters
-
| [out] | dev | device descriptor of an PIR sensor |
| [in] | params | parameters of the PIR sensor |
- Returns
- 0 on success
-
-1 on error
◆ pir_register_thread()
| int pir_register_thread |
( |
pir_t * |
dev | ) |
|
Register a thread for notification when state changes on the motion sensor.
- Note
- This configures the gpio device for interrupt driven operation.
- Parameters
-
| [in] | dev | device descriptor of the PIR motion sensor to register for |
- Returns
- 0 on succuess,
-
-1 on internal errors,
-
-2 if another thread is registered already