Smart Insoles

by RafaelPinho in Circuits > Wearables

2417 Views, 7 Favorites, 0 Comments

Smart Insoles

20160629_093744.jpg
20160628_222021.jpg
20160628_222032.jpg
20160628_221230.jpg

This project was devised for the Software of Places graduation course of PUC-Rio - Pontifical Catholic University of Rio de Janeiro.

We developed a wearable - The Smart Insole - to collect data from the user's feet, in order to analyze this data to understand the user's foot posture. The insole constantly reads the pressure applied over the right and left edges, along with accelerometer data, and send this data together in short messages via Bluetooth.

Bill of Materials

20160626_120937.jpg
20160626_100536.jpg
20160628_170641.jpg

For this project we need only a few electronic components and an insole. Here is the list of materials used and their prices:

  • Lightblue Bean - US$30,00
  • [2] Force Sensitive Resistors - US$15,00
  • Insoles - US$8,00
  • Coin Cell Battery - US$1,95
  • Jumper Wires - US$1,25
  • [2] 10K Ohm Resistors - US$0,10

Total Cost: Approximately US$56,00

Assembly

20160628_224550.jpg
20160628_224609.jpg
20160629_020938.jpg
20160629_022753.jpg
FSR_Arduino_Hookup1-400x287.png
20160628_165805.jpg
20160628_221209.jpg
20160628_221159.jpg

The setup of the force sensitive sensors is fairly simple, but you will need a 10K Ohms resistor for each force sensor in order to create the voltage divider needed to read the data. The figure 5 above shows how to connect each force sensitive resistor to the Arduino compatible board of your choice - we used the Lightblue Bean micro-controller by Punch Through Design because of its innate Bluetooth capabilities., and the code provided here was developed for that micro-controller.

There is a special need to protect the force sensitive resistor terminals, and one of the resistors of the first prototype developed was damaged beyond repair. We found out that a simple coin is more than enough for the job, just remember to use some isolation tape.

We used double-sided bonding tapes to hold the two parts of the insole together, just like an electrical component sandwich. The micro-controller was put in an old small running pouch, and the wires from the insole were connected to the micro-controller through the shoelace's eyelets.

Coding and Reading the Data

Here in this step the code needed to broadcast Bluetooth messages containing the data is provided. Again, we read the Lightblue Bean accelerometer's data along with the force applied to each side of the insole (a number ranging from 0 to 1023).

To visualize the data, there is a vast number of options.

If you have an OS X computer, you can use Virtual Serial

If you have an iPad or iPhone, you can use the Lightblue Explorer

If you're not from the Mac world, you can use Node-Red or the Bean Loader (Windows, Android)

So What?

FootPronation01.png
FootPronation02.jpg

Now that you have an insole collecting data from the user, so what?

You could, like we did, use it to analyse the user's foot pronation, as figure 1 and 2 shows.

It is also possible - and we did it too - to generate a data set and get some insights from it through Machine Learning techniques. If the user is working out, for example, you can try to determine in which lower body exercise the user is currently engaged. Or you can turn the Smart Insoles in a cheap sensor package to help discovering a user's context - walking, running, stepping down or up, etc.

It is up to you!