Skip to the content
2 layers58 × 38.3 mmEsp32-caliper, the printed circuit board in 3D

It features a built in 150mAh battery and a USB C interface for charging/uploading code.

Size
58 × 38.3 mm
Copper layers
2
Thickness
1.6 mm
Parts
44
Nets
51
Pads
236
Tracks, vias
441, 70
Pours
1
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
7 Mar 2023
Updated
16 Nov 2024

Overview

Esp32-caliper is an open-source printed circuit board by Mew463, from the Mew463/esp32-caliper repository on GitHub. It is a 2-layer board of 58 × 38.3 mm with 44 parts on 51 nets, routed with 441 tracks and 70 vias.

It is built around the ESP32-C3-MINI-1-N4, LP5907MFX-3.3 and BC846BLT1G(TP), with the JS102011SAQN, SP0503BAHTG and SSM3K36FS,LF among its other parts. Its parts include 14 resistors, 7 capacitors, 6 ICs, 5 diodes and 5 switches. It belongs with the ESP32 and RISC-V boards of this library.

Main components

7

README

README.md

Summary

This project adds bluetooth functionality to an ordinary set of calipers with an embedded ESP32 C3. It's main purpose was to speed up CAD Development with it's ability to automatically enter numbers into OnShape.

It features a built in 150mAh battery and a USB C interface for charging/uploading code.

This is meant to be a direct replacement for the GROSS solution that you could just buy for the inexpensive price of $100:

Features

  • Realtime battery reporting
  • Two User buttons
    • Button1 enters numbers and then presses Enter
    • Button2 enters numbers and then inserts a space so that the user can add tolerance
  • Neopixel indicator (States: Bluetooth pairing, Connected, Button 1 or 2 Pressed, Entering deep sleep)
  • 20 day standby time or 2hr usage time
  • Charge light
  • Snap-on PCB Case

Decoding the Caliper Data

Calipers Used

Soldering Wires

My old caliper's data output port looked like this:

Unfortunately I broke the old caliper during this project and had to buy a brand new version of my old caliper. Sometime in the span of 3 years, it seemed that the data output port changed to be adapted for a female micro usb (though there wasn't one soldered on the caliper's pcb).

The smaller pads made it more painful to solder wires to, but it was doable.

With an oscilloscope, I probed each pad to determine which was the clock, data, and ground line.

Logic converter

Because the Caliper's logic level is 1.5v but the ESP32 is 3v3, I needed to use a logic converter. V1 and V3 use the transistor circuit below which shifts and inverts the clock and data lines coming from the caliper. V2 used a IC level shifter which didn't work at all for some unknown reason.

Logic converter

Data protocol

Like many other people who have decoded their caliper, I discovered that there are 24 bits sent out by the caliper:

The bit at index[0] is always 1.

Bits from index[1] - index[15] signify the value with the LCB being first.

Index[21] signifies a negative number.

My old caliper had one bit to indicate the unit, but my new caliper did not have this bit (? idk why).

Creation

KiCAD

Designed in KiCAD 6.0. Bought from Mouser and manufactured by JLCPCB. I assembled them by hand.

CAD

CAD

Summary

This project took like 40 hours and 3 revisions of pcbs. If you really want a bluetooth caliper just buy one premade, it'll save you a lot of headache. Otherwise this is a fun intro-to-embedded project.

Premade bluetooth calipers

Parts

44
QtyValueFootprintReferences
550kResistor_SMD:R_0402_1005MetricR1, R2, R10, R11, R12
45k1Resistor_SMD:R_0402_1005MetricR3, R4, R5, R7
31uCapacitor_SMD:C_0402_1005MetricC3, C4, C5
210kResistor_SMD:R_0402_1005MetricR13, R14
24.7uCapacitor_SMD:C_0402_1005MetricC1, C2
2BC846BLT1GPackage_TO_SOT_SMD:SOT-23Q1, Q2
2D_SchottkyDiode_SMD:D_SOD-523D3, D4
1.1uFCapacitor_SMD:C_0402_1005MetricC10
1100kResistor_SMD:R_0402_1005MetricR6
110uFCapacitor_SMD:C_0402_1005MetricC9
12kResistor_SMD:R_0402_1005MetricR8
13.7Library:BatteryBT1
1470Resistor_SMD:R_0402_1005MetricR9
1BootButton_Switch_SMD:SW_Push_1P1T_NO_Vertical_Wuerth_434133025816SW1
1Current TestingConnector_PinHeader_1.00mm:PinHeader_1x02_P1.00mm_VerticalJ2
1Dig_CaliperLibrary:CaliperU2
1ESP32-C3-MINI-1-N4esp32:XCVR_ESP32-C3-MINI-1-N4U4
1InterBoardConnectionLibrary:InterBoardConnectionU6
1JS102011SAQNslide switch v3:SW_JS102011SAQNS1
1LEDLED_SMD:LED_0603_1608MetricD5
1LP5907MFX-3.33V3Reg:SOT95P280X145-5NU3
1MCP73831T-5ACI/OTmcp738:SOT95P280X145-5NU1
1MountingHoleMountingHole:MountingHole_3.2mm_M3H1
1NeoPixelneopixel:LED_1655D2
1RstButton_Switch_SMD:SW_Push_1P1T_NO_Vertical_Wuerth_434133025816SW2
1SP0503BAHTGESD Prot:SOT143D1
1SSM3K36FSPackage_TO_SOT_SMD:SOT-416Q3
1SendEnterButton_Switch_SMD:SW_Push_1P1T_NO_Vertical_Wuerth_434133025816SW3
1SendSpaceButton_Switch_SMD:SW_Push_1P1T_NO_Vertical_Wuerth_434133025816SW4
1USB4105-GF-AUSB C:GCT_USB4105-GF-AJ1
1USBC_Probe_PointConnector_PinHeader_1.00mm:PinHeader_1x06_P1.00mm_VerticalU9

Similar boards

  • 2 layersSolenoidValves, the printed circuit board in 3D

    SolenoidValves

    BryanGaladyne/KicadDesignBlocks

    design blocks for kicad

    6 parts
  • 4 layers100 × 35 mmNavigator, the printed circuit board in 3D

    Navigator

    Mig-M27/Avionics-PCBs

    Este repositório é usado para gerir as versões dos projetos KiCAD do sistema de Avionics da Porto Space Team. Está dividido em 2 secções: 1.

    107 parts
  • 2 layers57.9 × 67.9 mmMONster64, the printed circuit board in 3D

    MONster64

    schenkmi/Cartridges

    Repository for retro computer cartridges

    58 partsGPL-3.0
  • 2 layers55.6 × 55.8 mmHikari, the printed circuit board in 3D

    Hikari

    goodmicros/hikari

    wled party beacon

    58 parts6
  • 2 layers25.9 × 44.7 mmCatiPCB, the printed circuit board in 3D

    CatiPCB

    andreesc/BLE-Temp-Sensor

    Hardware, Firmware, and Mechanical Design Files for a Temperature Sensor Board featuring the HDC1080 sensor and Bluetooth Low Energy (BLE) connectivity.

    36 parts
  • 4 layers125 × 100 mmMacropad, the printed circuit board in 3D

    Macropad

    Michael-Lloyd/macropad

    A simple macropad powered by an 18650, with bluetooth capabilities.

    66 parts

Questions

How big is the Esp32-caliper PCB?

It measures 58 × 38.3 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Esp32-caliper use?

44 parts, built around the ESP32-C3-MINI-1-N4, LP5907MFX-3.3, BC846BLT1G(TP) and JS102011SAQN. 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 Esp32-caliper KiCad files?

From the Mew463/esp32-caliper repository on GitHub, at the commit this page was made from: the board is esp32 caliper.kicad_pcb and its schematic esp32 caliper.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Esp32-caliper design in my own project?

Its repository states no licence, so its author keeps all rights: ask Mew463 before reusing the design.