Inspiration

The inspiration I took for this project came from a science fair project I saw at my local school. It used old hardware to read temperature and humidity and was difficult to use, but that inspired me to find a competition where I could build a better version that was more usable and easier for people around the world!

What it does

So my project uses an Arduino, a MAX30102 sensor to measure BPM, a DHT11 Sensor for humidity and temperature, and an MQ-2 Gas sensor to detect air quality. Then that information is sent via Serial communication to a web page, in this case, via the Web Serial API. So without touching anything, it records temperature, humidity, and air quality. To measure BPM, you need to hold a push button and start measuring your BPM in real time; once you unpress it, the BPM readings stop, and it shows us an average and a graph with the BPM records.

How we built it

I built it using an Arduino UNO R3, a MAX30102 BPM sensor, a DHT11 Humidity and Temperature Sensor, an MQ-2 Gas sensor, a Push Button, and a medium breadboard with some cables. For the web environment, which is fully frontend, I used Phoenix Code because of its ease of use. Some of the code and cleanup were done by OPENCODE due to time constraints.

Challenges we ran into

Some challenges I ran into were finding a way in which I could easily work with sending information from the Arduino and communicating with the Web environment. I wanted to eliminate the need for a back-end as much as possible because with that it is easier to create and for people to work with it. In the end, after some more digging, I found out that web browsers had a Web Serial API integrated, so communication with the web environment and the Arduino via Serial communication was a lot easier now.

Accomplishments that we're proud of

Making it possible to work with 3 different sensors simultaneously, and making the script clean and really lightweight. Another thing was making the Arduino communicate with a Web environment with pretty simple code. And a last accomplishment I am proud of was completing this project in less than 5 hours and managing my time efficiently during the building process. If I had more time, I am pretty sure I could have done better, but I am still proud of this project.

What we learned

I learned a lot. Some of the few things were how to manage my time and how to effectively make tests for the code work. I also learned a lot of debugging techniques, like learning to use the Serial Monitor or plotter to solve problems regarding some sensor readings. I also learned how a web environment can communicate with external hardware, and overall I found this project really fun.

What's next for ArduMedi

Since this is a BETA, I will look to improve this project for future integrations, probably different communication protocols or microcontrollers. This project has really big potential, and I seek the best of it. But for now, I will focus on really understanding what the possibilities with this idea could be, so overall a really fun project!

Built With

Share this project:

Updates

Submission history