mirror of
https://github.com/thelsing/knx.git
synced 2025-10-08 11:14:29 +02:00
38 lines
890 B
C++
38 lines
890 B
C++
#ifdef ARDUINO_ARCH_ESP8266
|
|
#include "arduino_platform.h"
|
|
#include <ESP8266WiFi.h>
|
|
#include <WiFiUdp.h>
|
|
|
|
|
|
class EspPlatform : public ArduinoPlatform
|
|
{
|
|
public:
|
|
EspPlatform();
|
|
EspPlatform( HardwareSerial* s);
|
|
|
|
// ip stuff
|
|
uint32_t currentIpAddress() override;
|
|
uint32_t currentSubnetMask() override;
|
|
uint32_t currentDefaultGateway() override;
|
|
void macAddress(uint8_t* addr) override;
|
|
|
|
// basic stuff
|
|
void restart();
|
|
|
|
//multicast
|
|
void setupMultiCast(uint32_t addr, uint16_t port) override;
|
|
void closeMultiCast() override;
|
|
bool sendBytesMultiCast(uint8_t* buffer, uint16_t len) override;
|
|
int readBytesMultiCast(uint8_t* buffer, uint16_t maxLen) override;
|
|
|
|
//memory
|
|
uint8_t* getEepromBuffer(uint16_t size);
|
|
void commitToEeprom();
|
|
private:
|
|
WiFiUDP _udp;
|
|
uint32_t _mulitcastAddr;
|
|
uint16_t _mulitcastPort;
|
|
};
|
|
|
|
#endif
|