CPEN 291(Engineering Design Studio)

CPEN 291 (Engineering Design Studio) is a course I completed at UBC. The course consisted of labs and projects covering concepts related to web-development, object oriented programming, IOT devices, machine learning, and embedded devices. UBC provdes the following class description:

Design projects involving hardware (electronic devices and circuits, microcomputers) and software.

UBC CPEN 291 Page, 2022

I worked on two group projects for this course. The first was a dancing robot using the itsy-bitsy platform with circuit python. The secound was project was an open ended design project in which my group decided to work on a moving alarm clock system. When the alarm went off the alarm clock would drive away from the user, avoid obstacles, and take a picture of the user as they press the off button. The alarm clock was an IOT device and could be set using a web-page and had a variety of different alarm options. The pictures of users as they turned off the alarm would also be sent to the webpage.

I worked on the IOT functionality of the device. I designed the webpage we used through React and created an API using expressJS. The routing was in part managed by NGINX and due to the simiplicity of the system we used a JSON file as the database.