Imported from GitHub: crazy-hair/roachslimes · commit 8f0d472 · license CC-BY-SA-4.0
Description
A custom PCB for SlimeVR, with the intention of using the cheapest parts available in the smallest formfactor usable.
README
roachslimes
This document is no longer being updated and will only be corrected on major updates! For full documentation please check out The Docs
A utilitarian tracker design for SlimeVR, with the intention of using the cheapest parts available in the smallest form factor possible, while maintaining quality and usability.
Ordering PCBs
NEW! Revision 2 motherboards have been added, removing the BMI160-QMC5883 IMU-Magnetometer combo, and replacing it with an LSM6DSR board which has a magnetometer built in. Technically, the LSM6DSR board is pin-compatible with the BMI160 (and therefore is compatible with the old rev 1 boards), but this new design allows for much easier direct mounting (instead of using pin headers) and frees up space for a battery connector, instead of directly soldering the battery to the board. They're currently untested, still waiting for my batch to arrive, so use at your own risk!
The included gerbers in /PCB/Production/ are exported from KiCad using the recommended settings for JLCPCB. I cannot guarantee that they will work at a different fab. JLCPCB is far and away the most cost effective for low volume PCB orders, coming out to $3.52 for 20 boards before tax if you use their economy shipping option (as of 2024). There are four files, two for each board (one single board, and one panelized). Using the panelized board files is highly recommended, as it allows for More Board Per BoardTM without additional cost. The default JLCPCB order parameters are good enough for working boards out of the box, but I'd recommend changing the color to yellow (because it's lemon scented) and to select "no mark" so you don't have some unique identifier printed on the board somewhere.
Ordering Parts
Links to all required components can be found in the table futher down.
Printing Instructions
The print files, STLs, and Fusion source files are included in the /3D Files/ directory. I highly recommend using the .3mf print files as a basis for your print, as there are manually painted supports and custom settings per object (there's one .3mf for PrusaSlicer and friends and one for OrcaSlicer and friends).
Assembly
This board is designed to be compact, which means I had to make some unconventional choices during assembly. The D1 Mini and TP-4056 Boards are mounted to the surface of the PCB, while the BMI and QMC are mounted on headers on the opposite side. For assembly, this means you have to solder the headers on first, then use flush cutters or snips to cut the header pins sticking out of the front of the board down to be flush so you can solder on the boards on the onto the front. There's also a pogo pin header for a future modular charging dock which would allow for charging multiple trackers at once, and a slot for an LED and associated resistor which was added for debugging but can be used to identify trackers if you choose to use different colored LEDs per tracker. The cases are completely toolless and are friction/retention fit. Refer to the animation below for an assembly reference.
Firmware
Firmware is pretty straightforward, though I did have an issue with the Butterscotch builder/installer - battery sense would always show 100 percent. Therefore, if you want all features to work, I'd recommend building it yourself - PlatformIO Tools for Visual Studio Code make it super easy. If you're compiling yourself, all you have to do is uncomment out BATTERY_SHIELD_RESISTANCE 180 in defines.h, set USE_6_AXIS false in debug.h, and and change BMI160_MAG_TYPE BMI160_MAG_TYPE_HMC to BMI160_MAG_TYPE BMI160_MAG_TYPE_QMCin defines_bmi160.h. If that makes no sense to you, I've included compiled firmware in the releases section.
Price Breakdown
A fully parametric breakdown that allows for adjusting tax, quantity, and more can be found in BOM.xlsx or here (if you want to modify it, you'll have to make a copy first).
All prices are in USD. Sales tax is calculated at 8.25%. The table is based on a full set of trackers and includes 2 extra D1s, BMIs, and QMCs to account for possible DOA parts or accidents during assembly. Note that the LED and associated 620Ω resistor, as well as the pogo pins are not necessary for core tracker operation, as specified in the comment row.
| Tracker Components | D1 Mini v4 | BMI160 | TP-4056 | GY-271 | SK12D07VG4 | JST-PH-4P | Pogo Female | B5817WS | 0805 180k | 0806 620r | 0805 LED | 803450 | Wires | Motherboard | Daughterboard | Total |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Listing Price | $1.43 | $0.88 | $3.27 | $0.58 | $1.20 | $3.79 | $12.93 | $1.20 | $1.05 | $1.05 | $2.47 | $25.99 | $11.93 | $2.00 | $2.00 | |
| Shipping | $2.63 | $2.32 | $ - | $ - | $ - | $ - | $ - | $ - | $ - | $ - | $ - | $ - | $ - | $1.52 | $1.52 | $7.99 |
| Subtotal | $15.50 | $12.88 | $3.27 | $6.96 | $1.20 | $3.79 | $12.93 | $1.20 | $1.05 | $1.05 | $2.47 | $25.99 | $11.93 | $3.52 | $3.52 | $107.26 |
| Tax | $1.28 | $1.06 | $0.27 | $0.57 | $0.10 | $0.31 | $1.07 | $0.10 | $0.09 | $0.09 | $0.20 | $2.14 | $0.98 | $0.29 | $0.29 | $8.85 |
| Total | $16.78 | $13.94 | $3.54 | $7.53 | $1.30 | $4.10 | $14.00 | $1.30 | $1.14 | $1.14 | $2.67 | $28.13 | $12.91 | $3.81 | $3.81 | $116.11 |
| Order Quantity | 9 | 12 | 1 | 12 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | |
| Item Quantity | 1 | 1 | 20 | 1 | 20 | 100 | 20 | 100 | 100 | 100 | 600 | 10 | 12 | 20 | 40 | |
| Price Per Unit | $1.86 | $1.16 | $0.18 | $0.63 | $0.06 | $0.04 | $0.70 | $0.01 | $0.01 | $0.01 | $0.00 | $2.81 | $1.08 | $0.19 | $0.10 | |
| Quantity Per Primary Tracker | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 2 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | |
| Quantity Per Secondary Tracker | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | |
| Price Per Primary Tracker | $1.86 | $1.16 | $0.18 | $0.63 | $0.06 | $0.04 | $0.70 | $0.03 | $0.01 | $0.01 | $0.00 | $2.81 | $ - | $0.19 | $ - | $7.69 |
| Price Per Secondary Tracker | $ - | $1.16 | $ - | $0.63 | $ - | $0.04 | $ - | $ - | $ - | $ - | $ - | $ - | $1.08 | $ - | $0.10 | $3.00 |
| Comment | Optional | Optional | Optional |
Gallery










Credits
List of models used:
| Model | Credit |
|---|---|
| Wemos D1 Mini v4 | FBMinis |
| TP-4056 | Babu George |
| BMI160 | Kouno |
| GY-271 | Benas Griauzde |
No comments yet. Be the first to ask about this board.