61 lines
2.4 KiB
Markdown
61 lines
2.4 KiB
Markdown
# Enclosure Axis Validation — 2026-08-16
|
|
|
|
The enclosure was tested with the battery end treated as the bottom of the
|
|
reference orientation. The shared enclosure frame is +X right, +Y toward the
|
|
top, and +Z toward the cover.
|
|
|
|
## Audit clarification
|
|
|
|
The timing results below validate the ESP32-C3 polling loop, not the independent
|
|
sensor sample clocks. A subsequent review of the capture found a coherent repeated
|
|
ADXL345 sample approximately every 27 polls, consistent with an actual device ODR
|
|
near 96.3 Hz. This does not affect the static six-position axis result. Firmware v2
|
|
adds ADXL345 and L3G4200D freshness/overrun status to every record so dynamic data
|
|
can be interpreted correctly.
|
|
|
|
## Capture integrity
|
|
|
|
- 50,001 consecutive samples over 500.000 seconds
|
|
- Effective MCU polling rate: exactly 100 Hz
|
|
- Timestamp interval: 10,000 us for every sample
|
|
- Sequence gaps: 0
|
|
- Axis-mapping mismatches between mapped and native columns: 0
|
|
|
|
The raw capture is `captures/enclosure_axis_test.csv` and is intentionally
|
|
excluded from source control.
|
|
|
|
## Accelerometer orientation results
|
|
|
|
| Position | Mean enclosure counts | Expected dominant axis | Result |
|
|
| --- | ---: | ---: | --- |
|
|
| Flat, cover up | (+4, -5, +258) | +Z | Pass |
|
|
| Left edge down | (+258, -3, +10) | +X | Pass |
|
|
| Right edge down | (-260, -9, +16) | -X | Pass |
|
|
| Battery edge down | (-3, +255, +11) | +Y | Pass |
|
|
| Top edge down | (+5, -264, +15) | -Y | Pass |
|
|
| Cover side down | (-7, -7, -234) | -Z | Pass |
|
|
|
|
The paired-face results give an initial calibration estimate of:
|
|
|
|
```text
|
|
offset_counts = (-1.30, -4.45, +12.20)
|
|
counts_per_g = (258.90, 259.85, 245.70)
|
|
```
|
|
|
|
These values are recorded as candidates only; calibration is not yet applied
|
|
in firmware.
|
|
|
|
## Gyroscope rotation results
|
|
|
|
- The deliberate X rotation was X-dominant in 1,261 dynamic samples, versus
|
|
44 Y-dominant and 35 Z-dominant samples.
|
|
- The deliberate Z rotation was Z-dominant in all 1,008 dynamic samples. No X
|
|
or Y sample crossed the same 500-count activity threshold.
|
|
- Earlier side-to-side orientation changes were Y-dominant, confirming the
|
|
remaining gyro axis.
|
|
|
|
The mounted sensor axes and the firmware's enclosure-frame axis assignments are
|
|
consistent. These tests established the dominant gyro axis but did not establish
|
|
gyro polarity. The subsequent 2026-08-17 calibration pass used directed positive
|
|
and negative rotations and confirmed polarity on all three axes.
|