const {openGpioChip, Input, Output} = require('easy-gpiod');
const chip = openGpioChip('/dev/gpiochip0');
const {led, btn} = chip.requestLines('blinky', {
// Use the 20th line as output and init with LED turned off
led: Output(20, { value: false }),
// Use the line with the name "GPIO21" as button input.
// The button pulls the line to GND when pressed.
btn: Input('GPIO21', {
bias: 'pull-up', // Turn on pull-up resistor
low_active: true, // The line is LOW if the button is pressed
rising_edge: true, // Detect rising edges (it's inverted due to low_active setting)
debounce: 100000 // Debounce the button with 100.000us
})
}).lines;
btn.on('change', () => {
// Toggle LED when the button is pressed
led.value = !led.value;
});
jue89/node-easy-gpiod
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
Bindings to Linux libgpiod V2.0 with a simple interface
Resources
Stars
Watchers
Forks
Packages 0
No packages published