UMPSA STEM Lab – Raspberry Pi IoT 2026

UMPSA STEM Lab has engineered a comprehensive, self-paced Internet of Things (IoT) curriculum centered around the Raspberry Pi Pico and MicroPython. Designed to transition beginners into capable hardware developers, this 11-activity framework bridges fundamental programming concepts with real-world wireless cloud telemetry and long-range hardware interaction.

Core Pedagogy: Self-Paced Mastery & True Digital Literacy

The UMPSA STEM Lab curriculum operates on two foundational principles: individual pacing and absolute code ownership.

The learning pathway systematically introduces hardware control, bus protocols, analog processing, and wireless telemetry.

 

1. Fundamentals & Digital Outputs

Students begin by interacting with basic General Purpose Input/Output (GPIO) pins.

      1. GPIO Control Defining output pins to control red, yellow, and green LEDs using MicroPython’s machine.Pin library.
      2. Timing & Iteration Implementing time.sleep(), for loops, and while True infinite execution loops to construct traffic light state machines.

 

2. Actuation & Input Logic

Moving beyond static outputs, the curriculum introduces dynamic control and user interaction.

      1. Pulse Width Modulation (PWM) Driving SG90 servo motors at 50 Hz, translating duty cycles (duty_u16) into precise physical horn positions and smooth sweep animations.
      2. Digital Inputs Configuring tactile push buttons and slide switches with internal pull-up resistors (Pin.PULL_UP).
      3. Conditional Logic Utilizing if/else structures to make real-time operational decisions based on pin states.

3. Display Integration & Shared Bus Architecture

As output demands grow beyond simple LEDs, multi-device communication channels are introduced.

      1. I2C Protocol Interfacing 0.96-inch OLED displays using the ssd1306 library over shared SDA (GP2) and SCL (GP3) bus lines.
      2. Sensory Data & Motion Connecting MPU6050 motion sensors on the same I2C bus using custom libraries (imu.py), formatting floating-point readings with round() and abs() to create tilt alert systems.

4. Analog Processing & Sensor Calibration

To measure continuous physical phenomena, students transition from binary digital signals to analog processing.

      1. Analog-to-Digital Conversion (ADC) Reading soil moisture levels using 16-bit resolution (read_u16()) on ADC-capable pins (GP26).
      2. Empirical Calibration Testing probes in dry air and saturated soil to establish customized numerical thresholds, converting raw voltages into accurate 0–100% moisture percentages.

5. Cloud Telemetry & Peer-to-Peer Wireless Protocols

The advanced modules transform standalone microcontrollers into connected IoT endpoints.

      1. Wi-Fi & Cloud Telemetry (Pico W) Connecting to 2.4 GHz Wi-Fi networks and establishing lightweight MQTT messaging with Adafruit IO. Students construct cloud dashboards with interactive toggle blocks to control physical board LEDs globally via sub/pub callbacks (set_callback, check_msg).
      2. Hardware UART & Long-Range Radio Configuring physical radio transceiver modules (Ebyte E70) via UART at 9600 baud. Students set mode pins (M0, M1, M2), reconfigure operating frequencies/channels across 410–441 MHz, and send encoded byte payloads over airwaves without requiring cloud infrastructure.