BLOG# 1 - Beats Per Minute Nano
A Heart Rate Monitor using the Arduino Nano 33 IoT Board
INTRODUCTION
This is my Introductory blog post for this Design Challenge: Design for A Cause 2021
Updated
version 1.4
For this design challenge, I've decided to port a project that I developed during a challenge in the Azure Sphere Group, to the Arduino Nano 33 IoT Board
- Beats Per Minute -- Home Is Where the Hack Is Challenge
- In this blog, I demonstrated how I connected a Heart Rate Sensor to the Avnet MT3620 kit. The Beats Per Minute are calculated and displayed on an attached OLED Display. The RED LED will indicate the users heart beat..
- I will replace the MT3620 kit with the Arduino Nano 33 IoT Board
Beats Per Minutes project photos and video |
---|
|
The 5 Blogs
- To comply with the Challenge requirement to create 5 blogs, my plan is to use this blog post as a table of contents and will add the other blogs as links..
- Blog Naming Format
- In order to keep track of the BLOGS, I use the following naming convention to title my blogs related to this challenge.
- Blog# <n> Beats Per Minute Nano - <topic>
- Blog Version numbering
- Blogs will be marked with a version number to indicate changes over time. The naming convention for version number will be (<major#>. <minor#>)
- for example 1.0 is the first edition of the blog and 1.1 is the 2nd and so on.
- The major number will not change during this challenge and will be used for a later Design cycle, if ever.
- Blog Version numbering
My Idea
My plan, is to use the supplied challenge kit (Nano 33 IoT ) as a Beats Per Minute Heart Sensor Unit. I will be designing this heart Sensor unit for this challenge.
- For my Design, I'll be attaching a Heart Rate Sensor and a OLED Display to the supplied challenge kit (Nano 33 IoT )
- I never worked with an Arduino before so, I will be experimenting with the Nano 33 IoT and the components I'll be using for this challenge.
- Connecting the Heart Sensor
- Connecting the OLED Display
- Researching and experimenting with persisting telemetry data.
- I'll experiment with the Arduino's IoT Cloud, in order to store Heart Rate Sensor Data
- If time permits, I'd like to research attaching to MongoDB atlas, which is a NoSQL database engine that I used in the following challenge:
- I will be using a developer workstation that I configured with Ubuntu.
- Here are my notes: My OLD/NEW Linux Developer workstation.
- I have attached the Nano to it.
- I plan to use Visual Studio Code with an exciting extension I just discovered, called PlatformIO
- In addition to Arduino's IoT Cloud, I'm intrigued to experiment and implement the following technologies into my design using the following project listed on Arduino page
- Blynk: a simple project from our community connecting to Blynk to operate your board from a phone with little code
- IFTTT: see an in-depth case of building a smart plug connected to IFTTT
- AWS IoT Core: we made this example on how to connect to Amazon Web Services
- If time permits:
- Azure: visit this github repository explaining how to connect a temperature sensor to Azure's Cloud
- Firebase: If you want to connect to Google's Firebase, this Arduino library will show you how
Required Hardware (Bill of Materials)
Here are the components I used for the project. I also used: Breadboards and Jumper wires for experimenting and the challenge Heart Sensor circuit.
NANO 33 IOT W/HEADER DEVELOPMENT BOARD | |
• Heart Sensor | |
SSD1306 I2C OLED Display 128x64 Yellow Blue eg. this one for $6.99 from Amazon... |
The Project Plan Blogs
Blog#2 Beats Per Minute Nano - Research & Experimentation
- Since I have not used Arduino before I will need to research and experiment with the following:
- The Challenge Kit Arduino Nano 33 IoT
- connecting the Nano to the IDE.
- I plan to use VS Studio with the PlatformIO extension, which is claimed to function like the Arduino IDE
- I will be experimenting with a few example sketches.
- connecting the Nano to the IDE.
- Connecting the Heart Sensor to the Nano
- Connecting the OLED to the Nano
- Using the Arduino IoT Cloud
- Experimenting with selected projects from the Element14 community: Blynk, IFTTT, Azure
- Using MongoDB Atlas if Possible.
Blog#3 Beats Per Minute Nano - System Design
- Block diagram
- Wiring Diagram
- Show the components (Nano & OLDED) wired to a breadboard.
- Wiring Diagram
- Software Design
- UML Sequence Diagram
- Show the Logic of the flow of the Software
- Libraries
- All the libraries are used in Blog#2
- UML Sequence Diagram
- Block diagram
Blog#4 Beats Per Minute Nano - System Implementation and Testing
- Electronics build
- Use the wiring diagram described in the design blog#2
- Software Programming
- Use a GitHub repository to maintain the source code
- Describe the routines used.
- Conclusions and/or Problem encountered.
- Electronics build
- Testing
- Electrical
- Test the wiring.
- Conclusions and Findings
- Electrical
- Software
- Unit test the code dealing with the 2 components (Pulse sensor,& OLED)
- Conclusions and Findings
- Software
- Run Application
- Run the application and compare the BPM to another BPM app if possible.
- Show a video
- Conclusions
- Any Problems?
- Run Application
- Testing
Blog#5 Beats Per Minute Nano - Conclusions and Future Enhancements
- Conclusions
- Give some conclusions as to what you have gained from this Design Challenge
- Did everything work as designed?
- What were the biggest hurdles you had to overcome?
- Future Enchantments
- List some possible enhancements that can be added to make the system more useful.
- The subjects that I did not have time to implement:
- Conclusions
1. Using the Arduino IoT Cloud
LINK to Project page
2. Experimenting with selected projects from the Element14 community: Blynk, IFTTT, Azure
LINK to Project page
3. Using MongoDB Atlas if Possible?
Connect to MongoDB Atlas with C
Write the data from the Heart Sensor Project to the Database.
- Other Enhancement Ideas?
REFERENCES |
---|
Blog# 8.2 (Part 2 of 2) EAS - DATA REPOSITORY MongoDB |
My OLD/NEW Linux Developer workstation. |
Top Comments