Get started by connecting your micro:bit to your computer.
The micro:bit should already have the Jacdac software loaded.
On the Jacdac website (see the embedded page to the right), click on the Jacdac logo in the upper right corner to go to the Device Dashboard.
In the device dashboard select the 'Connect USB' button . This will bring up a dialog with a lists of connect micro:bit devices that you can pair with your computer.
Choose the device that you would like to work with and select 'Connect'. You will then see all of the services (e.g. buttons, accelerometers, etc.) that are associated with you device appear in the Dashboard.
Once your device is connected, use the browser back button to return to the ML Model Creator page.
At first, you will see that your current dataset is empty. You should also see all of the sensors connected to your micro:bit available as input sensors for your dataset.
Select the input sensor associated with accelerometer data, then a trend line will appear on the screen showing the reading from the accelerometer sensors.
The parameters in the Record data section allow you to create a dataset using that input sensor data. You can type a name for your recording in the Recording name box, you can type or select a label for the recording in the Class label box, and you can change the sample duration and interval with the last two boxes.
Try pressing the 'Start' button. After 2 seconds, a newly recorded sample will pop up in the Current Dataset section. Press the trashcan next to the recording to remove it.
Which labels. In the define section, we identified "Easy and natural" as a value for the kinds of gestures we want to classify. Gestures like taps, swipes, and hand rotations are all simple gestures most people can perform without needing to learn how.
The parameters in the Record data section allow you to create a dataset using that input sensor data. You can type a name for your recording in the Recording name box, you can type or select a label for the recording in the Class label box, and you can change the sample duration and interval with the last two boxes.
Try pressing the 'Start' button. After 2 seconds, a newly recorded sample will pop up in the Current Dataset section. Press the trashcan next to the recording to remove it.
Making gesture interfaces accessible is a key area of research in machine learning. Some approach the problem by trying to collect datasets that are as large and broadly representative as possible. Another option is to collect very small, personalized datasets that are unique to each user.
iPhone Assistive Touch is an excellent example of how the iPhone is made more accessible by allowing users to create small, personalized gesture datasets. If accessibility is a priority in your project, and it probably should be, then consider if this separate approach is possible.
Effective datasets. We identified "accurate predictions" as an important value. There is some tension between having a very accurate systems and adding more classes of gestures. Recognizing more gestures increases the flexibility of the system, but may compromise the accuracy of classification. Let's stick with our four classes for now.
Representative datasets. In order for our model to work fairly well for lots of different people, we will need multiple examples of people performing these gestures in different ways. A special subgroup in our list of stakeholders are people who may perform gestures differently than others due to physical impairments or other factors.
Balanced datasets. If at all possible, we should strive to keep our dataset balanced, meaning that we have similar numbers of samples for every class. However, this is not always possible or easy - it's way easier to collect lots of different examples of hands being still in various orientations.
Informed consent. It is important to make sure that participants and stakeholders are informed if we are collecting data about them or about their environment. And, if at all possible, we should strive to avoid collecting unnecessary, sensitive information.
Anticipating unintended uses. This dataset only contains data about hand movements. Still, there may be unintended consequences of collecting and sharing this dataset. For example, if we do a good job of collecting data from people with a particular movement disorder, that protected health information might inadvertently be perceptible in our dataset. Someone could then misuse our dataset to detect if someone has that disorder based on how they perform gestures. We should take steps to ensure the data is only used in ways that we received consent for.
As you complete your dataset, take time to complete the following form about its attributes. This will be used to create a dataset nutrition label that will be packaged with your dataset CSV file when you export it.