8#include <avr/pgmspace.h>
9#include <HardwareSerial.h>
14#define ESP_TIMEOUT 2000
81 ELClient(Stream* serial, Stream* debug);
91 void Request(uint16_t cmd, uint32_t value, uint16_t argc);
93 void Request(
const void* data, uint16_t len);
95 void Request(
const __FlashStringHelper* data, uint16_t len);
131 void DBG(
const char* info);
133 void write(uint8_t data);
134 void write(
void* data, uint16_t len);
135 uint16_t
crc16Add(
unsigned char b, uint16_t acc);
136 uint16_t
crc16Data(
const unsigned char *data, uint16_t len, uint16_t acc);
Definitions for ELClientResponse.
Core Utility - Templated Function Pointer Class.
uint16_t crc16Add(unsigned char b, uint16_t acc)
Create CRC for a byte add it to an existing CRC checksum and return the result.
ELClientPacket * protoCompletedCb(void)
Process a received SLIP message.
boolean Sync(uint32_t timeout=ESP_TIMEOUT)
Synchronize the communication between the MCU and the ESP.
void Request(void)
Finish the request.
ELClientPacket * Process(void)
Handle serial input.
void write(uint8_t data)
Send a byte.
void DBG(const char *info)
Send debug message over serial debug stream.
ELClientPacket * WaitReturn(uint32_t timeout=ESP_TIMEOUT)
Wait for a response from ESP for a given timeout.
uint16_t crc16Data(const unsigned char *data, uint16_t len, uint16_t acc)
Create/add CRC for a data buffer.
FP< void, void * > wifiCb
void init()
Initialize ELClient protocol.
void GetWifiStatus(void)
Request WiFi status from the ESP.
API abstraction for a Function Pointers.