Logo Pico-Framework A web-first embedded framework for C++
Loading...
Searching...
No Matches
lwipopts.h File Reference

Configuration options for the lwIP stack. More...

#include "stdint.h"
+ Include dependency graph for lwipopts.h:

Go to the source code of this file.

Macros

#define LWIPOPTS_H
 
#define NO_SYS   0
 
#define LWIP_TIMERS   1
 
#define SYS_LIGHTWEIGHT_PROT   1
 
#define MEM_LIBC_MALLOC   0
 
#define MEMP_MEM_MALLOC   0
 
#define MEM_ALIGNMENT   4
 
#define MEM_SIZE   (10 * 1024)
 
#define MEMP_NUM_NETCONN   32
 
#define MEMP_NUM_TCP_PCB   16
 
#define MEMP_NUM_TCP_PCB_LISTEN   8
 
#define MEMP_NUM_TCP_SEG   32
 
#define MEMP_NUM_ARP_QUEUE   10
 
#define MEMP_NUM_NETBUF   16
 
#define MEMP_NUM_SYS_TIMEOUT   16
 
#define NUM_MEMP_PBUF   16
 
#define PBUF_POOL_SIZE   24
 
#define PBUF_POOL_BUFSIZE   1460
 
#define ETH_PAD_SIZE   0
 
#define LWIP_TCP   1
 
#define LWIP_IPV4   1
 
#define TCP_TTL   255
 
#define TCP_QUEUE_OOSEQ   0
 
#define TCP_MSS   1460
 
#define TCP_SND_BUF   (8 * TCP_MSS)
 
#define TCP_WND   (8 * TCP_MSS)
 
#define TCP_SND_QUEUELEN   ((4 * (TCP_SND_BUF) + (TCP_MSS - 1)) / TCP_MSS)
 
#define TCP_SND_QUEUELEN   32
 
#define TCP_LISTEN_BACKLOG   1
 
#define TCP_MSL   1000
 
#define TCP_SYNMAXRTX   3
 
#define LWIP_TCP_KEEPALIVE   1
 
#define TCP_KEEPIDLE_DEFAULT   10000
 
#define TCP_KEEPINTVL_DEFAULT   1000
 
#define TCP_KEEPCNT_DEFAULT   3
 
#define LWIP_TCP_ABORT   1
 
#define LWIP_TCP_FASTOPEN   1
 
#define LWIP_UDP   1
 
#define UDP_TTL   255
 
#define LWIP_ICMP   1
 
#define LWIP_DNS   1
 
#define DNS_TABLE_SIZE   4
 
#define DNS_MAX_NAME_LENGTH   256
 
#define DNS_MAX_SERVERS   2
 
#define LWIP_DHCP   1
 
#define LWIP_AUTOIP   0
 
#define LWIP_SNTP   1
 
#define SNTP_SUPPORT   1
 
#define SNTP_CHECK_RESPONSE   1
 
#define SNTP_RETRY_TIMEOUT   5000
 
#define SNTP_SERVER_ADDRESS   "pool.ntp.org"
 
#define SNTP_SERVER_PORT   123
 
#define SNTP_SERVER_DNS   1
 
#define SNTP_MAX_SERVERS   1
 
#define SNTP_SET_SYSTEM_TIME   1
 
#define SNTP_UPDATE_DELAY   60*60*1000
 
#define SNTP_SET_SYSTEM_TIME(sec)   sntp_set_system_time(sec)
 
#define LWIP_RAW   1
 
#define LWIP_NETCONN   1
 
#define LWIP_SOCKET   1
 
#define LWIP_COMPAT_SOCKETS   0
 
#define LWIP_NETCONN_SEM_PER_THREAD   0
 
#define LWIP_SO_RCVTIMEO   1
 
#define LWIP_TCPIP_CORE_LOCKING   1
 
#define LWIP_TCPIP_CORE_LOCKING_INPUT   1
 
#define TCPIP_THREAD_NAME   "tcpip_thread"
 
#define TCPIP_THREAD_STACKSIZE   2048
 
#define TCPIP_THREAD_PRIO   8
 
#define TCPIP_MBOX_SIZE   8
 
#define DEFAULT_THREAD_STACKSIZE   2048
 
#define DEFAULT_UDP_RECVMBOX_SIZE   8
 
#define DEFAULT_TCP_RECVMBOX_SIZE   8
 
#define DEFAULT_ACCEPTMBOX_SIZE   8
 
#define DEFAULT_RAW_RECVMBOX_SIZE   8
 
#define LWIP_TIMEVAL_PRIVATE   0
 
#define LWIP_ALTCP   0
 
#define LWIP_ALTCP_TLS   0
 
#define LWIP_ALTCP_TLS_MBEDTLS   0
 
#define LWIP_ARP   1
 
#define LWIP_ETHERNET   1
 
#define LWIP_NETIF_HOSTNAME   1
 
#define LWIP_NETIF_STATUS_CALLBACK   1
 
#define LWIP_NETIF_LINK_CALLBACK   1
 
#define LWIP_NETIF_EXT_STATUS_CALLBACK   1
 
#define DHCP_DOES_ARP_CHECK   0
 
#define LWIP_DHCP_DOES_ACD_CHECK   0
 
#define LWIP_NETIF_TX_SINGLE_PBUF   1
 
#define ETHARP_TABLE_SIZE   127
 
#define CHECKSUM_GEN_IP   1
 
#define CHECKSUM_GEN_UDP   1
 
#define CHECKSUM_GEN_TCP   1
 
#define CHECKSUM_CHECK_IP   1
 
#define CHECKSUM_CHECK_UDP   1
 
#define CHECKSUM_CHECK_TCP   1
 
#define LWIP_CHKSUM_ALGORITHM   3
 
#define LWIP_STATS   1
 
#define LWIP_STATS_DISPLAY   1
 
#define LWIP_PERF   0
 
#define LWIP_DEBUG   1
 
#define ALTCP_MBEDTLS_DEBUG   LWIP_DBG_OFF
 

Functions

void sntp_set_system_time (uint32_t sec)
 

Detailed Description

This configuration is tuned for use with FreeRTOS and Raspberry Pi Pico W (RP2040), incorporating custom memory, TCP, debugging, and threading settings.

Definition in file lwipopts.h.

Macro Definition Documentation

◆ ALTCP_MBEDTLS_DEBUG

#define ALTCP_MBEDTLS_DEBUG   LWIP_DBG_OFF

Definition at line 221 of file lwipopts.h.

◆ CHECKSUM_CHECK_IP

#define CHECKSUM_CHECK_IP   1

Definition at line 169 of file lwipopts.h.

◆ CHECKSUM_CHECK_TCP

#define CHECKSUM_CHECK_TCP   1

Definition at line 171 of file lwipopts.h.

◆ CHECKSUM_CHECK_UDP

#define CHECKSUM_CHECK_UDP   1

Definition at line 170 of file lwipopts.h.

◆ CHECKSUM_GEN_IP

#define CHECKSUM_GEN_IP   1

Definition at line 166 of file lwipopts.h.

◆ CHECKSUM_GEN_TCP

#define CHECKSUM_GEN_TCP   1

Definition at line 168 of file lwipopts.h.

◆ CHECKSUM_GEN_UDP

#define CHECKSUM_GEN_UDP   1

Definition at line 167 of file lwipopts.h.

◆ DEFAULT_ACCEPTMBOX_SIZE

#define DEFAULT_ACCEPTMBOX_SIZE   8

Definition at line 132 of file lwipopts.h.

◆ DEFAULT_RAW_RECVMBOX_SIZE

#define DEFAULT_RAW_RECVMBOX_SIZE   8

Definition at line 133 of file lwipopts.h.

◆ DEFAULT_TCP_RECVMBOX_SIZE

#define DEFAULT_TCP_RECVMBOX_SIZE   8

Definition at line 131 of file lwipopts.h.

◆ DEFAULT_THREAD_STACKSIZE

#define DEFAULT_THREAD_STACKSIZE   2048

Definition at line 129 of file lwipopts.h.

◆ DEFAULT_UDP_RECVMBOX_SIZE

#define DEFAULT_UDP_RECVMBOX_SIZE   8

Definition at line 130 of file lwipopts.h.

◆ DHCP_DOES_ARP_CHECK

#define DHCP_DOES_ARP_CHECK   0

Definition at line 158 of file lwipopts.h.

◆ DNS_MAX_NAME_LENGTH

#define DNS_MAX_NAME_LENGTH   256

Definition at line 93 of file lwipopts.h.

◆ DNS_MAX_SERVERS

#define DNS_MAX_SERVERS   2

Definition at line 94 of file lwipopts.h.

◆ DNS_TABLE_SIZE

#define DNS_TABLE_SIZE   4

Definition at line 92 of file lwipopts.h.

◆ ETH_PAD_SIZE

#define ETH_PAD_SIZE   0

Definition at line 52 of file lwipopts.h.

◆ ETHARP_TABLE_SIZE

#define ETHARP_TABLE_SIZE   127

Definition at line 161 of file lwipopts.h.

◆ LWIP_ALTCP

#define LWIP_ALTCP   0

Definition at line 144 of file lwipopts.h.

◆ LWIP_ALTCP_TLS

#define LWIP_ALTCP_TLS   0

Definition at line 145 of file lwipopts.h.

◆ LWIP_ALTCP_TLS_MBEDTLS

#define LWIP_ALTCP_TLS_MBEDTLS   0

Definition at line 146 of file lwipopts.h.

◆ LWIP_ARP

#define LWIP_ARP   1

Definition at line 152 of file lwipopts.h.

◆ LWIP_AUTOIP

#define LWIP_AUTOIP   0

Definition at line 96 of file lwipopts.h.

◆ LWIP_CHKSUM_ALGORITHM

#define LWIP_CHKSUM_ALGORITHM   3

Definition at line 172 of file lwipopts.h.

◆ LWIP_COMPAT_SOCKETS

#define LWIP_COMPAT_SOCKETS   0

Definition at line 116 of file lwipopts.h.

◆ LWIP_DEBUG

#define LWIP_DEBUG   1

Definition at line 185 of file lwipopts.h.

◆ LWIP_DHCP

#define LWIP_DHCP   1

Definition at line 95 of file lwipopts.h.

◆ LWIP_DHCP_DOES_ACD_CHECK

#define LWIP_DHCP_DOES_ACD_CHECK   0

Definition at line 159 of file lwipopts.h.

◆ LWIP_DNS

#define LWIP_DNS   1

Definition at line 91 of file lwipopts.h.

◆ LWIP_ETHERNET

#define LWIP_ETHERNET   1

Definition at line 153 of file lwipopts.h.

◆ LWIP_ICMP

#define LWIP_ICMP   1

Definition at line 90 of file lwipopts.h.

◆ LWIP_IPV4

#define LWIP_IPV4   1

Definition at line 58 of file lwipopts.h.

◆ LWIP_NETCONN

#define LWIP_NETCONN   1

Definition at line 114 of file lwipopts.h.

◆ LWIP_NETCONN_SEM_PER_THREAD

#define LWIP_NETCONN_SEM_PER_THREAD   0

Definition at line 121 of file lwipopts.h.

◆ LWIP_NETIF_EXT_STATUS_CALLBACK

#define LWIP_NETIF_EXT_STATUS_CALLBACK   1

Definition at line 157 of file lwipopts.h.

◆ LWIP_NETIF_HOSTNAME

#define LWIP_NETIF_HOSTNAME   1

Definition at line 154 of file lwipopts.h.

◆ LWIP_NETIF_LINK_CALLBACK

#define LWIP_NETIF_LINK_CALLBACK   1

Definition at line 156 of file lwipopts.h.

◆ LWIP_NETIF_STATUS_CALLBACK

#define LWIP_NETIF_STATUS_CALLBACK   1

Definition at line 155 of file lwipopts.h.

◆ LWIP_NETIF_TX_SINGLE_PBUF

#define LWIP_NETIF_TX_SINGLE_PBUF   1

Definition at line 160 of file lwipopts.h.

◆ LWIP_PERF

#define LWIP_PERF   0

Definition at line 179 of file lwipopts.h.

◆ LWIP_RAW

#define LWIP_RAW   1

Definition at line 113 of file lwipopts.h.

◆ LWIP_SNTP

#define LWIP_SNTP   1

Definition at line 97 of file lwipopts.h.

◆ LWIP_SO_RCVTIMEO

#define LWIP_SO_RCVTIMEO   1

Definition at line 122 of file lwipopts.h.

◆ LWIP_SOCKET

#define LWIP_SOCKET   1

Definition at line 115 of file lwipopts.h.

◆ LWIP_STATS

#define LWIP_STATS   1

Definition at line 177 of file lwipopts.h.

◆ LWIP_STATS_DISPLAY

#define LWIP_STATS_DISPLAY   1

Definition at line 178 of file lwipopts.h.

◆ LWIP_TCP

#define LWIP_TCP   1

Definition at line 57 of file lwipopts.h.

◆ LWIP_TCP_ABORT

#define LWIP_TCP_ABORT   1

Definition at line 78 of file lwipopts.h.

◆ LWIP_TCP_FASTOPEN

#define LWIP_TCP_FASTOPEN   1

Definition at line 79 of file lwipopts.h.

◆ LWIP_TCP_KEEPALIVE

#define LWIP_TCP_KEEPALIVE   1

Definition at line 72 of file lwipopts.h.

◆ LWIP_TCPIP_CORE_LOCKING

#define LWIP_TCPIP_CORE_LOCKING   1

Definition at line 123 of file lwipopts.h.

◆ LWIP_TCPIP_CORE_LOCKING_INPUT

#define LWIP_TCPIP_CORE_LOCKING_INPUT   1

Definition at line 124 of file lwipopts.h.

◆ LWIP_TIMERS

#define LWIP_TIMERS   1

Definition at line 20 of file lwipopts.h.

◆ LWIP_TIMEVAL_PRIVATE

#define LWIP_TIMEVAL_PRIVATE   0

Definition at line 134 of file lwipopts.h.

◆ LWIP_UDP

#define LWIP_UDP   1

Definition at line 84 of file lwipopts.h.

◆ LWIPOPTS_H

#define LWIPOPTS_H

Definition at line 14 of file lwipopts.h.

◆ MEM_ALIGNMENT

#define MEM_ALIGNMENT   4

Definition at line 29 of file lwipopts.h.

◆ MEM_LIBC_MALLOC

#define MEM_LIBC_MALLOC   0

Definition at line 27 of file lwipopts.h.

◆ MEM_SIZE

#define MEM_SIZE   (10 * 1024)

Definition at line 33 of file lwipopts.h.

◆ MEMP_MEM_MALLOC

#define MEMP_MEM_MALLOC   0

Definition at line 28 of file lwipopts.h.

◆ MEMP_NUM_ARP_QUEUE

#define MEMP_NUM_ARP_QUEUE   10

Definition at line 39 of file lwipopts.h.

◆ MEMP_NUM_NETBUF

#define MEMP_NUM_NETBUF   16

Definition at line 40 of file lwipopts.h.

◆ MEMP_NUM_NETCONN

#define MEMP_NUM_NETCONN   32

Definition at line 35 of file lwipopts.h.

◆ MEMP_NUM_SYS_TIMEOUT

#define MEMP_NUM_SYS_TIMEOUT   16

Definition at line 41 of file lwipopts.h.

◆ MEMP_NUM_TCP_PCB

#define MEMP_NUM_TCP_PCB   16

Definition at line 36 of file lwipopts.h.

◆ MEMP_NUM_TCP_PCB_LISTEN

#define MEMP_NUM_TCP_PCB_LISTEN   8

Definition at line 37 of file lwipopts.h.

◆ MEMP_NUM_TCP_SEG

#define MEMP_NUM_TCP_SEG   32

Definition at line 38 of file lwipopts.h.

◆ NO_SYS

#define NO_SYS   0

Definition at line 19 of file lwipopts.h.

◆ NUM_MEMP_PBUF

#define NUM_MEMP_PBUF   16

Definition at line 42 of file lwipopts.h.

◆ PBUF_POOL_BUFSIZE

#define PBUF_POOL_BUFSIZE   1460

Definition at line 50 of file lwipopts.h.

◆ PBUF_POOL_SIZE

#define PBUF_POOL_SIZE   24

Definition at line 49 of file lwipopts.h.

◆ SNTP_CHECK_RESPONSE

#define SNTP_CHECK_RESPONSE   1

Definition at line 99 of file lwipopts.h.

◆ SNTP_MAX_SERVERS

#define SNTP_MAX_SERVERS   1

Definition at line 104 of file lwipopts.h.

◆ SNTP_RETRY_TIMEOUT

#define SNTP_RETRY_TIMEOUT   5000

Definition at line 100 of file lwipopts.h.

◆ SNTP_SERVER_ADDRESS

#define SNTP_SERVER_ADDRESS   "pool.ntp.org"

Definition at line 101 of file lwipopts.h.

◆ SNTP_SERVER_DNS

#define SNTP_SERVER_DNS   1

Definition at line 103 of file lwipopts.h.

◆ SNTP_SERVER_PORT

#define SNTP_SERVER_PORT   123

Definition at line 102 of file lwipopts.h.

◆ SNTP_SET_SYSTEM_TIME [1/2]

#define SNTP_SET_SYSTEM_TIME   1

Definition at line 105 of file lwipopts.h.

◆ SNTP_SET_SYSTEM_TIME [2/2]

#define SNTP_SET_SYSTEM_TIME (   sec)    sntp_set_system_time(sec)

Definition at line 105 of file lwipopts.h.

◆ SNTP_SUPPORT

#define SNTP_SUPPORT   1

Definition at line 98 of file lwipopts.h.

◆ SNTP_UPDATE_DELAY

#define SNTP_UPDATE_DELAY   60*60*1000

Definition at line 106 of file lwipopts.h.

◆ SYS_LIGHTWEIGHT_PROT

#define SYS_LIGHTWEIGHT_PROT   1

Definition at line 21 of file lwipopts.h.

◆ TCP_KEEPCNT_DEFAULT

#define TCP_KEEPCNT_DEFAULT   3

Definition at line 75 of file lwipopts.h.

◆ TCP_KEEPIDLE_DEFAULT

#define TCP_KEEPIDLE_DEFAULT   10000

Definition at line 73 of file lwipopts.h.

◆ TCP_KEEPINTVL_DEFAULT

#define TCP_KEEPINTVL_DEFAULT   1000

Definition at line 74 of file lwipopts.h.

◆ TCP_LISTEN_BACKLOG

#define TCP_LISTEN_BACKLOG   1

Definition at line 67 of file lwipopts.h.

◆ TCP_MSL

#define TCP_MSL   1000

Definition at line 68 of file lwipopts.h.

◆ TCP_MSS

#define TCP_MSS   1460

Definition at line 61 of file lwipopts.h.

◆ TCP_QUEUE_OOSEQ

#define TCP_QUEUE_OOSEQ   0

Definition at line 60 of file lwipopts.h.

◆ TCP_SND_BUF

#define TCP_SND_BUF   (8 * TCP_MSS)

Definition at line 62 of file lwipopts.h.

◆ TCP_SND_QUEUELEN [1/2]

#define TCP_SND_QUEUELEN   ((4 * (TCP_SND_BUF) + (TCP_MSS - 1)) / TCP_MSS)

Definition at line 65 of file lwipopts.h.

◆ TCP_SND_QUEUELEN [2/2]

#define TCP_SND_QUEUELEN   32

Definition at line 65 of file lwipopts.h.

◆ TCP_SYNMAXRTX

#define TCP_SYNMAXRTX   3

Definition at line 69 of file lwipopts.h.

◆ TCP_TTL

#define TCP_TTL   255

Definition at line 59 of file lwipopts.h.

◆ TCP_WND

#define TCP_WND   (8 * TCP_MSS)

Definition at line 64 of file lwipopts.h.

◆ TCPIP_MBOX_SIZE

#define TCPIP_MBOX_SIZE   8

Definition at line 128 of file lwipopts.h.

◆ TCPIP_THREAD_NAME

#define TCPIP_THREAD_NAME   "tcpip_thread"

Definition at line 125 of file lwipopts.h.

◆ TCPIP_THREAD_PRIO

#define TCPIP_THREAD_PRIO   8

Definition at line 127 of file lwipopts.h.

◆ TCPIP_THREAD_STACKSIZE

#define TCPIP_THREAD_STACKSIZE   2048

Definition at line 126 of file lwipopts.h.

◆ UDP_TTL

#define UDP_TTL   255

Definition at line 85 of file lwipopts.h.

Function Documentation

◆ sntp_set_system_time()

void sntp_set_system_time ( uint32_t  sec)
extern

Definition at line 33 of file TimeManager.cpp.

34{
35 //TRACE("[SNTP] callback made\n");
36 AppContext::get<TimeManager>()->setTimeFromEpoch(sec);
37}
static constexpr std::uintptr_t getTypeKey()
Definition AppContext.h:91

References AppContext::getTypeKey().

+ Here is the call graph for this function: