Coder Social home page Coder Social logo

tiel-lilygo-slimevr-tracker's Introduction

Tiel-Lilygo-SlimeVR-Tracker

SlimeVR Trackers using LilyGo TTGO T-OI with 16340 Battery IMG_20230718_155817

Pros

  1. Hotswappable
  2. Easier to make; Less stuff to solder
  3. Small form factor
  4. Simplifies parts buying

Cons

  1. Can't be flashed through web flasher. Requires firmware modification
  2. 2-3$ more expensive than wemos d1
  3. Less range than wemos d1 since it is using a tinier ceramic antenna.
  4. Requires a 3d printed case
  5. Generally lower capacity. 800mah (8 hours) is the highest capacity battery I can find.

Parts list:

The links are only an example. If you can find a cheaper one on another store then go with that.

Main Trackers

  1. Lilygo T-OI

  2. BMI 160 Suggested stores: Mwss, Wansai, Tenstar, Aixterm

  3. 16340 Battery The highest capacity legitimate battery I can find is 800mah.

    WARNING: If you find a cheap one advertising above 1000mah it is most likely fake. Like this one that boasts 2800 but actually only has 350mah (3.5 Hours) when tested. Buyer beware

    Screenshot 2023-07-18 195823

  4. Any wire. 26-28 awg

Extension Trackers

  1. Grove 4 pin cable male. Suggested lengths: Ankle-Foot extension: 20cm Chest-Waist extension: 30cm
  2. BMI 160

Accessories

  1. 1.5 Inch garter for straps or any 1.5 inch straps if you wont use the 3d printed buckles
  2. 18650 Charger
  3. (Optional) Gopro Chest Mount For more stable chest trackers

3d Printing

All parts to be printed without supports on either PLA or PETG

  1. Buckles and Cases both Main and Extension can be printed at these settings for 0.4mm nozzle

    Line width: 0.6

    Layer height: 0.32

  2. The switch should be printed at this setting

    Line width: 0.3

    Layer height: 0.2

Assembly

Main tracker

What you'll need:

M01

  1. Lilygo Board
  2. BMI160
  3. 3pcs of wire. 2 for ground. 1 for power
  4. 3d printed case and switch
  5. 16340 battery
  6. Header pin cut to 2 pins

1. Strip the wires

M02

2. Twist the two wires meant for ground

M03

3. Connect the wires to the IMU

Wire for power goes to 3V3 Wire for ground goes to GND and SAO M04

4. Solder the header pins to the Lilygo Board

It goes on the holes labeled 4 & 5 M05

5. Solder the Ground and Power to the Lilygo Board

Wire for power connects to the hole labeled 3V3

Wire for ground connects to the hole labeled GND

M06

6. Solder SCL and SDA to the header pins

SCL goes to the pin labeled 5

SDA goes to the pin labeled 4 M07

7. Insert to case

M08

8. Done

M09

Extension Tracker

What you'll need:

E01

  1. BMI160
  2. Grove 4 pin
  3. 3d printed extension case

1. Cut one end of the cable and strip the wire

E02

2. Connect to IMU

E03 From this we know that:

  1. Ground is the yellow wire
  2. 3V3 is the white wire
  3. SDA is the red wire (The board's label is different but it really is SDA in the firmware)
  4. SCL is the black wire

Connect the appropriate wires to the IMU E04

3. Put inside the extension case & Done

E05

Flashing the firmware

First, Setup the environment. Follow this guide on SlimeVR documentation

1. Modify firmware files

In platformio.ini Set your wifi credentials 01

In \src\batterymonitor.h set the define of batteryADCMultiplier to:

#define batteryADCMultiplier 0.0072271914132379 02

In defines.h Set IMU to IMU_BMI160

Set SECOND_IMU to IMU_BMI160

Set BOARD to BOARD_WEMOSD1MINI

Set SECOND_IMU_ROTATION to 90 (Only needed for foot trackers)

03

2. Build and Flash

Connect the board through micro USB. Then turn on the switch 07

Click the build button [1] on the lower left of VSCode

Click the upload button [2]

04 Wait for the firmware flash to finish

3. Done

Enjoy your tracker! It should connect to the slime server

06 IMG_20230718_155817

BMI 160 calibration

Youtube Video Note; This was done like this to make it visible in the camera. You should do it in a more stable way (On a table).

Credits

Extension case is from Arcturus

Buckle is from Printables HD_Creator In printables

tiel-lilygo-slimevr-tracker's People

Contributors

rdtiel avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.