Introduction: Connected Wristband for Orientation Race
We will show you how Connected wristband for orientation race works.
Step 1: Bill of Materials and Files
To make the orientation race wristband, you to get the components listed below:
- A TD1208 chip from Snootlab
- A RFID reader from Seeed:
- A GPS module from Seeed:
Then you have to make the PCB with the provided layout and download the binary file containing the program.
Step 2: Download and Make the PCB
Download this layout and make the PCB thank to it. Once done, place the components regarding the schematic.
Attachments
Step 3: Program the TD1208
In order to upload the program in the TD1208 you have to download the image loader available on the link below:
http://rfmodules.td-next.com/modules/td1208/
Once downloaded, you need a FTDI cable. Plug the RX pin to the TX pin and vice versa. Don't forgot the ground but no need to plug the power wire. Power up the chip when uploading the program.
To upload the binary file open "TDLoader", chose the right port and pick "TD1208" then browse for the .bin file.
Before you click on "Acquire" you need to put the reset pin to the ground in order to set it in flash mode. Then click "Acquire" and wait until it shows "UPDATE OK". The TD1208 is now programmed! A write error may occur but we ll talk about it later.
Step 4: How to Use You Wristband
You can now use your wristband. You just have to power it up and wait for 30 seconds before it is ready to use.
With the red button you can send SOS in case of danger. Your GPS coordinates would be directly send by email to the rescue.
The red button, on the other hand, allows you to validate the checkpoints encountered during the race.
All the checkpoints will be displayed on the web interface dedicated to your race.
You can now run your orientation race with total safety.
Step 5: Actoboard
When the TD1208 chip send a message to Sigfox, it is received by Actoboard. This one decomposes each characters of the received data frame to ACSCII hexadecimal character and recomposes a new data frame with those bytes. Processing data in that way may be complicated that’s why variables were used.
Actoboard receives data frames with a maximum length of 12 bytes. Creating 12 variables allows to contain a byte for each variable. This time, data is stocked into decimal ASCII code. The letter variable contain the letter at the beginning of the data frame. This letter distinguish which type of data frame is sent by the TD1208. The other variables constitutes the rest of the trame.
The IBM website Bluemix is used to process and operate those data. To redirect the variables to a Bluemix’s application you have to enter the right URL.
In this way, the various variables declared previously and their values can be operated in the project’s application (here braceletiot).
Step 6: NodeRed
NodeRed is a web application that allows one to treat data in several ways and transmit processed data to many other platforms in graphic form. This idea is represented below in the nodes.The actoboard node is an http input of the diagram allowing it to receive the data transmitted by Actoboard as well as the variables that are declared inside it.The method used is POST.
Every green outputs are on the diagram are debug outputs> Thanks to them it is possible to visualize data form any node to check that the processing is well done.
NodeRed allows the user to to use function nodes to process data. The Conv_tram processes the actoaboard variables depending on the letter value.If the value of the letter matches the ASCII code ‘R’ then it s a data frame related to the RFID and the hexadecimal code is reconstituted. In a case in which the value corresponds to the ‘G’ ASCII code then it’s a GPS data frame and the coordinates in longitude and latitude are reconstituted.
The GPS function check only if the received data frame correspond to actual GPS data.In this case then the coordinates are sent by email. The fields ‘Server’ and ‘Port’ depends on the web mail provider.
The search function checks if it s an RFID data frame or not. If it’s the case the ID in the database that is similar is researched. Once the tag has been fund in the data base, this one is deleted by the ‘remove’ operation. Once the polygon has been defined, it’s inserted inside the database instead of the RFID tag. The goal of this process is to modify the look of a RFID tag on the map to distinguish if it has been passed or not.
Step 7: Data Base
To create the data base the easiest way, go to Bluemix, then seek in the catalog of application for the Nodered database.Then during the creation precise that it is not a simple javascript application but that it is linked to a Cloudant DB database. Launch the database. On the upper-right, click on « create database » then you can access to your new database.
A tab labeled « All document » appears. Click on the '+' next to the tab. A drop down menu is displayed like this :
The « New document » button allows to create a new document obviously. New Geospatial Index allows you to insert a map on which points may be displayed.
To create a point you need to follow the syntax below in a document:
"geometry": {
"coordinates": [ 2.358, 48.846 ], "type": "Point" }
The numbers are latitude and longitude respectively.
The
creation of a polygon is achieved by 5 points a least with the last one connecting the first one. You have to use the exact same syntax once again.
"geometry": {
"coordinates": [ [ [ 2.358, 48.846 ], [ 2.358, 48.8461 ], [ 2.3581, 48.8461 ], [ 2.3581, 48.846 ], [ 2.358, 48.846 ] ] ], "type": "Polygon" },
The RFID tags with its hexadecimal value have to be inserted in the database before the race begins. For instance:
{
"_id": "0dc64855d6", "geometry": { "coordinates": [ 2.358, 48.846 ], "type": "Point" } }
Once the tag "0dc64855d6" is validated the point is automatically replaced by a polygon.
After the race ending, you have to delete every polygon and add the points back
The database is reachable via this kind of link: