Corona COVID-19 Detection Device

Ashwini Kumar Sinha


This is a concept DIY of COVID-19 Corona Detection Device that helps to detect the symptoms of COVID-19, so as to help individuals quarantine themselves and practice social distancing. The DIY works by detecting the basic symptoms of the virus, which are: increased body temperature and shortness of breath. Although it is not necessary that shortness of breath will cause low levels of oxygen in your blood in general cases, coronavirus causes infection in your lungs which leads to low oxygen level or hypoxia. 

So, today in our device we will try to look for these symptoms of the virus to detect potential suspects, so that they can get a further check-up for confirmation.

Fig 1.Prototype

In this project, we will be checking for two symptoms: raised body temperature, and blood oxygen percentage.

How does Our COVID-19 Suspect Detection Device work?

  • First, it checks the temperature of the body using a sensor.
  • Next, if it detects that temperature is higher than usual then it passes the first symptom to positive, indicating the symptom on OLED display as s1 +
  • Then, using the Max30100 sensor it monitors the heartbeat and oxygen percentage 
  • If the device calculates that the oxygen percentage in the blood is below the normal oxygen level then the device passes the second symptom as well, indicating the symptom on OLED display as s2 +

If both the symptoms are positive, the person might have contracted the virus and can be taken to a hospital for confirmation and treatment.

For this, we need two types of sensors. The first one is for temperature measurement. Here I am using a Mpu6050 sensor. You might laugh at me or call me crazy because it’s a sensor for acceleration measurement not fit for temperature measurement but through personal testing, I’ve found that it gives a roughly accurate result, although I do recommend you use any good dedicated temperature sensor, such as Lm 35.

For blood oxygen percentage calculation I am using the Max30100 sensor.

So we start our project by collecting the following components. 

Bill of Materials

Note: You will also need a 5V-9V  small battery 


Assuming you have already installed the Arduino IDE in your pc, you can open the Arduino IDE and then go to sketch->Library manager–>search MPU6050, u8g2, Max30100 one by one and install them.

Now after completing the installation, we can get started with the coding.


First, we have to initialize the library (MPU6050, u8g2, Max30100) in code, after which we will create the setup function where we set the communication of sensors over I2c. Now we create a loop function where we update the sensor data. Now, we will update the sensor data on the OLED display. Next, we will create the “if()” condition that checks the first symptom of the virus (Fever and high body temperature) and if the function returns TRUE then it will set the first symptom, S1, to + and display that on the OLED display as S1+. Once S1 is checked and found to be positive, it checks the oxygen percentage in the blood. If the oxygen percentage is detected to be below the normal percentage, it passes the second symptom, S2, as + and displays it on OLED display. (Refer Fig 2,3,4).

Fig 2.
Fig 3
Fig 4


Now connect all the components and set all those things in a small enclosure with a battery, as you can see in the pictures below.

Fig 5.Circuit Diagram Created In Fritzing
Fig 6.Showing raw value after uploading code
Fig 7.Enclosure box

What Next?

We can also add a Sim800l Module to COVID-19 Corona Detection Device that gives alerts about the potential patient to the Government and to health care facilities. We are going to add this in the next part of the project very soon.


Now, to test the circuit and device, power the device and bring any hot object near the mpu6050 sensor. The device detects the high temperature and displays the first symptom as S+. Next, bring the max sensor to your arm and then, by putting pressure on that arm and stopping a little bit of blood circulation in that part, the blood oxygen % goes down and the device detects low oxygen percentage and sets the S2 as +. This device is a concept project and works well for fever detection and can be improved further.

Fig 8.
Fig 9. Prototype

Download Source Code: click here




  1. HELP !!!
    DIY_53:20: error: ‘class MPU6050’ has no member named ‘begin’

    DIY_53:20: error: ‘MPU6050_SCALE_2000DPS’ was not declared in this scope

    DIY_53:20: error: ‘MPU6050_RANGE_2G’ was not declared in this scope

    DIY_53:30: error: ‘class MPU6050’ has no member named ‘begin’

    DIY_53:30: error: ‘MPU6050_SCALE_2000DPS’ was not declared in this scope

    DIY_53:30: error: ‘MPU6050_RANGE_2G’ was not declared in this scope

    C:\Users\avc_a\OneDrive\Masaüstü\DIY_53\DIY_53.ino: In function ‘void loop()’:

    DIY_53:51: error: ‘class MPU6050’ has no member named ‘readTemperature’

    DIY_53:74: error: ‘class MPU6050’ has no member named ‘readTemperature’

  2. I fixed the error, uploaded code, but the project is not working. Can you send an executable video in your program?

    • It’s Not the problem of code. Probably you have bought the cheap duplicate MAX30100 sensor. Do one thing Check this sensor with the example code that you get in MAX30100 library.if it didn’t work then you need to some change in your duplicate sensor. The sensor can be fixed by correcting the voltage source through the voltage regulator. First, check your sensor with example code then inform me is it correct or duplicate defected one. Then I will tell you how to fix the duplicate sensor .

  3. yardımmm!!!
    Arduino:1.8.12 (Windows Store (Windows 10), Kart:”Arduino Micro”

    kod:6:10: fatal error: MAX30100_PulseOximeter.h: No such file or directory

    #include “MAX30100_PulseOximeter.h”


    compilation terminated.

    exit status 1
    MAX30100_PulseOximeter.h: No such file or directory

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.


    • Yes, you can use it. Actually some kind of code with a few changes will work on UNO, Micro, Nano, Pro.
      We have used the Pro-micro because we are making a wearable device that needs to compact, and so small in size that we can wear on hand.

  5. Hello brother Ashwini Sinha

    Congratulations and respect for your work and thank you for sharing. I have all the necessary modules, i wanted to use an Attiny85 module in order to have a compact finish, what should be changed in the Arduino code ?

    Sorry for my amateurism and thank you for your understanding, health, peace and happiness for you.

    • Yes For ATtint 85 You have to use the different library and code compatible with ATtiny 85 and also need to take care of code size. You can use Arduino nano or pro mini for compact size

  6. Hi, i dropped the idea of ​​using the Attiny85 module and i carried out the project with a mega to test, the body temperature works well but unfortunately the Max30100 module constantly displays 162.xx Bps.

    When i perform a test only with the 30100 module and the mega the result is correct (70 Bps).

    What am i doing wrong to get the wrong result ?

    Thank you.


Please enter your comment!
Please enter your name here