All Projects → dyne → decode-proximity-hw

dyne / decode-proximity-hw

Licence: AGPL-3.0 license
Embedded version of decode's proximity app

Programming Languages

c
50402 projects - #5 most used programming language
Makefile
30231 projects

DECODE Proximity embedded
Implementing DP-3T (embedded nRF52 version)

Dyne.org



This project is a privacy-preserving and decentralized alternative to the Dutch #coronaApp.

It will adhere to the technological demands published last week in the ‘Veilig tegen corona’ manifesto.

The decode-proximity provides virus tracking and a warning system with a proximity alert. Every device broadcasts its proximity to other devices, privately recording when two people have been close (only the device owners know!).

If a user gets an alert from the device they can request a test for a corona diagnosis. If positive they can scan a QRCode from the GGD to anonymously upload a notice for all other users that have been close to them, to let them know of the risk.

Please note: there are NO personal data stored on the central server. The secret key and the ephemeral ids can NOT be traced to identifiable people.

We are also developing a hardware port (This repository) to allow usage as a keyring and without a mobile phone

Using RIOT-OS+nimble on Nordic nRF52.

Using wolfSSL/wolfCrypt for TLS and crypto.

🚧 This software is in ALPHA stage and are part of the DECODE project about data-ownership and technological sovereignty. Our effort is that of improving people's awareness of how their data is processed by algorithms, as well facilitate the work of developers to create along privacy by design principles using algorithms that can be deployed in any situation without any change.

🚩 Table of Contents (click to expand)

💾 Install

Some dependencies are needed before you are able to build the project.

Dependencies

You need to clone the RIOT-OS project More details.

Once you cloned the repo you have to reference it in the RIOTBASE variable of the Makefile

The GNU Arm Embedded Toolchain is also needed available on most operative systems packaging systems eg.

apt install gcc-arm-none-eabi

Building

To build the project jus run

make

This will download all the submodule needed projects and compile.

When finished you'll find the binary application file under ./bin/nrf52dk/dp3t.elf

Flashing on device

make flash

🎮 Quick start

TODO


🔧 Configuration

TODO


📟 Hardware

Below a brief list supported and tested hardware to begin with

nRF52 DK ✔️

nRF52 DK

https://www.nordicsemi.com/Software-and-tools/Development-Kits/nRF52-DK

Arduino NANO 33 IoT ✔️

nRF52 DK

https://store.arduino.cc/arduino-nano-33-iot

Pinetime

nRF52 DK

https://www.pine64.org/pinetime/


📋 Testing


🐛 Troubleshooting & debugging


😍 Acknowledgements

Copyright © 2020 by Dyne.org foundation, Amsterdam

Designed, written and maintained by Daniele Lacamera

RIOT-OS+nimble on Nordic nRF52.

wolfSSL/wolfCrypt for TLS and crypto.


🌐 Links

https://dyne.org/

https://www.decodeproject.eu/


👤 Contributing

Please first take a look at the Dyne.org - Contributor License Agreement then

  1. 🔀 FORK IT
  2. Create your feature branch git checkout -b feature/branch
  3. Commit your changes git commit -am 'Add some fooBar'
  4. Push to the branch git push origin feature/branch
  5. Create a new Pull Request
  6. 🙏 Thank you

🔝 back to top


💼 License

DECODE Proximity embedded
Copyright (c) 2020 Dyne.org foundation, Amsterdam

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

🔝 back to top

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].