Welcome to the Open Badge project, an open-source framework and toolkit for measuring and shaping face-to-face social interactions using either custom hardware devices or smart phones, and real-time web-based visualizations. Open Badges is a modular system that allows researchers to monitor and collect interaction data from people engaged in real-life social settings. For more information, please read our main publications (1,2,3) ,visit our wiki, or join our discussion forum.
Additional repositories that are part of this project:
https://github.com/mitmedialab/rhythm-badge-programmer - schematics, vector files and instructions for making a programming rig
https://github.com/HumanDynamics/openbadge-hub-py - a python based hub (base station) for pulling data from badges
https://github.com/HumanDynamics/openbadge-hub - a Javascript/Cordova app that communicates with the badges and stores the data to a server
https://github.com/HumanDynamics/openbadge-server - the backend server for the app
https://github.com/HumanDynamics/openbadge-analysis - Python (2.7) package for loading and pre-processing badge data
https://github.com/HumanDynamics/openbadge-analysis-examples - Examples showing how to use the analysis package
The nRF working environment is now available as a Docker container. The following commands have been tested under Ubuntu linux, but should work under iOS as well (with some modifications, especially to the device names).
Important notes:
Commands:
If you are using a raspberry pi to run this code, please use the raspberry pi compose file (-f docker-compose-raspi.yml). For example docker-compose -f docker-compose-raspi.yml build
.
The framework includes two tools for testing firmware code
docker-compose run nrf terminal <MAC ADDRESS>
docker-compose run nrf run_all_tests <MAC ADDRESS>
Note that in order to run the integration tests, you'll need to have a badge connected with a serial interface. A regular J-Link debugger/programmer does not include these. We recommend using a nRF51 dev-kit as a programmer for this purpose (see our wiki/documentations on how to make one).
The badge firmware includes a tester mode that can be used for testing new badges. To compile, use the badge_03v6_tester flag (or badge_03v4_tester, for older hardware). For example:
make badge_03v6_noDebug flashUnlock flashErase flashS130 flashAPP
Or, when using docker:
docker-compose run nrf make badge_03v6_noDebug flashUnlock flashErase flashS130 flashAPP
Once programmed, the badge uses the LEDs to indicate the status of the test:
Example for known issues with badge manufacturing: