58. About¶
This is a manual test application for the PIR motion sensor driver.
In order to build this application, you need to add the board to the
Makefile’s WHITELIST
first and define a pin mapping (see below).
59. Usage¶
There are two ways to test this. You can either actively poll the sensor state, or you can register a thread which receives messages for state changes.
59.1. Interrupt driven¶
Connect the sensor’s “out” pin to a GPIO of your board that can be configured to create interrupts. Compile and flash this test application like:
export BOARD=your_board export PIR_GPIO=name_of_your_pin make clean make all-interrupt make flash
The output should look like:
kernel_init(): jumping into first task... PIR motion sensor test application Initializing PIR sensor at GPIO_8... [OK] Registering PIR handler thread... [OK] PIR handler got a message: the movement has ceased. PIR handler got a message: something started moving. PIR handler got a message: the movement has ceased.
59.2. Polling Mode¶
Connect the sensor’s “out” pin to any GPIO pin of you board. Compile and flash this test application like:
export BOARD=your_board export PIR_GPIO=name_of_your_pin make clean make all-polling make flash
The output should look like this:
kernel_init(): jumping into first task... PIR motion sensor test application Initializing PIR sensor at GPIO_10... [OK] Printing sensor state every second. Status: lo ... Status: lo Status: hi ...