powerpods/main/esp_now_proto.h
simon ee38ce551a Add accelerometer deadzone via UART and ESP-NOW.
Filter BMA456 logs by configurable LSB threshold; master can set deadzone
for local sensor or slaves using ACCEL_DEADZONE (UART) and ESP-NOW broadcast
until unicast delivery is restored.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-18 23:06:25 +02:00

32 lines
1.1 KiB
C

#ifndef ESP_NOW_PROTO_H
#define ESP_NOW_PROTO_H
#include "esp_err.h"
#include "esp_now_messages.pb.h"
#include <stddef.h>
#include <stdint.h>
#define ESPNOW_PB_MAX_SIZE 250
esp_err_t esp_now_proto_encode(const alox_EspNowMessage *msg, uint8_t *buf,
size_t buf_size, size_t *out_len);
esp_err_t esp_now_proto_decode(const uint8_t *data, size_t len,
alox_EspNowMessage *msg);
/** Decode messages that carry EspNowSlavePresence (mac callback required). */
esp_err_t esp_now_proto_decode_with_mac(const uint8_t *data, size_t len,
alox_EspNowMessage *msg,
uint8_t mac_out[6]);
void esp_now_proto_setup_presence_encode(alox_EspNowSlavePresence *presence,
const uint8_t mac[6]);
void esp_now_proto_setup_message_decode(alox_EspNowMessage *msg,
uint8_t mac_out[6]);
const alox_EspNowSlavePresence *
esp_now_proto_get_presence(const alox_EspNowMessage *msg);
#endif