3. PIR Sensor

3.1. Introduction

PIR Sensor is a type of electronic building block based on AM412 pyroelectric digital smart sensor. It can be used in sensing and detection of human or animal motion, sensing distance is about 4-5 meters.


3.2. Characteristic

  • Designed in RJ11 connections, easy to plug.

3.3. Specification

Item Parameter
SKU EF05002
Connection RJ11
Type of Connection Digital Output
Working Voltage 3.3V
Size 55.8 x 23.8 mm

3.4. Outlook


3.5. Quick to Start

Materials Required and Diagram

  • Connect the PIR sensor to J1 port and the LED to J2 port in the Nezha expansion board as the picture shows.


3.6. MakeCode Programming

Step 1

Click “Advanced” in the MakeCode drawer to see more choices.


We need to add a package for programming, . Click “Extensions” in the bottom of the drawer and search with “PlanetX” in the dialogue box to download it.


Note: If you met a tip indicating that the codebase will be deleted due to incompatibility, you may continue as the tips say or build a new project in the menu.

Step 2

Code as below:



  • The LED lights on while the motion being detected by the PIR sensor or the LED lights off.

3.7. Python Programming

Step 1

Download the package and unzip it: PlanetX_MicroPython

Go to Python editor


We need to add enum.py and pir.py for programming. Click “Load/Save” and then click “Show Files (1)” to see more choices, click “Add file” to add enum.py and pir.py from the unzipped package of PlanetX_MicroPython.

../_images/05001_081.png ../_images/05001_091.png ../_images/05002_10.png

Step 2


from microbit import *
from enum import *
from pir import *

while True:
    pir = PIR(J1)
    pir_value = pir.PIR_is_decection()
    if(pir_value == True):


  • A smile face displays on the micro:bit while the motion being detected by the PIR sensor or the micro:bit displays a sad face.

3.8. Relevant File

3.9. Technique File