mirror of
https://github.com/liquidraver/ZephCore.git
synced 2026-10-15 18:20:02 +00:00
- admin screen: telemetry via upstream LPPDataHelpers (ported; fixed its 1-byte humidity size), every field, per-channel, signed current (helpers/ui/telemetry_text) - battery %: both UIs show ZephyrBoard::getBattPercent() (discharge curve / fuel gauge) instead of a linear 3.0-4.2 V estimate - app/PowerPolicy: low-battery auto-shutdown + v-contact alert + autoshutdown CLI on every companion (headless too); under 2000 mV counts as no battery; default 3200 mV, stored 3300 migrated once - one time_sync.c for both UIs; ui_push_radio_state() for all roles - repeater admin screen in its own file; handleInput split per mode - dead UI code removed; companion help fits one reply frame
18 lines
623 B
C
18 lines
623 B
C
/*
|
|
* SPDX-License-Identifier: MIT
|
|
*
|
|
* CayenneLPP telemetry as display text, one field per line (the joystick UI's
|
|
* repeater admin screen). Channel 1 is the node itself (battery, MCU
|
|
* temperature, GPS); every other channel is a sensor, shown with a "cN "
|
|
* prefix. Types it does not show are skipped by their size (upstream's
|
|
* LPPData), never a reason to stop. No Zephyr dependencies (host-tested).
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <stddef.h>
|
|
#include <stdint.h>
|
|
|
|
/* Writes a NUL-terminated string; "no telemetry" when nothing was shown. */
|
|
void telemetry_text(const uint8_t *data, uint8_t len, char *out, size_t cap);
|