A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://docs.espressif.com/projects/esp-at/en/latest/esp32/AT_Command_Set/TCP-IP_AT_Commands.html below:

Website Navigation


TCP/IP AT Commands - ESP32

TCP/IP AT Commands

[中文]

Introduction

Important

The default AT firmware supports all the AT commands mentioned on this page. If you need to modify the commands supported by ESP32 by default, please compile the ESP-AT project by following the steps in Compile ESP-AT Project Locally documentation. In the project configuration during the fifth step, make the following selections (Each item below is independent. Choose it according to your needs):

AT+CIPV6: Enable/disable the network of Internet Protocol Version 6 (IPv6) Query Command

Function:

Query whether IPv6 is enabled.

Command:

Response:

Set Command

Function:

Enable/Disable IPv6 network.

Command:

Response:

Parameters Notes AT+CIPSTATE: Obtain the TCP/UDP/SSL Connection Information Query Command

Command:

Response:

When there is a connection, AT returns:

+CIPSTATE:<link ID>,<"type">,<"remote IP">,<remote port>,<local port>,<tetype>

OK

When there is no connection, AT returns:

Parameters AT+CIPDOMAIN: Resolve a Domain Name Set Command

Command:

AT+CIPDOMAIN=<"domain name">[,<ip network>][,<timeout>]

Response:

+CIPDOMAIN:<"IP address">

OK
Parameter Example
AT+CWMODE=1                       // set the station mode
AT+CWJAP="SSID","password"        // access to the internet
AT+CIPDOMAIN="iot.espressif.cn"   // Domain Name Resolution function

// Domain Name Resolution Function for IPv4 address only
AT+CIPDOMAIN="iot.espressif.cn",2

// Domain Name Resolution Function for IPv6 address only
AT+CIPDOMAIN="ipv6.test-ipv6.com",3

// Domain Name Resolution Function for compatible IP address
AT+CIPDOMAIN="ds.test-ipv6.com",1
AT+CIPSTART: Establish TCP Connection, UDP Transmission, or SSL Connection Establish TCP Connection Set Command

Command:

// Single connection (AT+CIPMUX=0):
AT+CIPSTART=<"type">,<"remote host">,<remote port>[,<keep_alive>][,<"local IP">][,<timeout>]

// Multiple Connections (AT+CIPMUX=1):
AT+CIPSTART=<link ID>,<"type">,<"remote host">,<remote port>[,<keep_alive>][,<"local IP">][,<timeout>]

Response:

For single connection, it returns:

For multiple connections, it returns:

Parameters Notes Example
AT+CIPSTART="TCP","iot.espressif.cn",8000
AT+CIPSTART="TCP","192.168.101.110",1000
AT+CIPSTART="TCP","192.168.101.110",2500,60
AT+CIPSTART="TCP","192.168.101.110",1000,,"192.168.101.100"

// Connect to GitHub's TCP server with a 5-second timeout
AT+CIPSTART="TCP","www.github.com",80,,,5000

AT+CIPSTART="TCPv6","test-ipv6.com",80
AT+CIPSTART="TCPv6","fe80::860d:8eff:fe9d:cd90",1000,,"fe80::411c:1fdb:22a6:4d24"

// esp-at has obtained an IPv6 global address by AT+CWJAP before
AT+CIPSTART="TCPv6","2404:6800:4005:80b::2004",80,,"240e:3a1:2070:11c0:32ae:a4ff:fe80:65ac"
Establish UDP Transmission Set Command

Command:

// Single connection (AT+CIPMUX=0):
AT+CIPSTART=<"type">,<"remote host">,<remote port>[,<local port>,<mode>,<"local IP">][,<timeout>]

// Multiple connections (AT+CIPMUX=1):
AT+CIPSTART=<link ID>,<"type">,<"remote host">,<remote port>[,<local port>,<mode>,<"local IP">][,<timeout>]

Response:

For single connection, it returns:

For multiple connections, it returns:

Parameters Notes Example
// UDP unicast
AT+CIPSTART="UDP","192.168.101.110",1000,1002,2
AT+CIPSTART="UDP","192.168.101.110",1000,,,"192.168.101.100"

// Establish UDP transmission with pool.ntp.org, set 5-second timeout
AT+CIPSTART="UDP","pool.ntp.org",123,,,,5000

// UDP unicast based on IPv6 network
AT+CIPSTART="UDPv6","fe80::32ae:a4ff:fe80:65ac",1000,,,"fe80::5512:f37f:bb03:5d9b"

// UDP multicast based on IPv6 network
AT+CIPSTART="UDPv6","FF02::FC",1000,1002,0
Establish SSL Connection Set Command

Command:

// Single connection (AT+CIPMUX=0):
AT+CIPSTART=<"type">,<"remote host">,<remote port>[,<keep_alive>,<"local IP">][,<timeout>]

// Multiple connections (AT+CIPMUX=1):
AT+CIPSTART=<link ID>,<"type">,<"remote host">,<remote port>[,<keep_alive>,<"local IP">][,<timeout>]

Response:

For single connection, it returns:

For multiple connections, it returns:

Parameters Notes Example
AT+CIPSTART="SSL","iot.espressif.cn",8443
AT+CIPSTART="SSL","192.168.101.110",1000,,"192.168.101.100"

// Connect to Microsoft Bing's SSL server with a 5-second timeout
AT+CIPSTART="SSL","www.bing.com",443,,,5000

// esp-at has obtained an IPv6 global address by AT+CWJAP before
AT+CIPSTART="SSLv6","240e:3a1:2070:11c0:6972:6f96:9147:d66d",1000,,"240e:3a1:2070:11c0:55ce:4e19:9649:b75"
AT+CIPSTARTEX: Establish TCP connection, UDP transmission, or SSL connection with an Automatically Assigned ID

This command is similar to AT+CIPSTART except that you do not need to assign an ID by yourself in multiple connections mode (AT+CIPMUX=1). The system will assign an ID to the new connection automatically.

[Data Mode Only] +++: Exit from Data Mode Special Execute Command

Function:

Exit from Data Mode and enter the Command Mode.

Command:

// Only for data mode
+++
Notes AT+CIPSEND: Send Data in the Normal Transmission Mode or Wi-Fi Passthrough Mode Set Command

Function:

Set the data length to be send in the Normal Transmission Mode. If the length of data you need to send exceeds 8192 bytes, please use the AT+CIPSENDL command.

Command:

// Single connection: (AT+CIPMUX=0)
AT+CIPSEND=<length>

// Multiple connections: (AT+CIPMUX=1)
AT+CIPSEND=<link ID>,<length>

// Remote host and port can be set for UDP transmission:
AT+CIPSEND=[<link ID>,]<length>[,<"remote host">,<remote port>]

Response:

This response indicates that AT is ready for receiving serial data. You should enter the data, and when the data length reaches the <length> value, the transmission of data starts.

If the connection cannot be established or is disrupted during data transmission, the system returns:

If the data has been successfully sent to the protocol stack (It does not mean that the data has been sent to the opposite end), the system returns:

Execute Command

Function:

Enter the Wi-Fi Passthrough Mode.

Command:

Response:

or

Enter the Wi-Fi Passthrough Mode. The ESP32 can receive 8192 bytes and send 2920 bytes at most each time. If the data received by ESP32 reaches or exceeds 2920 bytes, the data will be immediately sent in chunks of 2920 bytes. Otherwise, it will wait for 20 milliseconds before being sent (You can configure this interval using AT+TRANSINTVL command). When a single packet containing +++ is received, the ESP32 will exit the data sending mode under the Wi-Fi Passthrough Mode. Please wait for at least one second before sending the next AT command.

This command can only be used for single connection in the Wi-Fi Passthrough Mode. For UDP Wi-Fi passthrough, the <mode> parameter has to be 0 when using AT+CIPSTART.

Parameters Notes AT+CIPSENDL: Send Long Data in Parallel in the Normal Transmission Mode. Set Command

Function:

In the Normal Transmission Mode, set the data length to be sent, and then send data to remote host in parallel (the AT command port receives data in parallel with the AT sending data to the remote host). You can use the AT+CIPSENDLCFG command to configure this command. If the length of data you need to send is less than 8192 bytes, you also can use the AT+CIPSEND command.

Command:

// Single connection: (AT+CIPMUX=0)
AT+CIPSENDL=<length>

// Multiple connections: (AT+CIPMUX=1)
AT+CIPSENDL=<link ID>,<length>

// Remote host and port can be set for UDP transmission:
AT+CIPSENDL=[<link ID>,]<length>[,<"remote host">,<remote port>]

Response:

This response indicates that AT enters the Data Mode and AT command port is ready to receive data. You can enter the data now. Once the port receives data, it will be pushed to underlying protocol stack and the transmission starts.

If the transmission starts, the system reports message according to AT+CIPSENDLCFG configuration:

+CIPSENDL:<had sent len>,<port recv len>

If the transmission is cancelled by +++ command, the system returns:

If not all the data has been sent out, the system finally returns:

If the data has been successfully sent to the protocol stack (It does not mean that the data has been sent to the opposite end), the system finally returns:

When the connection is disconnected, you can send +++ command to cancel the transmission, then the ESP32 will exit from the Data Mode, otherwise, the Data Mode will not end until the AT command port receives all the data of the specified <length>.

Parameters Notes AT+CIPSENDLCFG: Set the Configuration for the Command AT+CIPSENDL Query Command

Function:

Query the configuration of AT+CIPSENDL.

Command:

Response:

+CIPSENDLCFG:<report size>,<transmit size>

OK
Set Command

Function:

Set the configuration of AT+CIPSENDL.

Command:

AT+CIPSENDLCFG=<report size>[,<transmit size>]

Response:

Parameters Note AT+CIPSENDEX: Send Data in the Normal Transmission Mode in Expanded Ways Set Command

Function:

Set the data length to be send in Normal Transmission Mode, or use \0 (0x5c, 0x30 ASCII) to trigger data transmission.

Command:

// Single connection: (AT+CIPMUX=0)
AT+CIPSENDEX=<length>

// Multiple connections: (AT+CIPMUX=1)
AT+CIPSENDEX=<link ID>,<length>

// Remote host and port can be set for UDP transmission:
AT+CIPSENDEX=[<link ID>,]<length>[,<"remote host">,<remote port>]

Response:

This response indicates that AT is ready for receiving data. You should enter the data of designated length. When the data length reaches the <length> value, or when the string \0 appears in the data, the transmission starts.

If the connection cannot be established or gets disconnected during transmission, the system returns:

If the data has been successfully sent to the protocol stack (It does not mean that the data has been sent to the opposite end), the system returns:

Parameters Notes AT+CIPCLOSE: Close TCP/UDP/SSL Connection Set Command

Function:

Close TCP/UDP/SSL connection in the multiple connections mode.

Command:

Response:

Execute Command

Function:

Close TCP/UDP/SSL connection in the single connection mode.

Response:

Parameter AT+CIFSR: Obtain the Local IP Address and MAC Address Execute Command

Command:

Response:

+CIFSR:APIP,<"APIP">
+CIFSR:APIP6LL,<"APIP6LL">
+CIFSR:APIP6GL,<"APIP6GL">
+CIFSR:APMAC,<"APMAC">
+CIFSR:STAIP,<"STAIP">
+CIFSR:STAIP6LL,<"STAIP6LL">
+CIFSR:STAIP6GL,<"STAIP6GL">
+CIFSR:STAMAC,<"STAMAC">
+CIFSR:ETHIP,<"ETHIP">
+CIFSR:ETHIP6LL,<"ETHIP6LL">
+CIFSR:ETHIP6GL,<"ETHIP6GL">
+CIFSR:ETHMAC,<"ETHMAC">

OK
Parameters Note AT+CIPMUX: Enable/disable Multiple Connections Query Command

Function:

Query the connection type.

Command:

Response:

Set Command

Function:

Set the connection type.

Command:

Response:

Parameter Notes Example AT+CIPSERVER: Delete/create a TCP/SSL Server Query Command

Function:

Query the TCP/SSL server status.

Command:

Response:

+CIPSERVER:<mode>[,<port>,<"type">,<CA enable>,<netif>]

OK
Set Command

Command:

AT+CIPSERVER=<mode>[,<param2>][,<"type">][,<CA enable>][,<netif>]

Response:

Parameters
Notes Example
// To create a TCP server
AT+CIPMUX=1
AT+CIPSERVER=1,80

// To create an SSL server
AT+CIPMUX=1
AT+CIPSERVER=1,443,"SSL",1

// To create an SSL server based on IPv6 network
AT+CIPMUX=1
AT+CIPSERVER=1,443,"SSLv6",0

// To delete an server and close all clients
AT+CIPSERVER=0,1
AT+CIPSERVERMAXCONN: Query/Set the Maximum Connections Allowed by a Server Query Command

Function:

Obtain the maximum number of clients allowed to connect to the TCP/SSL server.

Command:

Response:

+CIPSERVERMAXCONN:<num>
OK
Set Command

Function:

Set the maximum number of clients allowed to connect to the TCP/SSL server.

Command:

AT+CIPSERVERMAXCONN=<num>

Response:

Parameter Note Example
AT+CIPMUX=1
AT+CIPSERVERMAXCONN=2
AT+CIPSERVER=1,80
AT+CIPMODE: Query/Set the Transmission Mode Query Command

Function:

Query the transmission mode.

Command:

Response:

Set Command

Function:

Set the transmission mode.

Command:

Response:

Parameter Notes Example AT+CIPSTO: Query/Set the local TCP/SSL Server Timeout Query Command

Function:

Query the local TCP/SSL server timeout.

Command:

Response:

Set Command

Function:

Set the local TCP/SSL server timeout.

Command:

Response:

Parameter Notes Example
AT+CIPMUX=1
AT+CIPSERVER=1,1001
AT+CIPSTO=10
AT+CIPSNTPCFG: Query/Set the Time Zone and the SNTP Server Query Command

Command:

Response:

+CIPSNTPCFG:<enable>,<timezone>[,<"SNTP server1">][,<"SNTP server2">][,<"SNTP server3">]
OK
Set Command

Command:

AT+CIPSNTPCFG=<enable>[,<timezone>][,<"SNTP server1">][,<"SNTP server2">][,<"SNTP server3">]

Response:

Parameters Note Example
// Enable SNTP server, set timezone to China (UTC+08:00)
AT+CIPSNTPCFG=1,8,"cn.ntp.org.cn","ntp.sjtu.edu.cn"
or
AT+CIPSNTPCFG=1,800,"cn.ntp.org.cn","ntp.sjtu.edu.cn"

// Enable SNTP server, set timezone to New York of the United States (UTC–05:00)
AT+CIPSNTPCFG=1,-5,"0.pool.ntp.org","time.google.com"
or
AT+CIPSNTPCFG=1,-500,"0.pool.ntp.org","time.google.com"

// Enable SNTP server, set timezone to New Zealand (Chatham Islands, UTC+12:45)
AT+CIPSNTPCFG=1,1245,"0.pool.ntp.org","time.google.com"
AT+CIPSNTPTIME: Query the SNTP Time Query Command

Command:

Response:

+CIPSNTPTIME:<asctime style time>
OK
Note Example
AT+CWMODE=1
AT+CWJAP="1234567890","1234567890"
AT+CIPSNTPCFG=1,8,"cn.ntp.org.cn","ntp.sjtu.edu.cn"
AT+CIPSNTPTIME?
+CIPSNTPTIME:Tue Oct 19 17:47:56 2021
OK

or

AT+CWMODE=1
AT+CWJAP="1234567890","1234567890"
AT+CIPSNTPCFG=1,530
AT+CIPSNTPTIME?
+CIPSNTPTIME:Tue Oct 19 15:17:56 2021
OK
AT+CIPSNTPINTV: Query/Set the SNTP time synchronization interval Query Command

Command:

Response:

+CIPSNTPINTV:<interval second>

OK
Set Command

Command:

AT+CIPSNTPINTV=<interval second>

Response:

Parameters Notes Example
AT+CIPSNTPCFG=1,8,"cn.ntp.org.cn","ntp.sjtu.edu.cn"

OK

// synchronize SNTP time every hour
AT+CIPSNTPINTV=3600

OK
AT+CIPFWVER: Query the Existing AT Firmware Version on the Server Query Command

Function:

Query the existing ESP32 AT firmware version on the server.

Command:

Response:

Parameters Notes AT+CIUPDATE: Upgrade Firmware Through Wi-Fi

ESP-AT upgrades firmware at runtime by downloading the new firmware from a specific server through Wi-Fi and then flash it into some partitions.

Query Command

Function:

Query ESP32 upgrade status.

Command:

Response:

Execute Command

Function:

Upgrade OTA the latest version of firmware via TCP from the server in blocking mode.

Command:

Response:

Please refer to the response in the set command.

Set Command

Function:

Upgrade the specified version of firmware from the server.

Command:

AT+CIUPDATE=<ota mode>[,<"version">][,<"firmware name">][,<nonblocking>]

Response:

If OTA succeeds in blocking mode, the system returns:

+CIPUPDATE:1
+CIPUPDATE:2
+CIPUPDATE:3
+CIPUPDATE:4

OK

If OTA succeeds in non-blocking mode, the system returns:

OK
+CIPUPDATE:1
+CIPUPDATE:2
+CIPUPDATE:3
+CIPUPDATE:4

If OTA fails in blocking mode, the system returns:

If OTA fails in non-blocking mode, the system returns:

OK
+CIPUPDATE:<state>
+CIPUPDATE:-1
Parameters Notes Example
AT+CWMODE=1
AT+CWJAP="1234567890","1234567890"
AT+CIUPDATE
AT+CIUPDATE=1
AT+CIUPDATE=1,"v1.2.0.0"
AT+CIUPDATE=1,"v2.2.0.0","mqtt_ca"
AT+CIUPDATE=1,"v2.2.0.0","ota",1
AT+CIUPDATE=1,,,1
AT+CIUPDATE=1,,"ota",1
AT+CIUPDATE=1,"v2.2.0.0",,1
AT+CIPDINFO: Set “+IPD” Message Mode Query Command

Command:

Response:

or

Set Command

Command:

Response:

Parameters Example AT+CIPSSLCCONF: Query/Set SSL Clients Query Command

Function:

Query the configuration of each connection where the ESP32 runs as an SSL client.

Command:

Response:

+CIPSSLCCONF:<link ID>,<auth_mode>,<pki_number>,<ca_number>
OK
Set Command

Command:

// Single connection: (AT+CIPMUX=0)
AT+CIPSSLCCONF=<auth_mode>[,<pki_number>][,<ca_number>]

// Multiple connections: (AT+CIPMUX=1)
AT+CIPSSLCCONF=<link ID>,<auth_mode>[,<pki_number>][,<ca_number>]

Response:

Parameters Notes AT+CIPSSLCCIPHER: Query/Set the Cipher Suite of the SSL Client Query Command

Function:

Query the cipher suites supported by ESP32 as an SSL client.

Command:

Response:

+CIPSSLCCIPHER:<idx>,<cipher_suite>

OK
Set Command

Command:

// Single connection: (AT+CIPMUX=0)
AT+CIPSSLCCIPHER=<counts>[,<cipher_suite>][...][,<cipher_suite>]

// Multiple connections: (AT+CIPMUX=1)
AT+CIPSSLCCIPHER=<link ID>,<counts>[,<cipher_suite>][...][,<cipher_suite>]

Response:

Parameters Notes Example
// Single connection: (AT+CIPMUX=0), cipher suites are TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 and TLS_ECDHE_ECDSA_WITH_AES_256_CCM
AT+CIPSSLCCIPHER=2,0xC023,0xC0AD

// Multiple connections: (AT+CIPMUX=1), cipher suites are TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 and TLS_ECDHE_ECDSA_WITH_AES_256_CCM
AT+CIPSSLCCIPHER=0,2,0xC023,0xC0AD
AT+CIPSSLCCN: Query/Set the Common Name of the SSL Client Query Command

Function:

Query the common name of the SSL client of each connection.

Command:

Response:

+CIPSSLCCN:<link ID>,<"common name">
OK
Set Command

Command:

// Single connection: (AT+CIPMUX=0)
AT+CIPSSLCCN=<"common name">

// Multiple connections: (AT+CIPMUX=1)
AT+CIPSSLCCN=<link ID>,<"common name">

Response:

Parameters Note AT+CIPSSLCSNI: Query/Set SSL Client Server Name Indication (SNI) Query Command

Function:

Query the SNI configuration of each connection.

Command:

Response:

+CIPSSLCSNI:<link ID>,<"sni">
OK
Set Command

Command:

Single connection: (AT+CIPMUX=0)
AT+CIPSSLCSNI=<"sni">

Multiple connections: (AT+CIPMUX=1)
AT+CIPSSLCSNI=<link ID>,<"sni">

Response:

Parameters Notes AT+CIPSSLCALPN: Query/Set SSL Client Application Layer Protocol Negotiation (ALPN) Query Command

Function:

Query the ALPN configuration of each connection where the ESP32 runs as an SSL client.

Command:

Response:

+CIPSSLCALPN:<link ID>[,<"alpn">][,<"alpn">][,<"alpn">]

OK
Set Command

Command:

// Single connection: (AT+CIPMUX=0)
AT+CIPSSLCALPN=<counts>[,<"alpn">][,<"alpn">][,<"alpn">]

// Multiple connections: (AT+CIPMUX=1)
AT+CIPSSLCALPN=<link ID>,<counts>[,<"alpn">][,<"alpn">][,<"alpn">]

Response:

Parameters
Note AT+CIPRECONNINTV: Query/Set the TCP/UDP/SSL reconnection Interval for the Wi-Fi Passthrough Mode Query Command

Function:

Query the automatic connect interval for the Wi-Fi Passthrough Mode.

Command:

Response:

+CIPRECONNINTV:<interval>
OK
Set Command

Function:

Set the automatic reconnecting interval when TCP/UDP/SSL transmission breaks in the Wi-Fi Passthrough Mode.

Command:

AT+CIPRECONNINTV=<interval>

Response:

Parameter Note Example AT+CIPRECVTYPE: Query/Set Socket Receiving Mode Query Command

Function:

Query the socket receiving mode.

Command:

Response:

+CIPRECVTYPE:<link ID>,<mode>

OK
Set Command

Command:

// Single connection: (AT+CIPMUX=0)
AT+CIPRECVTYPE=<mode>

// Multiple connections: (AT+CIPMUX=1)
AT+CIPRECVTYPE=<link ID>,<mode>

Response:

Parameter Notes Example
// Set passive mode in single connection mode
AT+CIPRECVTYPE=1

// Set all connections to passive mode in multiple connections mode
AT+CIPRECVTYPE=5,1
AT+CIPRECVDATA: Obtain Socket Data in Passive Receiving Mode Set Command

Command:

// Single connection: (AT+CIPMUX=0)
AT+CIPRECVDATA=<len>

// Multiple connections: (AT+CIPMUX=1)
AT+CIPRECVDATA=<link_id>,<len>

Response:

+CIPRECVDATA:<actual_len>,<data>
OK

or

+CIPRECVDATA:<actual_len>,<"remote IP">,<remote port>,<data>
OK
Parameters Note Example
AT+CIPRECVTYPE=1

// For example, if host MCU gets a message of receiving 100-byte data in connection with No.0,
// the message will be "+IPD,0,100".
// Then you can read those 100-byte data by using the command below.
AT+CIPRECVDATA=0,100
AT+CIPRECVLEN: Obtain Socket Data Length in Passive Receiving Mode Query Command

Function:

Query the length of the entire data buffered for the connection.

Command:

Response:

+CIPRECVLEN:<data length of link>[...][,<data length of link>]

OK
Parameters Note Example
AT+CIPRECVLEN?
+CIPRECVLEN:100,,,,,
OK
AT+PING: Ping the Remote Host Set Command

Function:

Ping the remote host.

Command:

Response:

or

+PING:TIMEOUT   // esp-at returns this response only when the domain name resolution failure or ping timeout

ERROR
Parameters Notes
Example
AT+PING="192.168.1.1"
AT+PING="www.baidu.com"

// China Future Internet Engineering Center
AT+PING="240c::6666"
AT+CIPDNS: Query/Set DNS Server Information Query Command

Function:

Query the current DNS server information.

Command:

Response:

+CIPDNS:<enable>[,<"DNS IP1">][,<"DNS IP2">][,<"DNS IP3">]
OK
Set Command

Function:

Set DNS server information.

Command:

AT+CIPDNS=<enable>[,<"DNS IP1">][,<"DNS IP2">][,<"DNS IP3">]

Response:

or

Parameters Notes Example
AT+CIPDNS=0
AT+CIPDNS=1,"208.67.222.222","114.114.114.114","8.8.8.8"

// first DNS Server based on IPv6: China Future Internet Engineering Center
// second DNS Server based on IPv6: google-public-dns-a.google.com
// third DNS Server based on IPv6: main DNS Server based on IPv6 in JiangSu Province, China
AT+CIPDNS=1,"240c::6666","2001:4860:4860::8888","240e:5a::6666"
AT+MDNS: Configure the mDNS Function Set Command

Command:

AT+MDNS=<enable>[,<"hostname">,<"service_type">,<port>][,<"instance">][,<"proto">][,<txt_number>][,<"key">,<"value">][...]

Response:

Parameters Example
// Enable mDNS function. Set the hostname to "espressif", service type to "_iot", and port to 8080.
AT+MDNS=1,"espressif","_iot",8080

// Disable mDNS function
AT+MDNS=0

Detailed examples can be found in: mDNS Example.

AT+CIPTCPOPT: Query/Set the Socket Options Query Command

Function:

Query current socket options.

Command:

Response:

+CIPTCPOPT:<link_id>,<so_linger>,<tcp_nodelay>,<so_sndtimeo>,<keep_alive>
OK
Set Command

Command:

// Single TCP connection (AT+CIPMUX=0):
AT+CIPTCPOPT=[<so_linger>],[<tcp_nodelay>],[<so_sndtimeo>][,<keep_alive>]

// Multiple TCP Connections (AT+CIPMUX=1):
AT+CIPTCPOPT=<link ID>,[<so_linger>],[<tcp_nodelay>],[<so_sndtimeo>][,<keep_alive>]

Response:

or

Parameters Notes

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4