From 9d6e7c5e0d00d3d4f9aefec0f274fd962ef5f8af Mon Sep 17 00:00:00 2001 From: MReenen Date: Thu, 28 Sep 2023 20:57:11 +0200 Subject: [PATCH] inital rx --- recever.py | 1 + rx_esp2866/rx_esp2866.ino | 74 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 rx_esp2866/rx_esp2866.ino diff --git a/recever.py b/recever.py index fbe3ed6..1e3705f 100644 --- a/recever.py +++ b/recever.py @@ -32,6 +32,7 @@ def onMessage(message): if(data[0] == boat): sendData(data) break + async def run(ws, path): async for message in ws: diff --git a/rx_esp2866/rx_esp2866.ino b/rx_esp2866/rx_esp2866.ino new file mode 100644 index 0000000..9723d63 --- /dev/null +++ b/rx_esp2866/rx_esp2866.ino @@ -0,0 +1,74 @@ +#include +#include + +#define WIFI_SSID "MBCBootjes" +#define WIFI_PASS "hetgrootedok" +#define UDP_PORT 1234 + +WiFiUDP UDP; +#define RX_BUFFER_SIZE 255 +char rxBuffer[RX_BUFFER_SIZE]; +uint8_t rxBuffer_writePointer = 0; +uint8_t rxBuffer_readPointer = 0; + +class Buffer +{ + void *buffer_start; + void *buffer_end; + int size; + + void *write_p; + void *read_p; + + Buffer(void *buffer, size) + { + this->buffer_start = buffer; + this->buffer_end = buffer + size - 1; + + this->write_p = this->buffer_start; + this->read_p = this->buffer_start; + + this->size = size; + } + + void put(void *data, size_t len) + { + if (this->write_p + len > buffer_end) + { + size_t leftToEnd = (size_t)(buffer_end - this->write_p) + this->put(data, leftToEnd); + this->put(data + leftToEnd, len - leftToEnd); + } + else + { + memcpy(this->write_p, data, len); + } + } +} + +void setup() { + WiFi.begin(WIFI_SSID, WIFI_PASS); + while (WiFi.status() != WL_CONNECTED) + { + delay(100); + Serial.print("."); + } + + UDP.begin(UDP_PORT); +} + +void loop() { + int packetSize = UDP.parsePacket(); + if (packetSize) { + int len = UDP.read(&rxBuffer[rxBuffer_writePointer], RX_BUFFER_SIZE-rxBuffer_writePointer); + if (rxBuffer_writePointer >= RX_BUFFER_SIZE) + { + rxBuffer_writePointer -= RX_BUFFER_SIZE; + } + } + + if (rxBuffer_writePointer != rxBuffer_readPointer) + { + + } +}