Skip to the content
PCBKitNew board
2 layers25 × 22.6 mmUSlime PCB Module, the printed circuit board in 3D

USlime PCB Module

ReSummit/uSlime4

Micro form of SlimeVR trackers using BNO085

Size
25 × 22.6 mm
Copper layers
2
Thickness
1.6 mm
Parts
36
Nets
36
Pads
161
Tracks, vias
319, 39
Pours
75
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
10 May 2024
Updated
6 Jan 2025

Overview

USlime PCB Module is an open-source printed circuit board by ReSummit, from the ReSummit/uSlime repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 25 × 22.6 mm with 36 parts on 36 nets, routed with 319 tracks and 39 vias.

It is built around the AP2112K-3.3TRG1, ESP32-C6-MINI-1 and MCP73831T-2ACI/OT-HXY, with the 1.25T-2AW and X1502WR-05K-N0SN among its other parts. Its parts include 8 resistors, 6 capacitors, 4 ICs, 4 connectors and 2 diodes. It belongs with the ESP32 and RISC-V boards of this library.

Main components

5

README

README.md

Micro form of SlimeVR trackers using BNO085 and ESP32-C6-MINI module, as small as possible

Limited to 1 sided PCB but utilizes two layer to achieve a maximal dimension of 25mm x 28mm (including the ESP32-C6-MINI module)

Also includes some test points if you wanna add idk RGB lights to it or something like that lol

PCB Variants and Versions

Currently, v1.0.0 is the preferred PCB version and is listed in the releases. As a note, your red charge LED will always be on while the device is on. While this makes for a good indicator that your tracker is on, some may not like that the LED is always on. v1.1.0 fixes this but results in a long trace, change in pinout, and additional components needed.

If you do not mind the always on LED, use v1.0.0 as it is less likely to result in RF issues. If you are bothered by the LED, use a 2k or higher SMD resistor value or use v1.1.0.

On variants, there are currently three different types of main board PCBs and 2 types of supplementary modules. The first kind are listed as follows:

  • uSlime_PCB: The default PCB with the BNO085 circuit on board. Contains the working BNO085 utilizing the internal crystal (of which there is little room for an external crystal)
  • uSlime_PCB_Module: Similar to the default PCB; however, the BNO085 is replaced with a 5 pin I2C pin for attaching a uSlime_BNO085_Module on the back or front side of the PCB (in case you want to replace the IMU with a better one).
  • uSlime_PCB_Pack: The default PCB but using pack resistors to attempt the reduction of part placements by quantity. This has not been updated to v1.0.0 yet, DO NOT USE.

For supplementary modules, the variants are as follows:

  • uSlime_BNO085_Module: The default PCB for supplementary modules. In addition to the connectors that are compatible with the original SlimeVR trackers, they also have headers that you can use to connect it to something else instead if you decide not to use it for SlimeVR. This increases the versatility of the IMU for other projects. Due to the small size, a crystal could not be placed; however, one could be placed with a slightly larger PCB size.
  • uSlime_BNO085: The other PCB for supplementary modules without the header pins. This is if you are sure that you are only using this for SlimeVR. You can technically still use this for other projects like with headers, but you will likely solder on wires.

BOM and Pre-requisites

Bill of materials (BOMs) can be found in the bom folder within the respective PCB folder. These are generated on a by release basis, so they may not be up to date. It is highly recommended to generate the BOM using the "Interactive Html Bom" plugin found in typical KiCAD repository plugins.
Following the BOM placements using a BOM plugin to show where components are placed is mandatory, as there is no space for reference designators on the PCB.

In addition to this, a hot plate, solder paste, and some needle tipped tweezers are also required. Flux may also be needed to fix any bridges that pop up on the board. Obviously, the components on the BOM are also required.

Building the PCB

When ordering the PCB, choose to place the JLC PCB indicator as a preferred spot is placed on the PCB itself (if using JLCPCB for PCB production). You should also get a stencil to put solder paste on the PCB.

Again, following the BOM placements using a BOM plugin to show where components are placed is mandatory, as there is no space for reference designators on the PCB. Place solder paste on the PCB. Afterwards, follow the Interactive HTML BOM to place all the capacitors, resistors, IMU, and MCU on the PCB. When ready, you can then place this on a hot plate. Please make sure that there are no bridges on the BNO085 or the USB C connector, as these can cause issues with functionality.

Verification (MUST READ)

Before testing and using, make sure to bridge the address bridge pads on the back of the PCB. Verify that the board and the IMU functions by flashing the ESP32-C6 firmware first. If there is no address response, something may be wrong with the IMU (more likely to fail). Once you have verified that the IMU and MCU works, you can then solder the rest of the THT components such as the external IMU connector and battery connector.

Firmware

The PCB currently uses a ESP32-C6 or equivalent MCU. Right now, there is a pull request to introduce this MCU into the SlimeVR ESP32 firmware located here:
SlimeVR ESP32-C6 Pull Request

The Arduino core is technically updated but is still pending its full support to the ESP32-C6 line. Therefore, treat this as a beta firmware and subject to broken features or bugs.

PCB Limitations

Due to the inherent nature of this PCB, there is a chance that this PCB may produce RF. We have not tested for RF emission but regardless, be careful if using this in RF restricted environments.

Also, the main PCB does not have USB voltage protection circuits! Unfortunately, we ran out of time for the release but it is plausible to add it...

In addition, due to the single-sided PCB layout, this is not technically as small as it could be. There have been countless videos that showcase the design possibly being smaller. Some resistor and SMD components can also be moved to the back due to the ease in soldering those components. However, those are slated for a v2.0.0 PCB and is not expected to be released within anytime this year.

Lastly, it is known that the charger SMD compoenent tends to heat up rather quickly while charging the battery. This shouldn't reach the melting point of solder but it is worth mentioning; perhaps a more efficient IC would be better here.

Images:

Footprints Used

Some footprints and symbols were used from other sources:

Parts

36
QtyValueFootprintReferences
20.1uFCapacitor_SMD:C_0402_1005MetricC1, C2
2100kResistor_SMD:R_0402_1005MetricR1, R2
210uFCapacitor_SMD:C_0402_1005MetricC3, C4
210μFCapacitor_SMD:C_0402_1005MetricC5, C7
21kResistor_SMD:R_0402_1005MetricR4, R8
25.1kResistor_SMD:R_0402_1005MetricR6, R7
2DuSlime-libs:D_0402_1005MetricD1, D2
2IO14TestPoint:TestPoint_Pad_2.0x2.0mmTP3, TP4
2LEDLED_SMD:LED_0402_1005MetricCHRG1, STAT1
1
11.25T-2AWuSlime-libs:CONN-TH_2P-P1.25_1.25T-2AWCN2
1180kResistor_SMD:R_0402_1005MetricR3
12kResistor_SMD:R_0402_1005MetricR5
13.3VTestPoint:TestPoint_Pad_2.0x2.0mmTP5
1AP2112K-3.3TRG1uSlime-libs:SOT95P285X140-5NU3
1Conn_01x05Connector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ2
1ESP32-C6-MINI-1PCM_Espressif:ESP32-C6-MINI-1U1
1GNDTestPoint:TestPoint_Pad_2.0x2.0mmTP6
1LOGOuSlime-libs:uSlime_logoG***
1MCP73831T-2ACI/OTuSlime-libs:SOT-23-5_MC_MCHU4
1MSK-12C02_SMD_SPDT_SWITCHuSlime-libs:SW_PCM12SMTRU2
1SCLTestPoint:TestPoint_Pad_2.0x2.0mmTP2
1SDATestPoint:TestPoint_Pad_2.0x2.0mmTP1
1SW_PushButton_Switch_SMD:SW_SPST_B3U-1000P-BRESET1
1USB_C_Receptacle_USB2.0_14PConnector_USB:USB_C_Receptacle_GCT_USB4105-xx-A_16P_TopMnt_HorizontalJ1
1VBUSTestPoint:TestPoint_Pad_2.0x2.0mmTP7
1X1502WR-05K-N0SNuSlime-libs:CONN-TH_5P-P1.50_X1502WR-05K-N0SNCN1

Questions

How big is the USlime PCB Module PCB?

It measures 25 × 22.6 mm and has 2 copper layers, 1.6 mm thick.

What parts does the USlime PCB Module use?

36 parts, built around the AP2112K-3.3TRG1, ESP32-C6-MINI-1, MCP73831T-2ACI/OT-HXY and 1.25T-2AW. 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.

Where can I download the USlime PCB Module KiCad files?

From the ReSummit/uSlime repository on GitHub, at the commit this page was made from: the board is uSlime_PCB_Module/uSlime_PCB_Module.kicad_pcb and its schematic uSlime_BNO085/BNO085.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the USlime PCB Module design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

More from ReSummit/uSlime

4
  • 2 layers25 × 22.6 mmUSlime, the printed circuit board in 3D

    USlime

    ReSummit/uSlime

    Micro form of SlimeVR trackers using BNO085

    48 parts4GPL-3.0
  • 2 layers25 × 22.6 mmUSlime PCB Pack, the printed circuit board in 3D

    USlime PCB Pack

    ReSummit/uSlime

    Micro form of SlimeVR trackers using BNO085

    40 parts4GPL-3.0
  • 2 layers16.7 × 12.8 mmUSlime BNO085 Module, the printed circuit board in 3D

    USlime BNO085 Module

    ReSummit/uSlime

    Micro form of SlimeVR trackers using BNO085

    19 parts4GPL-3.0
  • 2 layers16.7 × 12.8 mmUSlime BNO085, the printed circuit board in 3D

    USlime BNO085

    ReSummit/uSlime

    Micro form of SlimeVR trackers using BNO085

    14 parts4GPL-3.0

Similar boards

  • 2 layers46.3 × 43.4 mmCarbon, the printed circuit board in 3D

    Carbon

    Enderman8843/Carbon

    Carbon is an open-source indoor air quality sensing board designed for accurate VOC, temperature, and humidity monitoring.

    38 parts1
  • 4 layers100 × 100 mmV25Panel, the printed circuit board in 3D

    V25Panel

    maholli/SAM32

    Feather-sized SAMD51 with M4 core serving as UART bridge to WROOM ESP32

    211 parts43
  • 2 layers63.5 × 99.1 mmBlugasm, the printed circuit board in 3D

    Blugasm

    saawsm/Blugasm

    A battery powered nogasm with support for bluetooth toys.

    74 parts19GPL-3.0
  • 2 layers142.7 × 72 mmBlinky bowtie, the printed circuit board in 3D

    Blinky bowtie

    joshajohnson/bsidescbr2021

    Slides and Design Files for BSides Canberra 2021

    101 parts5GPL-3.0
  • 2 layers47.9 × 28.5 mmPosture tracker v2, the printed circuit board in 3D

    Posture tracker v2

    kiranj26/Posture-Tracker-Using-ESP32

    Posture Correction using ESP32-MINI-1 and MU sensor (GY-521 / MPU-6050)

    52 parts3MIT
  • 2 layers70 × 55 mmCapsicum, the printed circuit board in 3D

    Capsicum

    hutscape/capsicum

    🫑 Retrofit a wired doorbell to add WiFi and make it connected 🔔

    80 parts2
  • 4 layers75 × 59.2 mmData logger, the printed circuit board in 3D

    Data logger

    Mutzi1211/Wasserrakete

    Ein Überblick über alle Projektbestandteile – von CAD über Code bis zu Anforderungen und Abgaben.

    65 parts1
  • 2 layers102 × 45 mmHELPStat V2, the printed circuit board in 3D

    HELPStat V2

    stevfu/eis_capstone

    Utilization of Electrochemical Impedance Spectroscopy for the Detection of Drugs

    51 parts1MIT