Ryan’s Status Report for 04/06/2024

This week I completed training a new model using the new dataset which gave me an accuracy of up to 81.6%. From our validation and training steps, it is evident that the model will perform significantly better with additional training. Therefore, I set up Google Cloud to train the model for 150 epochs. Each epoch takes about 15-20 minutes to train and validate. I hope this new training will help us achieve our accuracy rate of 95%.  I have also used the confidence level outputted by my model when detecting objects to implement any object prioritization algorithm. In addition, I faced a few challenges this week with the Jetson Nano. The Jetson Nano has suddenly started to be stuck on boot up and not proceed to its environment. Since the model has reached the end of life, there is very little help on this issue. We have temporarily switched to the Jetson Tx2 as there is more help for it, but we plan to try again with a different Jetson Nano concurrently. We prefer the Jetson Nano as its size works well for our product.

My progress is slightly behind schedule as a result of the Jetson issues, but I hope to get back on schedule soon.

Next week, I hope to finish training our final model and incorporate the model into our Jetson. I also hope to have a working Jetson Nano by the end of next week but will continue to use the TX2 as our backup if needed. In addition, I want to test the communications between the Raspberry Pi and the Jetson as well as the communication between the Jetson and the iOS App.

Verification and Validations:
The Verification tests I have completed so far are a part of my model. There are two main tests that I am running. The validation tests and the accuracy tests. The validation tests are a part of the model training. As the model trains, I test the accuracy of the model on images that the model does not see during training. This helps me track not only if my model is training well, but also t ensure that my model isn’t overfitting to the training dataset. Then, I ran accuracy tests on my trained model. This is to measure how good the model is on data that isn’t part of training or validation.

This upcoming week, I plan to run two different tests on my system. The connectivity tests and the longevity tests. I want to ensure that there is proper connectivity between the Jetson and the Raspberry Pi as well as the Jetson and the IOS App. The connectivity between the jetson and the Raspberry Pi is via the GPIO pins. Therefore, testing the connectivity should be straightforward. The connectivity between the Jetson and the iOS App is via Bluetooth. Therefore the connectivity tests will include how far apart can the phone be from the Jetson to ensure proper connection, as well as power requirements to maintain a good Bluetooth connection.

In addition, I will run longevity tests on the Jetson. Currently, our plan assumes that the Jetson will need its own battery to be able to last 4 hours long. However, I want to first check how long the PiSugar module will be able to consistently provide good power for both the Raspberry Pi and the Jetson. Based on the results of that test, I would decide on the appropriate Battery for our Jetson. This test will also depend on if we can get the Jetson Nano working again,

Oi’s Status Report for April 6, 2024

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).

For this week, I worked on learning how to save user’s data to the app so that the user would not have to reconnect to a device via bluetooth every time the app restarts. I figured out how to save data properly and all. I have also incorporated another feature where the user can swipe on their screen (anywhere) and then the program will take them back to reset their settings. Currently, the swipe detection works fine. I spent a while figuring out the ideal swipe distance as well, as we want to differentiate clearly between swipes and taps, as their effects will be different. However, I am currently a little bit stuck on how to navigate to a different page once a swipe has been detected, and I have been playing around with the code for a bit here. 

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

I believe my project is currently on schedule.

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

For next week, I hope to be able to make the smooth transitions between different pages (after a swipe has been detected to go back to the connecting page). I also hope to work on getting data from Ryan and Ishan’s parts once we’ve fixed Jetson issues. We will also be working together to integrate the headset.

ADDITIONAL:

Now that you have some portions of your project built, and entering into the verification and validation phase of your project, provide a comprehensive update on what tests you have run or are planning to run. In particular, how will you analyze the anticipated measured results to verify your contribution to the project meets the engineering design requirements or the use case requirements?

Verification is usually related to your own subsystem and is likely to be discussed in your individual reports.

For my own part, I have looked into incorporating Apple’s accessibility features on the app, as Eshita, our TA, has recommended. However, I’ve decided not to, as that does not integrate well with what we want our app to do. With the accessibility features from Apple, if the user were to tap on the screen (anywhere), they aren’t guaranteed that the message on the screen will be read to them. They need to tap specifically on the text, which the chance of them tapping on that right away is probably low.

I will also be  finding visually impaired people and blindfolding people and having them use the app, and gathering feedbacks and comments from them on how the app can be improved if you can’t see properly. I will be gathering qualitative feedbacks here from them and improving my iOS app based on that.

Once the data can be sent from Ryan and Ishan, I will also be measuring the latency from the time that the data was sent to when it was read to the user to make sure that it is a low number and within our target.

I will also be running the app on my phone and making sure that the app will not die let’s say if the user puts their phone to sleep or turns their display off. The app should still be working in the background for our users. This will ensure that we are being reliable and safety.

I will also be checking that connection error alerts are working for the user once the device gets disconnected or connection fails at any point. We want to notify the user as soon as possible. Again, latency here will be measured.

When conducting the user testing (as described in our presentations), we will also be asking the user on how clear the notification alerts/messages are. I will be gathering qualitative feedback on that and will be improving our app further until more than 75% of the users find it clear.