
TundraIOExpansion
ras-marques/ImmersiveGloves
I want to share how I am making vr gloves using 2 Tundra Trackers, 2 interface boards and 12 inertial sensors.

I want to share how I am making vr gloves using 2 Tundra Trackers, 2 interface boards and 12 inertial sensors.
Multi imu is an open-source printed circuit board by ras-marques, from the ras-marques/ImmersiveGloves repository on GitHub, published under the MIT licence. It is a 4-layer board of 7.3 × 12.7 mm with 8 parts on 28 nets.
It is built around the ICM-20948. Its parts include 2 capacitors, 2 resistors, 2 connectors and 1 IC. It belongs with the sensors and measurement boards of this library.
I want to share how I am making vr gloves using 2 Tundra Trackers, 2 interface boards and 12 inertial sensors.
https://github.com/ras-marques/ImmersiveGloves/assets/6479742/4af1af61-4261-44ce-aa3d-e45de0df7709
Check the full presentation on youtube https://www.youtube.com/watch?v=5OSYiYDkOE8
Hand tracking works with curl and splay on all fingers with 1 IMU on each finger. There is a joystick that is enabled by touching the thumb to the index finger and B, A and System buttons are available by touching the thumb to the middle, ring and pinky fingers respectively.
Instructions are incomplete. The files for the main board and IMU boards are updated. There is only code for the right glove. 3D printing files need tweaking.
The hardest part in this project is making the boards. I am currently not supplying boards, so you will need to order them from somewhere.
The boards are 4 layer and have fine pitch components. Making the PCBs at home is out of the question, but you can order them from JLCPCB, PCBWAY, etc.
I assembled the components on my glove by hand using a stencil to dispense solder paste and used a hot air gun for reflowing. A hot plate is better.
If you don't have a 3d printer, you could order the models from somewhere or ask a friend.
Currently everything is glued to the glove fabric, you could use hot glue or super glue.
The pre-crimped JST wires are necessary to make the assembly process easier, more below.
A realistic ballpark for cost is around 250€ per pair of gloves with component and shipping cost and assuming you already have all the tools like a 3d printer, and soldering tools.
You can refer to https://github.com/ras-marques/ImmersiveGloves/blob/main/CustomPCBs/cost_analysis.ods for the complete BOM, but in summary the current cost is described below:
Why base these gloves around the Tundra Tracker? Using a Tundra Tracker and an expansion board avoids having to deal with batteries, since the Tundra Tracker can power everything. Also, the tracker takes care of transmiting the data from the gloves to the computer wirelessly. Two RP2040's take care of acquiring the data from the 6 inertial sensors, processing it and delivering it to the tracker.
This project is for people that already have a laser tracked VR setup with base stations and ideally for people using Tundra Trackers for full body tracking. That said, if you don't have the Tundra Trackers yet, there are some options:
On top of this, if you don't have base stations, those go for 159€ from valve and it is better to have 2.
Tundra Labs have a repo with some documentation on how to use their development board https://github.com/tundra-labs/rp2040_examples
CircuitPython allowed me to easily get the inertial sensors working without me having to program everything from scratch, you can learn more about this here https://learn.adafruit.com/adafruit-9-dof-orientation-imu-fusion-breakout-bno085/python-circuitpython
Finally Functional's Open VR Driver Tutorial that was a great introduction on how OpenVR inputs work https://www.youtube.com/watch?v=LzEIOBnbC8k
OpenVR repository has lots of documentation, it takes a while to figure out the parts that are important for this project, but it's worth the effort https://github.com/ValveSoftware/openvr
danwillm helped me get this thing started by pointing me in the right direction, telling me what technologies to use to speak with the tracker and openvr.
Here’s how I suggest you go about proposing a change to this project:
main branch.Using the web-based interface to make changes is fine too, and will help you by automatically forking the project and prompting to send a pull request too.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 2 | 100n | Capacitor_SMD:C_0201_0603Metric_Pad0.64x0.40mm_HandSolder | C1, C2 |
| 2 | 10k | Resistor_SMD:R_0201_0603Metric_Pad0.64x0.40mm_HandSolder | R1, R2 |
| 2 | Conn_01x04_MountingPin | Connector_JST:JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_Horizontal | J3, J4 |
| 1 | ICM-20948 | Sensor_Motion:InvenSense_QFN-24_3x3mm_P0.4mm | U1 |
| 1 | SolderJumper_3_Open | Jumper:SolderJumper-3_P1.3mm_Open_Pad1.0x1.5mm_NumberLabels | JP1 |
It measures 7.3 × 12.7 mm and has 4 copper layers, 0.8 mm thick.
8 parts, built around the ICM-20948. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the ras-marques/ImmersiveGloves repository on GitHub, at the commit this page was made from: the board is CustomPCBs/InDevelopment/Multi_IMU/multi_imu/multi_imu.kicad_pcb and its schematic CustomPCBs/InDevelopment/BMI160-and-QMC5883L_Second_Bone/BMI160-and-QMC5883L_Second_Bone.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

ras-marques/ImmersiveGloves
I want to share how I am making vr gloves using 2 Tundra Trackers, 2 interface boards and 12 inertial sensors.

ras-marques/ImmersiveGloves
I want to share how I am making vr gloves using 2 Tundra Trackers, 2 interface boards and 12 inertial sensors.

ras-marques/ImmersiveGloves
I want to share how I am making vr gloves using 2 Tundra Trackers, 2 interface boards and 12 inertial sensors.

ras-marques/ImmersiveGloves
I want to share how I am making vr gloves using 2 Tundra Trackers, 2 interface boards and 12 inertial sensors.

ras-marques/ImmersiveGloves
I want to share how I am making vr gloves using 2 Tundra Trackers, 2 interface boards and 12 inertial sensors.

ras-marques/ImmersiveGloves
I want to share how I am making vr gloves using 2 Tundra Trackers, 2 interface boards and 12 inertial sensors.

ras-marques/ImmersiveGloves
I want to share how I am making vr gloves using 2 Tundra Trackers, 2 interface boards and 12 inertial sensors.

ras-marques/ImmersiveGloves
I want to share how I am making vr gloves using 2 Tundra Trackers, 2 interface boards and 12 inertial sensors.

willem-pennings/balancing-cube
A cube that balances itself in a corner or edge using reaction wheels


crnicholson/StratoSoar-MK3
StratoSoar MK3, an autonomous glider meant for high-altitudes, accessible to everyone

BHDynamics/dynossat-edu-obc
DynOSSAT-EDU, educational PocketQube satellite On-Board Computer files



alexander-armitage/AURA-Hardware
AURA is a set of modular PCBs designed in KiCad for versatile robotics and aerospace applications — from drones and quadrupeds to rockets.

Kmshanley/PicoSat-Initiative
The pocket cube standard requires satellites to be 5x5x5cm and under 250 grams. Upon completion of this Wentworth PicoSat it will become one of the smallest satellites capable of high resolution imagery from LEO.