|
TinyPPP
PPP networking over any Arduino Stream
|
#include <Arduino.h>#include <Network.h>#include "esp_event.h"#include "esp_netif.h"#include "esp_netif_ppp.h"#include "freertos/FreeRTOS.h"#include "freertos/task.h"Go to the source code of this file.
Classes | |
| struct | TinyPPP_ESP32::Driver |
| class | TinyPPP_ESP32 |
| PPP network interface for ESP32 (arduino-esp32 3.x): ESP-IDF lwIP PPP via esp_netif, integrated as a NetworkInterface. More... | |
Namespaces | |
| namespace | tinyppp |
| TinyPPP internals: PPP engine, HDLC framing and the IP stack. | |
Macros | |
| #define | TINYPPP_RX_BUFFER 512 |
Typedefs | |
| using | PPPClient = NetworkClient |
| Portable aliases for the network classes that work over PPP. | |
| using | PPPServer = NetworkServer |
| using | PPPUDP = NetworkUDP |
| using | TinyPPP = TinyPPP_ESP32 |
| The PPP network interface of this platform. | |
| #define TINYPPP_RX_BUFFER 512 |
ESP32 implementation (arduino-esp32 3.x): uses the PPP support of the ESP-IDF lwIP via esp_netif with a custom I/O driver that reads and writes an Arduino Stream. TinyPPP is a NetworkInterface, so NetworkClient, NetworkServer, NetworkUDP, Network.onEvent() (ARDUINO_EVENT_PPP_*) and Network.hostByName() work as with WiFi or Ethernet.
ESP-IDF runs PPP in client mode: the peer (e.g. Linux pppd) must assign the IP addresses.
Note: TinyPPP uses the PPP interface slot of the Network library, so it can't be combined with the PPP (modem) library of the core.