BTE1522 – Week 14 Project Assessment – Integrating Gallery Walk and Reciprocal Teaching

 

In today’s class – BTE 1522 – Innovation Python Programming and Raspberry Pi, we engaged in a dynamic and interactive learning session that combined elements of Gallery Walk and Reciprocal Teaching. This approach not only fostered collaboration and deeper understanding but also enhanced students’ ability to explain and defend their projects. Here’s a breakdown of how the session unfolded and the learning theories behind it.

Activity Overview
1 – Project Development

Students were divided into groups (1 through 5).
Each group developed a project using on Raspberry Pi, integrating sensors like BME280 & cameras, building databases, and creating dashboards.

2 – Reciprocal Teaching with a Twist

Instead of presenting their own work, each group was tasked with presenting the project of another group. For example, Group 2 (Angelina & Syarah) presented the work done by Group 1 (Amir, Azhad, Aiman).

This approach required students to thoroughly understand projects created by other groups. By presenting and understanding projects from other groups, students applied their Python coding knowledge to analyze and interpret how different groups implemented solutions using Raspberry Pi. This hands-on experience allowed them to see real-world applications of Python in sensor integration, data handling, and project implementation on the Raspberry Pi platform. It reinforced their learning by showing them diverse approaches to coding, problem-solving, and integrating hardware components like sensors, cameras, and GPS modules into functional systems.

3 – Gallery Walk Elements

After Group 1 presents their project on the Environmental Monitoring and Imaging System, the session transitions into an interactive phase. Students from Groups 3, 4, 5, and 6 ask one question each about the presented project. These questions delve into various aspects of the system, such as the integration of sensors like the BME280 for environmental data collection, the methodologies employed in Python programming to process and visualize this data, and the techniques utilized for imaging purposes.

This structured Q&A session serves multiple purposes. First, it allows students from other groups to gain deeper insights into the technical details and methodologies employed by Group 1. By asking pertinent questions, students from Groups 3, 4, 5, and 6 not only expand their understanding of different project components but also evaluate the comprehensiveness and innovation of Group 1’s work.

For Group 1, this session becomes an opportunity to demonstrate their expertise and depth of knowledge regarding their project. By articulating clear and detailed responses to the questions posed by their peers, Group 1 showcases their understanding of Python programming techniques applied to sensor integration, data processing, and system implementation. They also highlight their proficiency in problem-solving and innovation within the context of environmental monitoring and imaging systems.

This approach fosters a collaborative learning environment where students engage critically with each other’s work, exchange ideas, and enhance their technical and communication skills. It aligns with the assignment topics by emphasizing the application of Python programming in real-world IoT (Internet of Things) projects involving environmental monitoring, precision agriculture, GPS tracking, and photography with weather data integration.

Evaluation Criteria

  1. Marks were awarded based on the quality of the presentation by the presenting group.
  2. The ability of Group 1 to answer the questions accurately and comprehensively.
  3. The ability of the presenting group to explain another group’s project clearly.
  4. Learning Theories and Techniques

Reciprocal Teaching

By having students present projects they did not create, we leveraged the principles of reciprocal teaching. This method encourages active learning, critical thinking, and the ability to teach others, which in turn reinforces their own understanding.

Gallery Walk

Incorporating a Q&A session akin to a gallery walk allowed students to engage with multiple projects, ask insightful questions, and provide constructive feedback. This technique promotes active engagement, observational learning, and peer-to-peer interaction.

Peer Teaching

This hybrid approach facilitated peer teaching, where students learned from each other by presenting and questioning different projects. Peer teaching is known to enhance comprehension and retention of material as students explain concepts to their peers.

Collaborative Learning

Working in groups to understand and present different projects encouraged collaboration. Collaborative learning helps develop teamwork skills, enhances problem-solving abilities, and fosters a sense of community within the class.

 

 

 

 

Benefits of the Approach

  1. Improved Understanding – Students gained a broader perspective by engaging with multiple projects, understanding various approaches and solutions.
  2. Enhanced Communication Skills – Presenting another group’s work and answering questions honed students’ communication and presentation skills.
  3. Critical Thinking – The Q&A session encouraged critical thinking, as students had to think on their feet to ask relevant questions and provide accurate answers.
  4. Engagement and Motivation – This interactive approach kept students engaged and motivated, as they were actively involved in learning and teaching processes.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

To all the BTE1522 students (Sem 1 2024 2025), thank you very much for your active participation throughout the semester. I hope you’ve enjoyed the classes as much as I do =).

Nurul – June 16th 2024

BTE 1522 – Programming and Data Structure – Project Preparation

Today’s BTE 1522 class was an exciting dive into the world of GPS technology and its integration with Raspberry Pi. We explored the essential concepts, from importing relevant Python modules for GPS functionality to circuit construction and function coding. This session is a crucial part of our project development series, providing students with hands-on experience in incorporating GPS modules into their Raspberry Pi projects.

Understanding GPS and Its Importance

Global Positioning System (GPS) is a satellite-based navigation system that provides geolocation and time information to a GPS receiver anywhere on or near the Earth. Integrating GPS into Raspberry Pi projects opens up numerous possibilities, such as tracking, navigation, and location-based services, which are pivotal in various applications like autonomous vehicles, drones, and IoT devices.

Circuit Construction for GPS Integration

Components Needed:

  1. Raspberry Pi
  2. GPS Module (e.g., NEO-6M)
  3. Connecting Wires
  4. Breadboard (optional)

Steps:

  1. Connecting the GPS Module:

    • UART Communication: Connect the GPS module’s TX (transmit) pin to the Raspberry Pi’s RX (receive) pin and the GPS module’s RX pin to the Raspberry Pi’s TX pin. Additionally, connect the VCC pin to the 3.3V or 5V power supply (depending on your GPS module specifications) and the GND pin to the ground.
    • I2C Communication: If your GPS module supports I2C, connect the SDA (data) and SCL (clock) pins of the GPS module to the corresponding pins on the Raspberry Pi. Ensure the VCC and GND pins are also properly connected.
  2. Powering Up: Power on the Raspberry Pi and ensure all connections are secure.

Coding for GPS Integration

Python Modules:

  • gpsd: A popular library for interfacing with GPS modules.
  • serial: A library for handling serial communication.

UART Communication:

  1. Installing Libraries:

    sudo apt-get install gpsd gpsd-clients python-gps
  2. Python Code Example:

    python
     
    import gpsd # Connect to the local gpsd
    gpsd.connect() # Get GPS data
    def get_gps_data():
    packet = gpsd.get_current()
    latitude = packet.lat
    longitude = packet.lon
    time = packet.time return latitude, longitude, time # Print GPS data lat, lon,
    timestamp = get_gps_data() print(f"Latitude: {lat}, Longitude: {lon}, Time: {timestamp}")
     

I2C Communication:

  1. Enabling I2C:

    sudo raspi-config

    Navigate to ‘Interfacing Options’ and enable I2C.

  2. Python Code Example:

    python
     
    import smbus2 import time bus = smbus2.SMBus(1) address = 0x42 # Replace with your GPS module's I2C address
    def read_gps(): data = bus.read_i2c_block_data(address, 0, 16) return data while True:
    gps_data = read_gps()
    print(gps_data) time.sleep(1)

Communication Protocols

UART (Universal Asynchronous Receiver-Transmitter):

  • Pros: Simple to use, widely supported.
  • Cons: Limited to point-to-point communication.

I2C (Inter-Integrated Circuit):

  • Pros: Supports multiple devices on the same bus, more flexible.
  • Cons: More complex than UART, requires addressing.

Key Learning Outcomes

  • Circuit Construction: Students learned how to set up a GPS module with Raspberry Pi, ensuring correct connections for power, ground, and communication lines.
  • Coding Techniques: We explored Python coding for both UART and I2C communication protocols, highlighting the differences and use cases for each.
  • Real-Time Data Acquisition: Students gained practical skills in capturing and processing GPS data, which can be applied to various projects requiring geolocation capabilities.

Integrating GPS functionality into Raspberry Pi projects offers a robust foundation for creating advanced IoT applications and location-based services. Today’s class provided a comprehensive understanding of the hardware setup and coding techniques necessary to harness GPS data effectively. As we move forward, these skills will be crucial for the final project development phase, enabling students to implement sophisticated and innovative solutions.