MagicMirror² v2.13.0 is available! For more information about this release, check out this topic.

[npm library] @bugsounet/pir

  • Module Developer


    I created this library if you want use a pir sensor in your module.
    This library is very simplified and ready for use in your node_helper.js

    This library is used in MMM-Assistant2Display

    single node routine for PIR sensor read


    npm install @bugsounet/pir

    In the ending of installation, if you use electron you can do electron rebuild step.

    Do you want to execute electron rebuild ? [Y/n]
    Your choice:

    Sample with pir contructor

    const Pir = require("@bugsounet/pir")
    this.config = {
      gpio: 17,
      reverseValue: false
    var debug= false
    this.pir = new Pir(this.config, callback, debug)
    setTimeout(() => { this.pir.stop() } , 5000)
    function callback(status, err) {
      console.log("[PIR:CALLBACK] Status: " + status)
      if (err) console.log("[PIR:CALLBACK] " + err)

    constructor of pir

    Pir(pirConfig, callback, debug)

    pirConfig {}
    • gpio - BCM-number of the sensor pin.
    • reverseValue - reverse presence detector value.
    callback (status,error)

    callback return with event status:

    • PIR_INITIALIZED: Pir constructor is initialized
    • PIR_STARTED: Pir start detection confirmation
    • PIR_STOP: pir stop detection confirmation
    • PIR_DETECTED: pir user presence detected
    • PIR_ERROR: pir error

    callback error return with PIR_ERROR

    if error detected, it will return it with error value


    if you want debuging information, just set to true


    • start() : start pir
    • stop() : force stop pir

Log in to reply