knx
ETS configurable knx-stack
esp32_platform.h
Go to the documentation of this file.
1 #ifdef ARDUINO_ARCH_ESP32
2 #include "arduino_platform.h"
3 
4 
5 
6 #include <WiFiUdp.h>
7 
9 {
10  public:
11  Esp32Platform();
12  Esp32Platform(HardwareSerial* s);
13 
14  // uart
15  void knxUartPins(int8_t rxPin, int8_t txPin);
16  void setupUart() override;
17 
18  // ip stuff
19  uint32_t currentIpAddress() override;
20  uint32_t currentSubnetMask() override;
21  uint32_t currentDefaultGateway() override;
22  void macAddress(uint8_t* addr) override;
23 
24  // unique serial number
25  uint32_t uniqueSerialNumber() override;
26 
27  // basic stuff
28  void restart();
29 
30  //multicast
31  void setupMultiCast(uint32_t addr, uint16_t port) override;
32  void closeMultiCast() override;
33  bool sendBytesMultiCast(uint8_t* buffer, uint16_t len) override;
34  int readBytesMultiCast(uint8_t* buffer, uint16_t maxLen, uint32_t& src_addr, uint16_t& src_port) override;
35 
36  //unicast
37  bool sendBytesUniCast(uint32_t addr, uint16_t port, uint8_t* buffer, uint16_t len) override;
38 
39  //memory
40  uint8_t* getEepromBuffer(uint32_t size);
41  void commitToEeprom();
42 
43  protected:
44  IPAddress _remoteIP;
45  protected:
46  uint16_t _remotePort;
47 
48  private:
49  WiFiUDP _udp;
50  int8_t _rxPin = -1;
51  int8_t _txPin = -1;
52 };
53 
54 #endif
void closeMultiCast() override
void knxUartPins(int8_t rxPin, int8_t txPin)
Esp32Platform(HardwareSerial *s)
uint32_t uniqueSerialNumber() override
void setupUart() override
int readBytesMultiCast(uint8_t *buffer, uint16_t maxLen, uint32_t &src_addr, uint16_t &src_port) override
uint8_t * getEepromBuffer(uint32_t size)
void setupMultiCast(uint32_t addr, uint16_t port) override
void macAddress(uint8_t *addr) override
IPAddress _remoteIP
uint32_t currentSubnetMask() override
bool sendBytesMultiCast(uint8_t *buffer, uint16_t len) override
uint32_t currentDefaultGateway() override
uint16_t _remotePort
uint32_t currentIpAddress() override
bool sendBytesUniCast(uint32_t addr, uint16_t port, uint8_t *buffer, uint16_t len) override