Problem
Motorsports setup work needs repeatable measurements across several physical corners of a vehicle. The embedded system had to acquire weight and angle data, preserve calibration, identify the correct device at the correct corner, and deliver live values to a mobile application without confusing one nearby module for another.
The public CSM Performance page describes Precision Hub Stands with IntelAlign modules, zero-deflection scales, live readings from all four corners, precision camber gauges, built-in calibration routines, an included iPad application, saved/loaded setups, printable reports, and motorsports-focused operation. That public product promise depends on firmware and mobile software agreeing on measurement identity, timing, units, and calibration state.
System context
Load cells
|
v
24-bit ADS1234 acquisition ----> filtering / tare / scale calibration
|
Inclinometer over UART ------------+
|
v
ESP32 / FreeRTOS measurement firmware
|
v
BLE advertising plus GATT control
|
v
iOS / iPad app: four-corner setup, calibration, reportsMeasurement and edge-case challenge
This was not just reading an ADC. The firmware had to deal with 24-bit signed conversion, conversion-ready timing, moving-average filtering, noisy physical loads, tare and scale factors, UART response validity, battery state, BLE update timing, device identity, and persistent configuration.
On the app side, CoreBluetooth discovery had to filter the correct devices, map each unit to a vehicle position, validate the expected serial/PIN relationship, track signal quality and last-seen data, and serialize calibration writes so a technician did not accidentally apply a value to the wrong corner.
Implementation approach
Split acquisition responsibilities
Use separate firmware responsibilities for load-cell sampling, inclinometer polling, battery monitoring, BLE communication, calibration, and persistence.
Use BLE channels intentionally
Expose compact live telemetry efficiently through advertising, while reserving connected GATT operations for ordered configuration and calibration commands.
Protect physical identity
Bind device serial/PIN and expected vehicle position so the app can reject nearby but unassigned hardware.
Design for field workflow
Support saved settings, calibration screens, live readings, and measurement records so the system functions as a technician tool rather than a sensor demo.
Outcome
The project connected physical measurement, embedded firmware, BLE protocol design, and mobile workflow into a coherent field product. The public system advertises simple alignment setup; the engineering underneath makes live four-corner data, calibration, identity, and saved setup behavior dependable.