Author: mbahner

Mike’s Status Report for 4/29/24

This week I spent a few hours on the final presentation and poster. Besides that, with the conclusion of user testing on the front end, I have only been making small changes here and there. I have been helping Alex and Simon where they need it as we are still bringing our subsystems together. As for the schedule, we are running into flex time and I think we should be able to finish on time.

Mike’s Status Report for 4/20/24

This week I spent 4 hours in class working on the project with my team. The UI is getting very close to where we want it to be, so I have been helping out Simon and Alex with their respective systems wherever they need help. Besides that, I have been focusing on testing the UI by asking both pong players and non pong players to use our UI and fill out a form. Overall the reviews of the UI are good and I think we have almost met / have met our goal of a 95% satisfactory rate. As for the Gantt chart, I am on track and helping the teammates stay on track.

 

As for new things I learned, I have never sent requests with react before. In order to figure out how to get the front end to communicate with the backend, I watched guides on how to this connections between different frameworks. After watching these guides, I implemented a function that can send all our requests to our backend. It took a lot of trial and error and google searches, which were another way I learned how to send requests. Besides that, there are some parts of react I was rusty with, like hooks. I used online guides to jog my memory on how to use react hooks and implemented them in my part of the project.

Mike’s Status Report for 4/6/24

This week I spent 4 hours going to class. I also spent a lot of time preparing for my demo, doing a lot of aesthetic work on the front end to make it more digestible. I added a lot of stylings to things like the playing field and all the buttons in order to make our website look more fleshed out. There’s still a few default HTML stylings but I am working on changing them this next week. In terms of communication between the front end and robot, me and Simon were able to get a connection and they are able to communicate, so the end is in sight. For the gantt chart, I am on schedule as we pushed testing further back, and I am still just working on developing the front end for now.

Michael’s Report for 3/23/24

This week I spent 2 hours in class talking about ethics and how our project relates to ethics. I spent an hour talking with my teammates about how our project stand ethically and what we can do to improve our project. After the feedback we got from the breakout session, given the time, we might implement more safety features for our robot. For 2 hours we also went to class on Thursday. For about 4 more hours I worked on the frontend and starting getting some initial feedback. I showed friend the design and they told me things I could improve about it, a big thing being making it more customized and using less base HTML/CSS assets. I am still trying to get things to align well but I definitely improved the layout with CSS. I am not the greatest with CSS so it is a lot of trial and error getting things to line up. I’m pretty much on track in regards to the gantt chart, and this week I hope to get DDNS working with Alex’s help, as he has worked with it before.

Michael’s Status Report for 3/16/24

This week I spent 4 hours going to class and working with my teammates. This week a spent 4 hours trying to implement some of the trickier parts of the font end. I spent a good chunk of time trying to figure out how to make the cups dynamic and showing missed shots on the board. I did a bit of messing aorund and eventually I was able to a grid system for the cups where you can add the coordinates of a missed ball to a list and it displays all of them. in relation to the cups. Anohter thing I am wokring on right now is curved sliders, which are not as easy as i thoruhg they were going to be to implement. I’ve looked into different packages I can use and am still trying to get it working right. In regards to the schedule, I think it could be time to get some people’s initial thoughts on the UI, as we are getting to that point in the schedule. As for the DDNS, that is coming up and I already have a head start.

Team Status Report 3/9/24

There is risk of users not finding the front end intuitive as the front end is not quite ready for testing yet. We still have the risk of the pi’s processing power being a bottleneck for our computer vision. The pressure chamber we plan on using is now a 2 liter soda bottle because it is easy to buy and work with as well as being environmentally friendly. We decided we can push back front end user testing by one week, as Mike is still implementing the front end. This push should overall be inconsequential as there is a lot of time left to test and make changes. Scheduling wise Alex feels like putting lead time for parts on the gantt chart would have been useful in retrospect, but that is also nearly impossible to plan for and would go over the 1 week limit that is allowed on the gantt chart. 

Part A was written by Mike:

One global impact is the digital divide.  The digital divide is the gap between different groups of people with access to modern technology and those who do not. In order to address this concern, our project needs to be accessible to people who may not have a lot of experience using technology. One way we can achieve this is by making our UI have guides that can help people less familiar with navigating the web. Another global concern could be certain cultures being feeling excluded using our project. In order to mitigate this, we are making the UI as simple as possible, making it culturally neutral and universally appealing. Overall, no matter where you are in the world, as long as you have a device that can access the internet we want pong pal to be a fun experience.

 

Part B was written by Seung Yun:

Water pong and its variants are a huge part of American social culture. Quoting from the book “The Book of Beer Pong”, the game “has transcended its obscurity of dorm rooms … it’s infiltrated bars, tailgates, corporate parties, and even wedding receptions … the very heart of the American spirit”.

PongPal lowers the barrier of entry to this game, allowing anyone around the world to partake in this cultural tradition. Moreover, it promotes inclusivity by allowing anyone to play the game with internet access.

 

Part C was written by Alex:

Our design for PongPal includes using a 2 liter soda bottle for the pressure compartment, this demonstrates our resolve to use sustainable materials wherever possible. We also reuse a raspberry pi 5 and an intel realsense L515 LIDAR from previous years showing that it is possible to make an impactful project while also remaining environmentally aware. Overall, PongPal is fairly orthogonal to environmental factors as it is essentially a substitute to a player in a game of pong. One could say that it is environmentally friendly since it only really requires electricity and compresses its own air (our initial designs used compressed air), but the human(s) that it replaces are ultimately also resource efficient.

Mike’s Status Report for 3/9/24

This week I spent 4 hours collaborating with my team mates in class. Also, I spent 4 hours working on the front end. I kept working on the UI in React, and got it to a place where I feel comfortable focusing on getting the communication between the raspberry pi and the frontend working. During break, I learned what Express.js is and how it works, and I got a basic endpoint to receive posts from the frontend, be it changes in the robot or the fire action. I spent some time learning how Duck DNS works and tried to get a link between the pi and frontend, but after lots of trial and error I couldn’t get the rpi to register the requests. Alex recommended to me and knows to use duck dns , so we are going to trouble it shoot it when we get back from break. As for the gantt chart, we are just getting to front end user testing, so I am a little behind, but I think I can get the front end to a testable point later this week. It’s not a huge issue as we are ahead in other places, and I am looking into DDNS even tough that isn’t until next week. Lastly, I spent a lot of time helping with the design report.

Mike’s Status Report for 2/24/24

This I worked on implementing the front end prototype for 4 hours. First, I spent some time getting the Raspberry Pi to connect to the internet. I’m sure exactly what the issue was but I reset the OS and it started connecting properly. After that, I started implementing the UI in React. I have making components based on the figma, and I have been making small changes here and there to make the UI a little more user friendly. I have spent a bit of time trying to get communication  between the front end and the backend, using a JSON format API similar to the one that we showed in the presentation. But all in all, I spent most of my efforts getting the front end to start looking like the figma.

I spent 4 hours watching design presentations in class this week, and it was cool to see how everyone’s projects are going. As for the schedule, I am currently on track, as right now I am designing the front end and back end which just started on the Gantt chart. So for this next week, I will continue to keep designing the front end and back end.

Mike’s Status Report for 2/17/24

This week I worked on the front end and its API for 4 hours. I spent a few hours finishing the design the UI using figma, as well beginning to implement it in react. I designed the API, choosing to JSON to send information between the front end and the RPi. The RPi will be using express, which runs on node js, to be doing light back end work receiving and processing the JSON requests from the user. The front end and the RPi will make a link of connection by using Duck DNS in order to account for IP address changes. The frontend will simply send information about how the cannon should be positioned and if the user fired the ball in a JSON header, and the RPi will respond with the location of the shot and if it made a cup, also in a JSON header. Later in the week I picked up the raspberry pi and configured it. Once it was set up, I spent around an hour setting up the internet on the raspberry pi, as I was running into issues with CMU device. Alex helped me and we were able to connect to the internet, but not websites. We are still working on a solution.

I also worked on the design presentation for 4 hours this week. I mainly focused on the slides API and frontend, but I also helped around with all the slides in the presentation. As for the Gantt chart, none of the frontend aspects are in supposed to be in progress yet, so I am ahead of the schedule. Next week I plan on getting internet connection and set preliminary connection between the RPi and the frontend.

Michael’s Status Report for 2/10/24

This week my goal was to layout the groundwork for the website we will be hosting for to control our machine. I  have been working on the design presentation on today. We spent 4 hours working on the design slides. Earlier this week I practiced presenting for 1 hour, as I presented our proposal.  I went to the presentations on Monday and Wednesday and got to see a lot of cool projects.

I also spent 4 hours working on the website this week. For laying out the groundwork, I started by setting up a react project. I had worked with react a bit in the past, but I’m still relearning a lot of the ins and outs of creating websites. Eventually I created a baseline project with core UI components and a basic CSS sheet for styling. Besides setting up the website, I have been researching how to dynamic DNS connections for when we get the raspberry pi next week. Given that the IP we are using is dynamic and going to change, I’ve decided to use DDNS as a workaround.  I have found softwares that can connect to DDNS, like ddclient software. This software can update the DNS of the raspberry pi when the IP of the network changes so it can maintain connection to the site.