1State of the project
We have released all the working files and sources. You can get them by visiting our online repository, or in this project page.
Be aware that this is an Beta release: we’ll keep on testing and improving the system in the next months (and we’ll obviously let you know about all of the improvements to come). One of the things that drives us when displaying the code is finally being able to expand our scope of collaborators, so feel free to write us through Hackaday discussion or with the form that you can find at our website.
In this project page you will be able to find the original (outdated) description of the main steps needed to build and use your own motion capture gear, if you want to get the full picture please visit our online documentation.
We’re also preparing a Tindie store in which you’ll be able to purchase our pre-built kits: this will enable people without knowledge of electronics to build and use Chordata so that they can apply its functionalities in their personal projects.
2Get the Chordata hardware
The Chordata specific hardware is compound of three different parts.
Theoretically speaking they can be arranged forming arbitrary hierarchies, but if you want to capture human movements, then you will be using a default node configuration most of the time. The default biped configuration uses 15 K-Ceptors, 15 ID Modules and 1 Hub. You can get them through one of the the following ways:
a. (The easy way, coming soon..):
Buy pre assembled kits at our Tindie store. Each one comes with the board and some pre-soldered components (all the difficult ones), and includes a few additional components to be soldered by you.
b. (The hard way):
Buy all the components, the BOM can be found at the downloads section of this project page.
Solder everything together. The current version of the Chordata hardware uses as many THT components as possible, but there are some tiny SMD ones to be soldered as well.
See the Chordata parts chapter on our documentation for more details.
3Additional hardware: SBC
Apart from our hardware you will need a regular Microcomputer like the Raspberry pi (microcomputer is just a colloquial name, technically is called SBC).
The software part of the Chordata system is composed of several programs, and most of them should be running on the SBC. The easier way to get them all, and configure them correctly, is to download the custom Linux (Raspbian based) image that will soon be available at our webpage.
The process of flashing is really simple using the dedicated tool Etcher, available for Windows, Mac and Linux. Start by downloading from their webpage, and installing it.
- Insert the SD card on your computer’s card reader.
- On Etcher select the downloaded file, select your SD card as a destination disk and hit Flash!
See the Microcomputer chapter on our documentation for more details.
4Additional parts: RJ12 cables
The cables used to interconnect the sensing units on the Chordata system strongly resemble those used on domestic telephones. They are almost the same, just for the fact that in chordata they should have 6 cores, and the ones you normally use for telefones come with 4 or 2 cores.
Technically speaking they are ~26 AWG, 6 cores cable with crimped RJ12 6p6c headers.
You will be able to buy them at our online store, or you can crimp them yourself.
Just make sure you have enough for the capture gear that are planning to use. For a default human capture you will be using 15 cables, but it's better to have a couple of spare ones. This would be a good set:
- 7 cables of ~80cm
- 5 cables of ~40cm
- 5 cables of ~30cm
See the Cables chapter on our documentation for more details.
5Fixing the sensors on the performer’s body
We have recently developed a plastic socket, that can be 3D printed. The sensor gets fixed to the socket and then secured with screws. The socket is then fixed to the body with straps. We find this system much more practical than the previous one, but we still didn't test it extensively. The STL and Blend files can be found at the downloads section of this project's page.
So, there is not a definitive way to fix the sensors. Instead, creativity and common sense should be applied in order to create your own fixing system. You can find an extended description and the characteristics of a good fixing system on the Sensor Fixings chapter on our documentation.
If you find a good solution please share it with the community!!
6Install the client software (Blender add-on)
This should really be one of the easiest parts of all the ones described in this guide. Assuming that you have a PC that can decently run 3D applications, you’ll be good to go. We just need to install some open source software on top of it.
First of all, you will need to get Blender, the powerful open source 3D manipulation software. Go to the blender website, get the last version and install it.
Now download the Chordata client add-on for blender that you’ll be able to find at our website.
On Blender go to:
File > User preferences.And open the Add-ons tab. On the bottom of the panel you will find a button
Install Add-on from fileclick it and browse to the directory where the zip file containing the add-on was downloaded. Select the .zip file and confirm.
That’s it. Did you notice how easy that was? :)
7Connecting to the notochord and testing the addon
Now let’s see if we are able to see the notochord from the blender add-on.
- Power the SBC with the notochord SD card inserted, wait some seconds for it to complete the booting procedure.
- Connect your PC to the WIFI network
Chordata-netthat the SBC has now created. The password is
- Inside Blender, open the
Chordatatab, and click
Connect. You should see the red circle turning green after some seconds, and the state should now have changed to “connected”.
If you have any problems during this step, including orienting yourself inside Blender visit the Client software chapter on our documentation.
8Accessing the remote console
The remote console is a web-interface program that allows you to control the state of the notochord from any computer or mobile device, without installing additional software. It's specially useful for testing and when performing sensor calibration.
Your device should be connected to the same network than the notochord. Most of the time, this means accessing the WIFI network that the notochord has exposed with the name
chordata. Then, from a web browser, enter the following address:
Click on the big
You should see a welcome message on the console. If you have any troubles during this process, please refer to this section of our documentation.
9Wiring the Hub and raspberry
Start by wiring the hub and the raspberry using female jumper wires as described in this diagram. Then power the Raspberry. You should see a red led constantly on and a green led blinking, that means that the amount of power provided is enough to keep the Raspberry working, and also that the system is booting.
When the power is plugged to the SBC you should see the blue led [R1] on the Hub turn on and stay that way. This means that power is also arriving to the Hub.
After some time you should see the RBG led [U4] on the hub start changing color. If after some time the led turns green or blue, then we are good to go.
As you might guessed, the RGB led indicates the state of the system, a complete table with the color codes can be found on this section of our documentation.
10Plugging and testing the K-Ceptors
In order to coexist with other siblings, each K-Ceptor should have an ID module with a unique value within that particular branch of the hierarchy.
Plug one of the ID Modules on top of one of the K-Ceptors, then plug it to one of the gates of the Hub. Be sure to plug the cable on the
IN -->connector of the K-Ceptor. The Blue led on the K-Ceptor [D1] should turn on and stay that way.
On the remote console click on the
Scanbutton, you should see the value of the ID_module printed, and the gate of the Hub used. Repeat the process for all the K-Ceptors and ID_modules. If something goes wrong double check the connections with a tester, microscope or magnifying glass. You can also try swapping K-Ceptor and ID_module in order to find which one is causing the problem. If you still can’t find anything, take a look at this section of our documentation.