78 int read()
override {
return -1; }
91 if (available_bytes == 0) {
97 if (length < available_bytes) {
98 LOGE(
"readBytes len too small %u instead of %u", (
unsigned)length,
99 (
unsigned)available_bytes);
107 return available_bytes;
115 int peek()
override {
return -1; }
128 size_t write(uint8_t b)
override {
return 0; }
137 size_t write(
const uint8_t* data,
size_t len)
override {
176 uint16_t
_crc16(uint8_t data, uint16_t crc) {
177 crc ^= (uint16_t)data << 8;
178 for (
int i = 0; i < 8; i++)
179 crc = (crc & 0x8000) ? (crc << 1) ^ 0x1021 : (crc << 1);
205 if (!data || len == 0)
return 0;
207 uint16_t crc = 0xFFFF;
210 for (
size_t i = 0; i < len; ++i) {
211 crc =
_crc16(data[i], crc);
236 uint16_t calcCrc = 0xFFFF;
237 for (
size_t i = 0; i <
_rxLen - 2; ++i)
240 if (calcCrc == recvCrc) {
241 for (
int j = 0; j <
_rxLen - 2; j++) {
#define LOGE(...)
Definition AudioLoggerIDF.h:30
#define assert(T)
Definition avr.h:10
virtual size_t write(const uint8_t *data, size_t len)
Definition Arduino.h:120
virtual void flush()
Definition Arduino.h:130
virtual int available()
Definition Arduino.h:139