Challenges & Mitigations
I experienced 2 main challenges and both were in the set up of the code.
Challenge 1: Setting up the time interval from for "isMeditating" to recognize when the button is pushed and to measure a certain amount of time from that point for my loop to occur. When that time period was reached, to turn everything off.
Mitigation 1: I searched online for open source code shared by others in their projects that were similar. I was able to make progress in organizing my code to work how I wanted to by pulling pieces from various code sources shared, but there was nothing exactly like what I created, so it required me to understand what I was trying to build more than I had previously anticipated. This was ultimately great, because now I know I could build this type of program from scratch and on my own in the future. Ultimately, I connected with my professor, Daragh Byrne, for guidance on how to set up the interval so that it not only shut down, but the buzzer output went off at the end of the interval. He recognized that I had not actually named my interval yet, which solved most of my issues in challenge one.
Challenge 2: Having the DHT22 sensor read by the program and then published that data to the cloud.
Mitigation 2: I consulted with my peer Xenia Kolesnikov who had a similar issue. She pointed out that I needed to actually save the external DHT22 library in the same folder as my program's file. I also met with Roberta Andaya, the class TA, to work on this because even after the library was saved, the DHT22 was not recognized. We worked together to figure out why and learned that there were files missing. We manually downloaded these from github and saved them in the correct location. Once we did this, we went through my code to locate & edit bugs in the code. I learned that collaborative learning is very effective for innovation in a space like this, where there's a lot of opportunity to create things that don't exist yet or are more personalized.