Team Weekly Status Report 04/01/2023

What are the most significant risks that could jeopardize the success of the project? How are these risks being managed? What contingency plans are ready?

At this point, there are only a couple of aspects our design is missing. The first is the full integration of the BT for the IMU. This should not be a huge blocker anymore. Seaver was attempting to integrate a BT library on MacOS, but we have decided that Linux may be a better option for integrating BT with the OS. MacOS tends to be a bit less lenient on using some of the low level functionality like Bluetooth.

Were any changes made to the existing design of the system (requirements, block diagram, system spec, etc)? Why was this change necessary, what costs does the change incur, and how will these costs be mitigated going forward?

One design change we had to make was the location of the LiDAR sensor. We had to move it to the center of the course in order for it to get a better view of the course. We also have considered adding other restrictions to the length of the course because the LiDAR resolution is not good enough. CJ has discovered that the sensor can sometimes be unreliable, we will attempt to get a percentage this week of how often we can count on its data. Part of the problem is it sometimes just freaks out and loses the location of the ball at seemingly random times.

Provide an updated schedule if changes have occurred.

We are up-to-date with our current schedule.

 

Erik’s Weekly Status Report 04/01/2023

What did you personally accomplish this week on the project? Give files orphotos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

This week I focused on transforming the API’s of our webApp from REST to graphQL. This was done due to the fact that we were creating an exceedingly large number of endpoints due to the various different functions that our webApp would handle. Updating ball distance, starting a new game, ending a game, were all required different endpoints using a REST API, therefore we decided to work on transitioning to the project to graphQL to have only one endpoint, with a large variety of Json like inputs. I was able to successfully setup graphQL and successfully update the database using it on my branch of the codebase. While there is more to add, this is a very promising start on the API migration, and hardest part of the migration.

 

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

I believe our progress may be a bit behind, simply due to the fact that many of our orders have been taking much longer than expected to arrive. We have ordered a battery, some “artificial turf”, and compatible RFID chips, which all have not arrived yet. This is unfortunately slowing down our integration, and potentially leaving us with a less fleshed out Interim demo then we would like. This issue should be easily resolved once the parts arrive however, as we have been doing great work integrating the rest of the components, so once these pieces finally arrive, the last few steps should be quite manageable.

What deliverables do you hope to complete in the next week?

By our iterm demo on Monday, I want us to be able to show functional ball tracking in a solo putting game, and accurately keep score of hits, and when the player finally makes it in the whole. Assuming our IMU battery, and other essential items arrive this week, we should be able to have accurate feedback on speed and club angle/ball path as interesting data metrics for our demo as well.

Seaver’s Status Report for 4/1/2023

What did you personally accomplish this week on the project?

I fixed the IMU code so that the Bluetooth now transmits floats instead of just single bytes. In the mobile app that pairs with the IMU, I also modified the settings so that it displays transmitted data as floats instead of hexadecimal values.

Erik has been working on implementing a GraphQL endpoint to simplify making changes to the backend DB. In the meantime, I augmented the homepage, so that there is a new game button that goes to the new game page. I also added functionality so that the stats page updates every 0.5 seconds. It is a bit inefficient at the moment, so we may want to switch to using AJAX in a later implementation.

Is your progress on schedule or behind?

We are currently on schedule. We will be wrapping up the integration of the LiDAR to the web app tomorrow. On the web app side, I want to deploy the app using Heroku. Perhaps we can use Kubernetes? We will finalize it tomorrow.

What steps will be taken to catch up to the project schedule?

Just need to work hard tomorrow to be ready for the demo.

What deliverables do you hope to complete in the next week?

We need to integrate the LiDAR, RFID, and pressure sensors into the web app. I will work with CJ on how the data will be processed before sending it to the web app. I also will work on looking for alternatives to host the web app itself, so that many devices can make POST requests to augment the database.