20#ifndef DETERMINISTICESPASYNCWEBSERVER_CCLINK_H
21#define DETERMINISTICESPASYNCWEBSERVER_CCLINK_H
27#if DETWS_ENABLE_CCLINK
32 static constexpr uint8_t CCLINK_CMD_REFRESH = 0x01;
33 static constexpr uint8_t CCLINK_CMD_POLL = 0x02;
34 static constexpr uint8_t CCLINK_CMD_TEST = 0x0F;
38uint8_t detws_cclink_sum(
const uint8_t *bytes,
size_t len);
50size_t detws_cclink_build(uint8_t station, uint8_t command,
const uint8_t *bits,
size_t bit_len,
const uint8_t *words,
51 size_t word_len, uint8_t *out,
size_t cap);
58 const uint8_t *payload;
63bool detws_cclink_parse(
const uint8_t *frame,
size_t len, CcLinkFrame *out);
66bool detws_cclink_get_bit(
const uint8_t *bits,
size_t bit_len,
size_t index);
69void detws_cclink_set_bit(uint8_t *bits,
size_t bit_len,
size_t index,
bool value);
72uint16_t detws_cclink_get_word(
const uint8_t *words,
size_t word_len,
size_t index);
User-facing configuration for DeterministicESPAsyncWebServer.