The Story Behind It
Predictive maintenance programs need dense sensing, but wiring every motor is expensive. Battery BLE nodes close the gap if — and only if — they last years without service visits.
This node was designed against a hard requirement: five years on a CR2477 under a realistic industrial advertising schedule.
Requirements
- Vibration (3-axis), temperature, magnetic presence
- BLE advertising or connection mode
- Target: ≥5 years on CR2477 at 0 °C–40 °C typical plant conditions
- Configurable sample and advertise intervals
- Over-the-air config via bonded write
- IP67 enclosure option
- BOM cost suitable for fleet deployment
Design Process
Power budgeting came first: spreadsheet of sleep current, sensor warm-up, ADC time, radio TX, and leakage. Only after the budget closed did schematic design begin.
Zephyr was chosen for its Nordic support and power management primitives. Antenna matching and ground clearance were simulated and then verified in a chamber for a subset of units.
Hardware Design
- nRF52840 module with chip antenna + matching network
- MEMS accelerometer with interrupt-on-threshold for event mode
- Precision thermistor / digital temp sensor (socketed option)
- Hall sensor on a switched rail
- Load switches for every non-essential rail
- Decoupling strategy optimized for burst TX currents
Battery → PMIC/protection → always-on domain (RTC, nRF)
→ switched domain (sensors)Firmware Architecture
Most of the time the CPU is in system-off or system-on idle. A timer or accelerometer interrupt wakes the device:
- Power sensors
- Warm up and sample
- Encode payload
- Advertise N times
- Power down sensors
- Sleep
static void sample_and_advertise(void) {
sensors_power_on();
k_msleep(SENSOR_WARMUP_MS);
sensor_read_all(&sample);
sensors_power_off();
ble_advertise_payload(&sample, ADV_COUNT);
}Challenges
Coin-cell internal resistance caused brownouts during radio peaks until bulk capacitance and soft-start sequencing were improved. Metal mounting plates detuned the antenna; a plastic standoff and ground keep-out fixed field performance. Firmware bugs that left a rail on destroyed the battery life budget overnight — continuous current logging became mandatory in bring-up.
Lessons Learned
- Power budgets lie until you measure sleep current on the final PCB
- Event-driven sensing beats fixed intervals when the plant is quiet
- Antenna is a mechanical design problem as much as an RF one
- Fail closed on configuration: invalid intervals should not brick battery life
Future Improvements
- Direction-finding / AoA experiments for asset location
- NFC for tap-to-configure in the field
- Compressed vibration features instead of raw samples
- Mesh relay mode for sparse gateway deployments