Implementation
The student will understand fundamental engineering principles of electronics and computing systems, and will demonstrate their ability to apply the principles to the design of their senior design project.
Alpha Prototype:
Deconstructed Prototype
Usb C set up to XIAO => connecting via breadboard first to test
Using sensor SparkFun HR and Pulse Ox
Based on set up guide
Power = 3.3 V
GND
Connections
3.3 V connection
I2C connection => 2 pins SDA/SCL
Ground
Digital pin for Reset and MIFO
Arduino libraries
Temperature sensor MAX30205 Human Body Temperature Sensor Module
Different documentation if needed
Set up with reference to guide
Power 3.3 V
GND
Connections Necessary
SDA - analog
SCL - analog
Wire Color Coding
Orange - SDA
Grey - SCL
Purple - interrupt pin for hr
LONG Brown - 3.3V or GND
Code Samples
Using the Bluetooth Low Energy (BLE) stack with the 'bluefruit.h' Arduiono library.
Using BLE "Characteristics", data points can be transmitted to the companion device where they are logged and displayed to the user.
Before any data transmission, the BLE stack must be initialized and connected to a target device.
Temperature BLE Characteristic. A float value will be transmitted to the target device at 1 Hz.
There are 3 axes to the accelerometer, so it is more efficient to combine all components to create a vector, and simply transmit the magnitude with a frequency of 5 Hz
Test
The student will demonstrate the ability to design, implement, test, and present a senior design project of a significant level of complexity.
Link above is working heart rate and peripheral oxygen saturation (SpO2) sensor, the SparkFun device is used. The photos with the green and purple sensors are the design with the maxim sensor, and with the red sensor is with the sparkfun sensor
Using the "nRF Connect" app, a smartphone is able to connect to the microcontroller over Bluetooth Low Energy, and receive data points from the connected sensors.
The two sensors that are currently being recorded are the "Temperature" from the microcontroller's onboard thermistor, and the magnitude of the acceleration vector from the onboard accelerometer.
Using the 2 light-blue colored buttons (on the right side of each characteristic), the data values can be consistently updated over time when received from the microcontroller.
The "Temperature" data shown with UUID "2A6E" shows the onboard thermistor value in degrees Celsius.
The data shown with UUID "2C06" shows the vector magnitude from the microcontroller's accelerometer. When the device is at rest, this value will be at around 1,000.
Once all of the sensors are connected to the device, there will be multiple BLE characteristics so that each data point is separated and can be categorized easier when analyzing the data.
Teamwork
The student will be able to contribute effectively in a team-based project with adequate distribution of tasks to team members and coordination of the collective outcome. Every team member will be fully engaged in the project as possible. The students will demonstrate coordination of their teamwork through regular discussions and written team assessments.
Isabel - Created initial designs for the prototype wiring, developed different flow charts describing how data should be collected for different use cases, and engineered the circuit diagram and integrated that design for the first prototype on the breadboard
Kevin - Created Arduino code to setup Bluetooth connections, initialize all sensors using their I2C busses, collect data from those sensors periodically based on adequate frequencies, and transmit data over Bluetooth Low Energy.
Angel - Began research for app building, began looking over course files from engineering graphics to design the shell/case for the project, has been watching shark tank frequently to get better at presenting the project