BTE1522 – Week 5 – Code Troubleshooting

This week in BTE1522, we focused on troubleshooting the Slider Game code as part of our hands-on approach to learning Python programming. Over the past four weeks, students had completed Steps 1 through 7 of the game development process — from designing a simple game window to implementing the “Game Over” condition.

In Week 5, we shifted our focus from building to refining.

Troubleshooting Score Logic
The session began with a debugging challenge: fixing the issue where the score kept increasing continuously whenever the player collided with the enemy. The expected behavior was that the score should increase by only 1 per collision. This led to an exploration of Boolean flags (such as collosion = False) and control logic — helping students understand how to track and limit events in game logic using conditional statements.

Implementing Countdown Timer
Next, students were challenged to modify the game’s default up-counting timer into a countdown timer. This exercise required them to revisit Python functions and logic structures. They learned how to set and decrease a timer, as well as how to trigger the “Game Over” condition when time reaches zero.

Debugging as a Learning Tool
Troubleshooting is a vital part of programming, and through this session, students experienced how debugging helps deepen understanding of syntax, logic flow, and structure in Python. Debugging isn’t just about fixing errors — it’s about making your code smarter and your logic stronger.

This week’s activity reinforced the idea that learning to program by building and breaking things — then fixing them — is one of the most effective ways to understand a programming language. Students left the class not just with working code, but with improved problem-solving skills and a stronger foundation in Python.

Python for Image Processing 2025/1 – BHE 2025

Today, I had the opportunity to deliver a workshop on Introduction to Python, specifically targeting its application in image processing. This workshop was part of a preparatory class for UMPSA double-degree students, who will be enrolling in their image processing course next semester. The objective was to provide them with a foundation in Python programming through a hands-on project-based approach.

Instead of a conventional lecture-style introduction to Python, the workshop focused on a project-based learning approach, where students were introduced to programming concepts by developing a Slider Game. This project served as an engaging platform to explore Python syntax and core programming concepts, including:

      1. Pixels and Color Schemes – Understanding how colors and pixels form the basis of image processing.
      2. Object-Oriented Programming (OOP) – Declaring objects, defining classes, and implementing methods.
      3. Control Statements – Implementing loops (for, while) and conditional statements (if-else).
      4. Event Handling – Managing user input and interactions within the game.
      5. Timers – Implementing countdowns and delays for interactive experiences.

This step-by-step approach helped students grasp the syntax and structure of Python while simultaneously building a fun, interactive game.

Following the Python fundamentals and project development, the workshop transitioned into setting up Anaconda, a critical tool for managing Python environments and dependencies efficiently. Special attention was given to embedding the .yml environment file prepared by the image processing course coordinator. This ensured that students had access to all key libraries and tools required for their upcoming course, including:

      1. scikit-image – For advanced image processing tasks.
      2. Matplotlib – For data visualization and plotting image transformations.
      3. OpenCV – For real-time image manipulation and computer vision applications.

By setting up a pre-configured environment, we aimed to provide students with a smooth learning experience without the hassle of installing dependencies manually.

The workshop concluded with a hands-on session exploring fundamental image processing techniques. Students experimented with:

      1. Image Scaling – Resizing and adjusting image dimensions.
      2. Color Manipulation – Converting RGB images to grayscale.
      3. Basic Filters & Enhancements – Adjusting brightness, contrast, and sharpening.

As a final exercise, students worked with the iconic Lenna.png file, applying different transformations to understand basic image properties.

This workshop was an exciting and fulfilling experience, as it introduced students to Python programming in a practical and engaging manner. By developing a project along the way, they not only learned Python syntax and concepts but also experienced how these concepts translate into real-world applications like image processing. I truly enjoyed guiding them through this process and hope they found this approach refreshing and insightful.

Wishing all the students the best of luck in their upcoming image processing course! Looking forward to seeing how they apply Python in their projects and beyond.

BTE1522 DRE2213 – Week 8 – Assignment Presentation

  1. Pause ane Resume
  2. Restart and Quit
  3. Initialization
  4. Multiplayer
  5. MultiEnemy
1 CLICK HERE 

CLICK HERE

 RAJA RE23313, SKANTHANESSH RE23028, ARIF DANIEL RE22197 https://youtu.be/wdr8H9__MGU LEE TG23095

ALIYA TG23102

Belal TG23126

6   CLICK HERE  SYAHMI TB24018, 

SHAFIQ TB24026

SYAFIQ TB24031

7 https://youtu.be/Fex0y6rYwsk  HABEEB RE23111, SYIDI RE23077

JIHAN RE23223

https://youtu.be/zobtlQxvhlk  HAKIMI TG23107

ANISH TG23127

HAZIQ TG23117

9 https://youtu.be/OhULOoHPlEM?si=9Gwsce8ryL9sYDIz   FONG RE23057, CHOO  RE23297

Zunaizah RE23248

https://youtu.be/g4y_-jlHNr4  ADIB TB2023

HAZIM TG24012

NUR SYAFIQ TB24007

10 https://www.youtube.com/watch?v=SF0_KpB2HUk LAW RE23293, GABRIEL RE23074

FARIDRE23324

https://youtu.be/e_xzHZlKjpY  MAIRA TG24026

ELLIANA TB24015 

11 click here IZZAT RE23157. 4, AIZAD RE23147

LUTFY RE23161

https://youtu.be/9loZbNFo8-g?feature=shared TANIA (TB24029)

NITHYAA(TB24027)

12  https://youtu.be/0qKAwQwh8NE FADE (TB24024)

ALIF (TB24030)

14   https://youtu.be/mtovpGBYEpk?si=sDmPPAo0LGhzKnQ2    DYRAND TG23112

 ADAM TG23086

 ALISA TG23111

15 https://youtu.be/8ZNOtMVddeQ  FATTAH RE23218, HAIKAL RE23208

FAHIM RE23267

https://youtu.be/V4jSDcJGpcA   Daniel Aufa TB24043

Danish Haikal TG24006

17 https://youtu.be/YuhGqjvRMwY?si=Jy1aS9OD78UHzybd DANIEAL RE23281, MAHI RE23174, IZDIHAR RE23292 https://youtu.be/YHngQFqPuDI   RAZIQ TG24007
SYAHEY TG24011TINESH TG244013
18  https://youtu.be/dh4DtpmEnCQ  IQBAL RE23150, HAKIM RE23211, BUKHARI RE22109 https://youtu.be/7oTHYKsIeCI  CAIROL (TB24012)

FRANCES (TB24014)

KANA (TB24017)

19 https://youtu.be/ql6ugbFjPyU HAZIQ RE23120

AIMAN RE23163

ARIF RE23320

https://youtu.be/mbikg-wHGgA?si=oputKtcMW-UzHVmQ MUHD IMRAN HAKIM TG24020

KAZRI  TG24005

AHMAD ATIQ TG24009

20   ALIF TB24011

HAIKAL TB24019

BTE1522 DRE2213 – Week 15 – Project Presentation

Well done everyone!

BTE1522

  1. Environmental Monitoring Station
  2. Attendance System-with Facial Recognition System
  3. Real-time Video Streaming
  4. Realtime Data-Logger
  5. Real-Time Data Logger
  6. Motion Detector
  7. Realtime Distance Monitoring
  8. Navigation with GPS
  9. Automation Starter
  10. Distant Meter
  11. Motion Tracker
  12. Obstacle Detection
  13. GPS Tracker

DRE2213

  1. Object Detection
  2. Temperature Detector
  3. Weather Dashboard
  4. Smart Surveillance System

  5. Weather Companion
  6. Image & Acccelerator Dashboard
  7.  Weather Station
  8. Fitness Tracker
  9. Image Tracker
  10. Motion Gesture Sensor

Raspberry Pi Programming 2025/1 – KV Kajang

*UMPSA STEM Lab Raspberry Pi Programming Synopsis can be found here.

In the Raspberry Pi IoT session, 35 students and teachers from Kolej Vokasional Kajang were introduced to the concept of the Internet of Things (IoT) using Raspberry Pi on the UMP STEM Cube, a pico-satellite learning kit specifically designed to facilitate engineering learning.

The content covered basic digital input/output operations on onboard LEDs, as well as topics such as dashboard design using gyro meter and BMU280 sensor data, including collecting and storing data in a cloud database. Participants learned to interface sensors with Raspberry Pi boards and develop IoT applications for real-world scenarios. The session provided students with valuable insights into IoT technology and its applications in various domains.

A special appreciation is extended to Pn Rohayu, Ts Adam and Mr Siva from KV Kajang for coordination in facilitating communication between the participants and the UMPSA STEM Lab :).

Jan 22nd

 

BTE1522 DRE2323 – Week 14 Class Wrap

Hello BTE-ian and DRE-ian,

It’s officially a wrap. Thank you!

I hope you enjoyed the classes as much as I do.

 

Senior Design Project sharing

Project quarantine

As the semester draws to a close, Week 14 marked the end of our BTE/DRE classes with a comprehensive and reflective session. Let’s revisit our achievements, connect with inspiring senior projects, and engage in meaningful discussions about our learning experiences. Here’s a recap of the highlights from this final class.


A. Revisiting Targeted Learning Outcomes

The Course Learning Outcomes (CLOs) to reflect on the skills and knowledge gained throughout the semester:

The activities in class (week 1 – Week 13) are aligned with these outcomes, from setting up Raspberry Pi devices to developing functional Python programs and integrating hardware components into practical projects.


B. Learning from Senior Design Projects

Presentations by five senior students attached to the UMPSA STEM Lab, where they shared their design projects, providing insights into advanced applications of Raspberry Pi, the UMPSA STEM Cube, and sensors like LiDAR and cameras. Their projects demonstrated the application of technology in analytics and problem-solving, including:

  • Environmental monitoring systems using Raspberry Pi and sensors.
  • Autonomous navigation projects leveraging LiDAR for spatial awareness.
  • UMPSA STEM Cube-based solutions for data collection and analytics.
  • Camera-enabled AI systems for image recognition and analysis.
  • Innovative control systems that integrate various sensors for precision tasks.

These presentations served as a source of inspiration and a roadmap for how you can build on their foundational skills to tackle complex, real-world problems.


C. Reviewing the Pedagogical Approach used in BTE1522 and DRE2213 – Project-Based Learning

This semester’s pedagogy centered on project-based learning, emphasizing active participation and hands-on experience. The two primary projects included:

  1. Slider Game Development
    • You’ve applied Python programming concepts to create a fully functional video game. This activity fostered an understanding of variables, loops, control structures, and debugging techniques.
  2. Digital Making Projects
    • These involved integrating Raspberry Pi and sensors to develop functional hardware solutions, such as digital input/output systems, conditional statements, and data display mechanisms.

By engaging in these projects, I believe you have learned programming through the process of building and problem-solving. This approach not only reinforced technical skills but also encouraged creativity, critical thinking, and resilience in troubleshooting challenges.


D. Reflective Discussion and Deliberation

To conclude the session, we engaged in a reflective discussion with the following prompts:

  1. What Have You Learned in the Class?
    • Students shared their newfound skills, such as configuring Raspberry Pi devices, writing Python programs, and integrating hardware with software.
    • Many emphasized how the hands-on projects deepened their understanding of programming and hardware interaction.
  2. What Was the Most Challenging Aspect, and What Could Be Improved?
    • Challenges included debugging complex code, understanding hardware limitations, and managing time during project development.
    • Suggestions for improvement included more guided tutorials, additional practice sessions, and collaborative troubleshooting workshops.

These discussions highlighted the growth and resilience students developed while navigating challenges and celebrated their achievements in mastering new skills.


This semester’s journey through BTE/DRE courses has been a testament to the power of learning by doing. From developing Python games to building digital solutions with Raspberry Pi, I hope you have not only gained technical expertise but also cultivated problem-solving skills and design thinking.

As we wrapped up the class, I hope you felt a sense of accomplishment and inspiration, ready to apply your skills to future endeavors. The combination of project-based learning and reflective discussions has provided a strong foundation for continued growth in programming and hardware development.

I look forward to seeing how you, the budding innovators =) will use your skills to create impactful solutions in the years to come.