Project Journal for Andrew Haggerty
=============== Week 15: =================
Entry 3: Website Work session 3 + project demo-----------------------------------------------------------------
Date: April 25thStart Time: 1:00pm
Duration: 4.5 hours
Goal: Add a couple more settings and finishing touches to website
- 1. check if POST field user_email has been set
- 2. if so, create data variable using sanitize_text_field() from POST[user_email]
- 3. create file_path variable with value /var/www/html/uploads/email
- 4. use file_put_contents(file_path, data) to write contents to the file
- 5. use wp_redirect($_SERVER['HTTP_REFERRER']) to redirect to the original page
- 6. add an action to map save_email_input to handle_email_input function
- 1. set default timezone to EST using date_default_timezone_set()
- 2. specify temp data file path
- 3. if file path exists, return a formatted date
- 4. else report that file was not found
- 5. map the shortcode to the read_sensor_timestamp_shortcode function
Entry 2: Website Work session 2-----------------------------------------------------------------
Date: April 24thStart Time: 2:00pm
Duration: 4 hours
Goal: Get LED color settings working
- use fetch() to create a post request to the admin-ajax.php program which calls set_led_color() in functions.php with parameter "color" which is a URI encoded version of the setcolor function input
- get the server response using .then and throw an error if something went wrong
- first, check if the "color" field is set in POST
- if so, create a plaintext-safe color variable by using sanitize_text_field() on the POST[color] field
- specify the file path we want to alter by declaring a variable, in this case = '/var/www/html/uploads/LED_configuration'
- use file_put_contents(file, color) to insert the data into the file
- report which color was saved using echo
- if color is not set, return an error: no color provided
- lastly, kill the process with wp_die()
- after the function, add actions to map the possible ajax calls to the function name
- 1. specify the paths of temp and humidity files
- 2. declare current time timestamp using date()
- 3. check whether the difference between current time and filemtime(temp/humidity) is greater than 120
- 4. if so, send an email to specified recipient using the mail() function
- 5. if mail function succeeded, echo "Email sent successfully"
- 6. else echo "Failed to send email"
Entry 1: Website Work session-----------------------------------------------------------------
Date: April 23rdStart Time: 1:00pm
Duration: 3.5 hours
Goal: Create a project website page that display image and sensor data
- 1. set a file_path variable for the target path
- 2. check that file_exists(file_path) returns true
- 3. if so, set content variable that is html friendly using nl2br() function (new line to br) and file_get_contents(file_path)
- 4. set desired unit variable
- 5. return contents appended with unit
- 6. if file does not exist return "file not found"
- 7. use add_shortcode() to map the website shortcode to the function that should be called in functions.php
=============== Week 14: =================
Entry 3: Checkoffs and RaspPI setup-----------------------------------------------------------------
Date: April 18thStart Time: 12:30pm
Duration: 3.5 hours
Entry 2: Code testing with PCB and LED strip config -----------------------------------------------------------------
Date: April 17thStart Time: 7:30pm
Duration: 1 hour
Goal: Configure LED strip to be safely testable and test my code on the finished PCB
Entry 1: Manlab and HC-SR04 work -----------------------------------------------------------------
Date: April 16thStart Time: 12:30pm
Duration: 1.5 hours
Goal: Fix the HC-SR04 so that data output is correct
=============== Week 13: =================
Entry 3: HC-SR04 Work session -----------------------------------------------------------------
Date: April 11thStart Time: 4pm
Duration: 3 hours
Goal: Continue debugging the HC-SR04 code
Entry 2: Manlab, LED strip testing, and HC-SR04 initial grooming and configuration ------------------------------------
Date: April 9thStart Time: 12:30pm
Duration: 3.5 hours
Goal: Test LED strip to get settable color values, and get started on configuring the Ultrasonic sensor.
Entry 1: LED strip work session -----------------------------------------------------------------
Date: April 8thStart Time: 7:15pm
Duration: 2.5 hours
Goal: Debg LED strip and get it to display pure white light.
=============== Week 12: =================
Entry 2: Manlab and ESP-IDF setup + debugging -----------------------------------------------------------------
Date: April 2ndStart Time: 12:30pm
Duration: 4 hours
Goal: Discuss project status and workload with teammates, setup ESP-IDF on lab computer (for my account) and debug issues
- first half of session, Pat was using the lab computer and esp32 to test his code
- he shared a github repo with the existing codebase with me
- I began reading through what has been written thus far, and tried to make sense of what each function did
- discussed with pat about what confusing lines/functions mean and tried to help with debugging while reading through codebase
- began looking for resources online to help with the programming of the LED strip
- found the github repo for the adafruit neopixel which we had referenced earlier in the semester
- it is written in esp-idf, but is very complex with lots of architecture handling
- adafruit neopixel library
- begin reading through library to decipher how it works and whether it is useful for our cause
- lots of confusing structures like the one shown here:
- found the end of architecture handling at line 3285
- rest of code in this file includes useful functions such as setpin, setpixelcolor, adjustbrightness, etc.
- shown here is their set pixel color func:
- read all functions listed and start making sense of how the LED strip may be contolled using an adressable pixel structure and r,g,b values
- take control of lab computer and begin setting up esp-idf, as it hasnt been set up here
- takes a while to download everything
- clone our github repo into the newly created esp-idf project
- takes a long time to download and migrate all files present
- after setup, try to write a simple program and build
- encounter error with cmake file: showing invalid/corrupted/not found
- look into issues by googling error, not effective
- run clean: errors and says to manually clean build folder
- delete build folder
- re-run build, same error
- check cmake file location, looks ok
- check that cmake file is listed within necessary makefiles
- add file path to makefiles
- re-run build, same error
- re-install cmake, and add new file path to make file
- re-run build, same error
- terminate work session, time for 4:30 class
Entry 1: A9 Research and Finishing -----------------------------------------------------------------
Date: March 29thStart Time: 2:30pm
Duration: 3 hours
Goal: Complete Patent research and finish writing A9
- Began the session by researching potential patents and patent infringements
- pulled up lecture slides on legal and regulatory requirements
- noted the definitions of useful, novel, and non-obvious clauses
- started browsing patents
- pulled up team 21's initial project prooposal and re-read the 3 listed patents
- Smart Refrigerator
- Home refrigerator systems imaging their interior and method
- Refrigerator including a terminal, and method for controlling same
- determined that the patent describing the terminal is no longer relevant, since we are no longer implements a display
- began writing up descriptions and explanations for the 2 other patents
- continually reference lecture slides and A9 examples for guidance
- after finishing this writing, look for a 3rd relevant patent
- skim several potential patents, pass up on a few due to similarity/ lack of uniqueness to other 2 examples
- find a suitable patent: Home appliance, network connection system for home appliance and network connection method of home appliance
- thoroughly read through the patent and its claims
- write explanation for this patent with similar process of other 2
- Begin writing the rest of the unfinished regulatory section
- identify relevant regulatory bodies by googling things listed on the lecture slides
- read some of the examples and read through their sources to learn more about the topic
- write the rest of the explanation, citing a few sources from the examples
=============== Week 11: =================
Entry 2: Espressif IDF Learning -----------------------------------------------------------------
Date: March 28thStart Time: 2:00pm
Duration: 1.25 hours
Goal: Learn more about ESP-IDF for upcoming software development phase
- Start by googling tutorials about ESP-IDF
- Skim through a few sites and browse videos
- Found a tutorial from a dev at espressif: Beginners Guide to Key Concepts and Resources
- Watched the video in full, taking detailed notes and often stopping/rewinding to write important information
- Here are the full note sheets:
- To summarize a few of the key things I learned:
- How to utilize idf.py commands from terminal to build, flash, and monitor the project
- How these functions will look when I run them and what their terminal output means
- Some details about FreeRTOS for multithreading capabilities
- What tasks are, how they are structured, and their various states
- How FreeRTOS implements a scheduling algorithm to take care of user defined tasks
- The general workflow of how I should implement desired features: Define Subsystems -> Find and Define components and libraries -> Read APIs -> Implement Connecting Logic
- I learned a lot from this video, and feel confident about starting the bulk of the programming tasks in the upcoming week
- Became much more prepared to use the tools needed for ESP32 programming
- Scheduled a coding work session for this Sunday with Pat
Entry 1: A9 Grooming and Research -----------------------------------------------------------------
Date: March 26thStart Time: 12:30pm
Duration: 2 hours
Goal: Gain an understanding of what A9 is and begin working
- Began familiarizing myself with the assignment by referencing the 2 examples posted on the assigment page
- Read each example carefully to see which agencies typically apply to 477 projects
- Found document on FCC regulations which was sourced by the second example: FCC Regulations
- By reading the document, I determined that our device is an intentional radiator due to its Wi-Fi usage
- Additionally determine that it will be a class B device since it will typically be installed in people's homes
- Begin writing the regulatory analysis section of the assignment
=============== Week 10: =================
No entries.
=============== Week 6: =================
Entry 3: WiFi configuration -----------------------------------------------------------------
Date: February 21stStart Time: 6:00pm
Duration: 3.5 hours
Goal: Connect to PAL3.0
- Create new arduino sketch to combat program memory issues
- This sketch only imports wifi to keep the library overhead light, since I'm only testing wifi today
- copy over some of the previous code used for wifi connection
- flash and test this code to see whether it works/ where it fails
- output is indefinitely waiting for wifi to connect, meaning the something with the configuration failed
- brainstorm ideas of why this could be failing
- ideas like - wrong wifi library, misuse of wifi methods, not enough information for wifi to connect, incorrect ordering of function calls
- realize it is possible there's not enough information for connection to PAL3.0
- walk through manual PAL3.0 connection process
- click connect - asks for username and password since it is an organization login
- realize this could be the issue, since i'm only passing password to the wifi config
- begin troubleshooting this issue - google how to connect to wifi with organization login using esp32 source: surprisingly useful reddit forum
- one comment mentions the "WiFiClientSecureEnterprise" example for arduino IDE
- look into this example, find a similarly named sketch and open it
- this example passes some extra information to the wifi config which looks promising
- example explicitly aims to connect to eduroam, which is accessible from the lab
- enter my information into the example in an attempt to connnect to eduroam
- flash and run - output reads that the esp32 did connect to eduroam, but it continuously fails to connect to the website given by example
- this makes sense, as I don't have access to that website
- modify my wifi setup code to use similar techniques as shown in the example
- main differences are omission of a http target and omission of continuous looping print statements
- this code only aims to connect to PAL3.0 and inform the user when connection occurs, also display IP address
- flash and run - output reads successfully, connected to PAL3.0 and displays valid IP address
- successful PAL3.0 connection is achieved and maintained
Entry 2: WiFi configuration research -----------------------------------------------------------------
Date: February 20thStart Time: 3:00pm
Duration: 1 hour
Goal: Find out more about our wifi configuration issues
- google how to connect esp32 to wifi network source: How to connect esp32 to Wifi tutuorial
- watch video
- learned common ways to configure, including using arduino
- he uses wifi_multi.h instead of wifi.h
- his code still looks similar to mine, which fails to connect to PAL3.0
- google other sources, find a forum on wifi troubleshooting troubleshooting
- some suggestions are using a phone hotspot to ensure connection, using post and get methods of HTTP to parse a login website
- unsure of how useful these suggestions are - we can't use a hotspot for practicality reasons, and PAL3.0 doesn't utilize a website for user login
Entry 1: LED strip -----------------------------------------------------------------
Date: February 19thStart Time: 12:00pm
Duration: 3.5 hours
Goal: Configure the LED strip
- Pat assigns me task of connecting the microcontroller to the LED shift register
- Google how to connect to this particular LED strip source: RGB LED strips
- Study example code from forum
- Download and install the adafruit neopixel module
- Make initial attempt to connect to led strip using similar code
- code aims to initialize an adafruit_neopixel object with 400KHZ setting to pin 19 and turn the first LED red
- Flash and run code - no lights turn on
- check syntax, realize I forgot to run the .show() method
- Flash and run again - still no lights
- Reset the chip to ensure correct initialization of code
- run again, this time random leds turn on - first 7 lights were on with assortment of different colors
- look over code and compare to examples, find no discrepencies
- check wiring on LED strip - everything looks good
- examine strip closer and see arrows on each led indicating direction
- feel strip and realize the lights are generating a lot of heat
- question whether the strip is wired backwards
- switch direction of wiring (so that the other end of the strip is connected)
- flash and run again - similar issue but different lights turn on and with different colors
- check bill of materials for part name
- google the part and find digikey datasheet source: 1528-2710-ND
- examine the picture provided carefully, compare to our led strip
- realize this isn't the same strip
- must have made a mistake when looking into our prototype part
- worried that this led strip won't interface correctly, and that the library will be useless
=============== Week 5: =================
Entry 2: Temperature and Humidity sensor configuration -----------------------------------------------------------------
Date: February 12thStart Time: 11:45am
Duration: 3 hours
Goal: Configure the Digilent Pmod Hygro Temperature and Humidity sensor.
- Find reference manual for this sensor: PMOD HYGRO
- Consult reference manual to see pin setup for standard operation
- Wired the device (Vss, GND, SCL, SDA) using pins according to Pat's schematic
- Research how to request readings from the device using arduino ide
- Found source: link
- Installed required HDC1080 Arduino library
- Looked at examples that come with the library
- wrote code to initialize a sensor object and request a reading
- gets reading, but values look unrealistic (150 degrees C and 100 percent humidity)
- debug by making sure my calls are correct for sensor read, found a typo mistake
- rerun, get same issue
- ensure wirings and pin placement is correct, found that device was wired one space off
- rerun, get same issue
- refer to esp32 data sheet to see what pins are ideal for i2c connection
- find that pins 21 and 22 are ideal, rewire to those pins
- rerun, now readings look correct, verify temperature
- add a command to the list for requesing temps:
- Run and observe
- command works correctly, allowing for command line control via bluetooth
- continue working on wifi capabilities from last session
- write preliminary code for setting up connection to PAL3.0
- simply sets up the microcontroller as a station, and passes "PAL3.0" as ssid and my purdue password as pw
- Run and observe
- code doesn't compile due to program memory being exceeded
- the addition of the Wifi.h header pushed it to 128% capacity
- research ways to better optimize the code: link
- try cleaning up unneeded variables from previous sessions
- minimize the amount of global variables
- change memory heavy variables (longs and floats) to ints where floating point operation is not needed
- run and observe, still wont finish compilation due to storage reasons
- Next steps: remove the need for strings.h by simplifying string operations
- minimizing library usage should reduce storage used
Entry 1: A5 work and research -----------------------------------------------------------------
Date: February 8thStart Time: 3:00pm
Duration: 1 hour
Goal: Research and Complete my section for A5 (Ultrasonic Sensor).
- Navigate to digikey parts list
- Search for ultrasonic sensors
- Found potential part 1: MA40S4S
- Found potential part 2: HC-SR04
- Found potential part 3: H2KA300KA1CD00
- Compare product specifications posted on digikey
- Compile a table with notes and specs:
- Process of elimination
- H2K sensor is $15.14, which is much more expensive than the other two parts
- It boasts 300kHz sampling rate, but our application doesn't require extremely fast rates, since door opening is a human motion
- H2K eliminated
- After further research of the MA40S4S: link
- The sensor can struggle in cold temperatures when being stored for long periods of time
- One advantage is that the sensor is smaller than the remaining candidate
- This sensor is double the price of the HC
- MA4 eliminated
- Choose HC-SR04 sensor as ideal candidate
- Write analysis based on this research and consideration
=============== Week 4: =================
Entry 3: ESP32 Bluetooth Troubleshooting -----------------------------------------------------------------
Date: February 7thStart Time: 2:00pm
Duration: 3 hours
Goal: Transmit data between phone and ESP32 via Bluetooth
- Research ways to connect ESP32 to bluetooth: ESP32 Blueooth config
- Install bluetooth serial monitor on phone for convenient interfacing
- Copy example code from source
- Flash and attempt BT connection
- Connection succeeds, send message "hello" from phone
- Serial monitor displays "hello"
- Modify code to dump BT input into string variable and print to serial
- Fails to print anything
- Debugging, realize I'm reading from Serial rather than SerialBT
- Modify and test again
- Serial monitor prints sent message, but it displays raw byte data
- consult tutorial reference, watch config video
- Realize to debug, must read in bytes one at a time as "char", then convert to string and concat
- Flash and test
- Correctly displays "hello" from string sent on phone
- Modify code to create command conditional on user input
- If user input == "sensor", fetch sensor data
- Flash + test, not working. No data fetched when sensor sent
- Debug: Found that BT_out (user input) is cleared before conditional. Fix
- Flash + test, still not working, same as before
- Debug: trim whitespace from BT_out before check
- Flash + test: command now works, controller fetches sensor data when "sensor" sent via bluetooth
- Research wifi setup on ESP32: ESP32 wifi
- Modify code to request wifi ssid from user and pw for attempted wifi connect
- Incomplete modifications, possible infinite while loop caused
Modified ESP32 code using Arduino IDE and debugged. At the end of session, working sensor command via bluetooth was achieved. Started on configuring wifi, but steps were not complete. In next session, utilize newfound knowledge of bluetooth communication to enable user-led wi-fi configuration.
Entry 2: Lab meeting and ESP32 Testing -----------------------------------------------------------------
Date: February 5thStart Time: 12:00pm
Duration: 3 hours
Goal: connect ESP32 to distance sensor
- Found a tutorial for reference: Getting Started with ESP32/
- Followed directions to install Arduino IDE and dedicated drivers
- After IDE install, selected ESP32 devboard as "board"
- Plugged in usb from microcontroller to laptop
- Found which port the usb is (Port 5)
- Selected correct port for "port" in tools dropdown
- Found a wi-fi scan example program under examples dropdown
- Ran example code, received incorrect boot number error
- After several tests, discovered that the "boot" button on ESP32 must be pressed during flash
- Ran example code again, successfully flashed to ESP32
- Opened serial terminal to view output and verify correctness of wi-fi scan
- Studied code for reading sensor in reference tutorial: ESP32 with Ultrasonic sensor
- Copied code toread sensor data each pulse (from above reference)
- Flashed ESP32 and viewed output in serial
- Test distance numbers by placing object in front of ultrasonic sensor
- Sensor read is responsive to obstruction
- Sensor range reads about ~30 inches with no obstruction
- Modified code to include a door_open boolean (1 if dist_inches > 15, 0 O/W)
- Flash and observe serial, consistently prints correct door_open value. Accuracy modifications will be made once mounted on fridge.
- Successfully interfaced ultrasonic sensor and ESP32
- Microprocessor hypothetically has accurate door readings for future event triggers
Entry 1: A3 Work and Research -----------------------------------------------------------------
Date: February 1stStart Time: 6:00pm
Duration: 2.5 hours
Goal: Research and Write the necessary details for A3 - Software overview
- Much of the conceptual work for A3 was highlighted in Week 3 - Entry 2
- Open project description and PSDRs for reference
- Wrote Software Overview, highlighted the implementations of our key software functionalities: Server setup, ESP32 to Server communication, Landing page website, and firmware for data transmission and event handling
- Researched algorithm pertaining to ESP32 to Server communication: TCP Protocol
- Learned that TCP will help us reliably transfer data between devices (no packet loss)
- Learned how TCP is implemented using 3-way handshake and send-ack sequences
- Researched data structure pertaining to firmware: Priority Queue
- Learned that PQs will allow for event priority and efficient queue handling
- Learned the operations that make up a PQ implementation: enqueue, dequeue, and peek
- Open operational logic and machine state diagrams for reference
- Detail packet construction based on agreed upon specifications
- Describe packet types: control and data, who sends them, and what they contain
=============== Week 3: =================
Entry 3: Project Journal and Summary -----------------------------------------------------------------
Date: January 31stStart Time: 6:00pm
Duration: 1.5 hours
During the session, I updated my project journal entries on the team website and submitted the brightspace assignment. It took me a while to revise my written notes to an acceptable level of detail , and to describe the tasks that we completed this week. The result of this is that in reflecting upon the past week, I have a better understanding of our overall project status and of what needs to get done going forward. It will also serve as detailed written documentation detailing what our team discussed and features we want to implement, as well as how we came to those conclusons. The next steps are to begin the implementation of the functionality detailed in Entry 2, with the goal being that by the end of week 4, we'll have some working functionality for our prototype.
Entry 2: Lab Pre-meeting and Meeting -----------------------------------------------------------------
Date: January 29thStart Time: 11:30am
Duration: 3 hours
During this session, my teammates and I did a lot of discussion about the layout and operational logic of our project. Although mostly conceptual, we worked through several ambiguities regarding the design of our project to create a basis of logic for its setup and event handling. We approched this task by drafting a visual representation in draw.io, so the process described are the key considerations we made in the creation of the figure below.
1. Event Priority
During the event handling phase of our machine, the microcontroller will be waiting for one of 3 events to happen: Door open, Incoming packet from the server, and data clock active (for periodic sensor readings). After discussion, we decided that door open should be highest priority, since it is a time sensitive event. On door open detection, the device should immediately take necessary steps for image capture and storage. We came to this conclusion because we don't want the door to close while handling another event. Secondly, incoming server packets should be of secondary importance, which would indicate a change of settings (such as sensor reading frequency). On receipt of a server control packet, the microcontroller will parse the packet and change any necessary flags within its configuration accordingly. Lastly, if the data clock flag is active, it means that a sensor reading should be made and sent for packet construction. Afterward, the data clock flag will be reset.
2. Packet construction
A packet construction procedure and network protocol is critical to efficient transmission of data between the server and microcontroller. In our system a standard TCP protocol will be used (reliable transmission), and there are control packets sent strictly from the server to the circuit, as well as data packets sent from the circuit to the server. The circuit should construct a packet to be sent upon the occurrence of both events 1 and 3. On event 1 (door open), the circuit should collect and store image data into a packet, as well as read sensor data and reset the data clock. As per TCP protocol, upon packet send, the circuit will wait for an acknowledgement from the server. After a set amount of time with no acknowledgement, the circuit will resend and repeat this process until ACK is received. On event 3 (data clock active), sensor reading will be made and stored for packet construction, but unlike event 1, no image will be captured, and a flag will be set indicating no replacement image is being sent to the server. Sending procedure is the same as event 1.
The result of this was that we gained a stronger idea of the logic that will be involved in the hardware and software design of our project. We now have several written visuals depicting device operation, which should serve as references to the general device layout for when we begin to work on specific functionality. This contributed significantly to project progress, because it will not only help in the writing of 'Software Overview - A3', it also set our team up for next steps in acquiring hardware to map to functionalities described in our visuals.
Entry 1: A2 Work and Research -----------------------------------------------------------------
Date: January 25thStart Time: 7:30pm
Duration: 2 hours
During this work session, I began the research for the 'Theory of Operation' and 'Computational Constraints' sections of our functional description assignment, A2. I did this by looking up articles about components that we know will be included in our project, specifically temperature sensors and still-capture cameras. I learned about the mechanics of an NTC thermistor, which can output variable resistance as a function of temperature. This enables precise temperature sensing, which will play a vital role in the functionality of our project. I also learned about how still-capture cameras use CCD sensors to capture images using the photoelectric effect. This played into the next part of the report, because the need to capture images would create concern for memory scarcity. After researching the operation of cameras, I knew that the memory demand would be too high for a microcontroller alone to handle. This led us to make a design decision to include an SD card for image storage, which will need to be interfaced with our microcontroller through a compatible port. As a result, I was able to use what I learned to complete my part in A2, and give our team more documentation and understanding in the operation of our project. Additionally, we were already able to make pivotal design decisions based on our findings. This benefits the progress of the project, because the team now has written documentation that details vital parts and specifications which will be useful reference during the construction phase. Going forward, the team should continue to reread and reference the research that's been done as foundational understanding of how different aspects of the project relate to our overall goals.
References:
NTC Thermistor: https://eepower.com/resistor-guide/resistor-types/ntc-thermistor/#
CCD Sensor: https://www.radiantvisionsystems.com/blog/ccd-sensors-albert-einstein-and-photoelectric-effect#:~:text=They%20based%20CCD%20technology%20on,them%20to%20be%20read%20digitally.
=============== Week 2: =================
Entry 1: Lab meeting -----------------------------------------------------------------
Date: January 22ndStart Time: 12:30am
Duration: 2 hours
Attended the second manlab for the course. We had some discussions about the functional specification document which brought up some contention points for our project. Namely the methods of powering the microcontroller and sensors: direct cabling, rechargable battery, standard battery, and fridge power draw were all presented as possible options. We decided that the best course to take is direct cabling using a flat cable to prevent cool air leakage. We were also addressed by Prof. Phillips and the TAs about refining our design specifications. Specifically, PSDR 1 is too general and has no mention of the microcontroller. PSDR 4 and 5 need to more specifically mention our planned Web application and hosting method.
=============== Week 1: =================
Entry 2: A1 Group meeting -----------------------------------------------------------------
Date: January 18thStart Time: 12:00pm
Duration: 1 hour
All of the members met virtually to collaborate on assignment A1. I helped with the brainstorming process for PSDRs. We decided on the essential functionality of the project, and we made the decision to consider an external LCD display as a secondary goal since it wasn't part of the critical functions we want to offer. Next, we each filled in our expertise section and divied up report assignments for the future. After that, we listed potential project parts and divided them up for pricing research. I found information about humidity sensors, a WiFi board, and a micro controller that could all potentially be used.
Entry 1: Lab Meeting -----------------------------------------------------------------
Date: January 15thStart Time: 12:30am
Duration: 2 hours
Attended the first manlab for the course. The team members were all officially introduced to each other, and we discussed our initial project plans with the TA's. Conversed with group members and decided on some of the project logistics. We decided we should use the mini-fridge Pat offered to provide vs. buying a new/full-sized fridge. The website was created, and we each populated the page with our personal info.