BUILDING PROGRESS




Log #1 - 1/10/20

This week we worked on finalizing our list of materials and their cost analysis. We only need to buy one item: the Amazon Fire Tablet. Which puts the total cost of the project to $49.99. As for the programming, we decided last semester that the easiest thing to do was to create an android app. The first steps have been made towards creating the application. So far we decided that we would create the app on MIT App Inventor. It is a creative and easy-to-use resource for students. Plus we needed a code for the bar code scanner that we plan to integrate in our project. The MIT App Inventor had a code to do this. We have also completed the rubric to determine how we will be graded. It is mostly based on the code, app, and hardware design.

Next week, we plan to work more on our code, and try to get the barcode scanner working at least. It should be able to use the camera and identify the number of the barcode. WE haven't completely figured out how to make a list of barcodes and sort that so the app can identify how each item will be disposed. That is also a goal for next week.



Log#2 - 1/16/20

This week we finalized our rubrics on how we will be graded and evaluated on our project. We have been experimenting on MIT App Inventor to get a feel for how it works. And learning about it has also provided us with many new opportunities for our barcode identification app. For example, we found a feature that allows us to code for a bluetooth connection. Since we would like to include LED lights above the trash cans as indicators, this could be very useful in the future. We have a basic code already written for the app. We are still waiting for the Amazon Fire Tablet that we have ordered.

Next week we plan to finish the code for the barcode of items on our list. In each list of items we have chisen there will be some that are recyclable, compostable, and ones that go directly in the trash. Then we will test the app out on an android device, and troubleshoot as problems arise.




Log #3 - 1/23/20

This week we spent out time only working on the code. We have the logic all figured out and are almost done writing the code. The code will be for android devices only, since it is easier to make an app in them. Also, iOS devices require a license to create an app and we simply don't have the time. First thing we did was set three global variables called: compost, recycle, and trash. In the storage we have a list of barcodes, for each of the three categories. We haven't typed in the barcodes yet because we're still working on finding them. Next, we set up an if/then statement compares what is within the storage to what is being scanned. The code will compare and identify the barcode based on what list it is in and then display where it is supposed to go. We also added some aesthetic details. The screen turns blue for recycle, green for compost, and black for trash.

Next week we are planning to get done with finding out all the barcodes. Then we can add them onto our list and try to finish that segment of the code. Then when we have our selected items we can run the code and debug. We also realized that Thunkable is capable of storing variable across screens, instead of having on code environments. So we will be transferring all of our code on Thunkable.



Log #4 - 1/31/2020

This week we managed to advance the code more. Our first priority was to make the sure that our app was able to add objects to its storage. We did this by making a maintenance screen that can be accessed via invisible button. In this screen we used "if button pressed" code to route the device to its camera so we can scan items. Once they're scanned they are stored in their respective list. After we completed this we created a new screen called the Verdict Screen. This screen would display the result of the object you scanned by changing the background color and text. However once we tried to test it we found out that the code wasn't doing anything once the scan was complete.

Next week we intend to try and trouble shoot the issue we have with the transition to the verdict screen.




Log #5 - 2/6/2020

This week we finished our verdict screen. We are still having trouble with the recognition part of the app. We have all of our screens finished and the app is easily able transfer between screens. Even the barcode scanner is fully operational, however after it scans it is having trouble categorizing the item. The code is acting a bit strange here. We have finished the verdict screen. Any changes from here on out will be for debugging the code. We thought we had the code saved into the different categories: trash, recycling, and compost. But the code kept resetting the item we saved into the recyclables list and kept listing it as trash. So we are still troubleshooting and learning through a lot of trial and error. Our Amazon Fire Tablet came in today.

Next week we plan to have the code problems all figured out. And then add more items onto our list for the three categories. We can also start running the code on our tablet. It is the main device we are using for the whole project, so getting our code on there is a priority.


Log #6 - 2/12/2020

This week we have downloaded the Thunkable Live app on our Amazon Fire Tablet, but due to some problems with the internet have not been able to run tests on the device. So we have been testing on our iPad. Thunkable has a feature called Thunkable live which lets you run your code and test it on a device. At the same time you can keep debugging without having to run the code again and again. Today we had many issues with our code as the main screen was not showing up but we were able to fix it. Turns out our scan button got relocated to the maintenance screen. We are not sure how it happened but it was an easy fix, slight readjustments in the code and it was working again.

Next week, we will collect the barcodes of all the products which are on our list of test items. After we have them gathered then we can fix the logic which allows us to add or remove items from thr array we have created in the code.

Log #7 - 2/21/2020

This week we added some new barcodes to our collection and tested them out. However, our code has stopped working like it had been last week. There are many problems with how the variables are being stored. There are also issues with the output once the barcode has been scanned. It is not changing to our Verdict Screen and displaying the color and label for which bin the item is supposed to go into. There seems to be some miscommunication between the list we made in the code and the vedictfactor() function. The verdict factor is not able to look at the list and see that the item was coded to be in the recyclables list. Then display the recycle screen.

Next week is to fix the bugs in the code first. This is our top priority as everything else doesn't really matter if our code itself doesn't work. The problems seems to have started when we changed the way we stored variables.

Log #8 - 2/28/2020

So far we have decided on Thunkable as the main platform to run our code on. In the beginning we had many struggles deciding what to use but now it is definite that we will be using Thunkable throughout the whole project. After many trial and error with various platforms our design, we have concluded the design and research. We had a basic outline of how we wanted the code to work in pseudo-code. We started and finished with out code in MIT App Inventor first, because we were more familiar with it. Then when we could get the barcode scanner to scan and do something with the result, we transferred the code onto Thunkable. We ordered all of our hardware, which was easy since we just needed an Amazon Fire Tablet. We faced many challenges with the logic of the code and after talking through the code many times, we finally identified some errors. We debugged and got the code consistently working for 2 items right now. Our main goals for the project this month were to finish and test the code, then debug. We have done all of these things, and now we just have to add some finishing touches to the code and get started on our frame for the device.

Next week we plan to get started on getting our Amazon Fire Tablet to get into Thunkable and run the code. Then draw a final outline for our frame for the tablet. And then start construction.





Log #9 - 3/5/2020

This week we finally managed to get our app to work as intended. As we debugged we noticed one big flaw with our app that was not allowing the app the do anything with the information it receives from the scanner. The big flaw was actually two errors that stemmed from the same problem: the app did not have proper programming describing what to do with the information it receives from the bar code scanner. One of the two issues we were having was around an if then statement with parameters that dictated that if the information that was received from the scanner matched the information that was contained within a list, it would change the value of a variable then move to the next screen. However this was failing simply because the order of the blocks inside of the if then statement was wrong.

The second issue was rather simple. One of the blocks of code was targeting the wrong variable causing it to stay on the main screen. After all of this was worked out the app started to work. Next week we will be adding the ability to remove specific values and add more bar codes to both lists.