/boxofhope

Box Of Hope is a C++ event driven platform to protect you during the COVID-19 pandemic. BOH uses NFC and WiFi technology to ensure your mask usage is on point and employs sterilizing UV LEDs to clean your fabric mask.

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0


Logo

Box Of Hope

Raspberry Pi COVID-19 DIY Project
Explore the docs »
Read the wiki »

                        

View Demo · Report Bug · Request Feature

Contributors Forks Stars Issues License

IO Server API Docs codecov


🤯 As featured on tomshardware.co.uk 🤯

Table of contents

  1. Project Motivation
  2. About The Project
  3. Roadmap
  4. Contributing
  5. License
  6. Contact
  7. Acknowledgements

Project Motivation

NOTE: This project has been started during the COVID-19 pandemic.

Considering the current government guidelines in the UK (and many other countries across the world) require people to wear reusable cloth face masks when in indoor shared spaces, they have become parts of our daily lives, but we still ocassionaly leave them behind or lose track when it's time to wash them. Hence, this project attempts to solve the annoying problem of:

Where's my mask? Oh I left it at home... again...

Given this is a university project, the creators were tasked with creating a event driven codebase that interacts with a user and low level components on a Raspberry Pi.

A big part of this device is the user home state detection this is done by making the assumption that the user (being a techy person) will have this box a) at home and b) carries a mobile phone or some other WiFi enabled technology on them. Ergo, the user is home if the portable device's IPv4 address is on the same network.

About The Project

System Overview

Box of Hope, as the name suggests, is a box to keep your face covering in while you are at home.

It has disinfecting UV LEDs to remove any harmful bacteria and viruses which could have accumulated on your face mask while you were using it. These are activated each time a mask is returned into the box.

To enable this, a switch needs to be installed by the door which senses whether the door is open or not.

On the inside, the Raspberry Pi is equipped with an NFC top hat to read the NFC tag on the face mask. This enables the system to keep track of usage even if you have multiple masks.

If your phone leaves your home's WiFi and a mask is still in the box, you will get a notification through a webapp, to remind to get your mask. The webapp also functions as the GUI for the system, showing real-time status of the key box parameters and hisotry over the last couple of hours.

There are 3 components to this project: api, webapp, and io_server. More details about each can be found on the official Wiki.

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the GPL-3.0 License. See LICENSE for more information.

Contact

Project Link: https://github.com/iwishiwasaneagle/boxofhope

Acknowledgements

We would like to thank Dr Bernd Porr, Dr Nicholas Bailey, and all University of Glasgow RTEP5 teaching assistants for their support throughout the project.