esp-idf/examples/protocols/asio/tcp_echo_server
David Cermak 8d90156c07 asio: fix asio test code to start the test after ip address received from common example code
Previously set to wait until IP address got from tcpip_adapter, but since common example connect code blocks until both IP4 and IPv6 address received it could happen that test code might have started connection to the ASIO counter-part while ESP32 still waiting for IPv6 address
2019-11-14 12:12:15 +08:00
..
main examples: use new component registration api 2019-06-21 19:53:29 +08:00
asio_tcp_server_test.py asio: fix asio test code to start the test after ip address received from common example code 2019-11-14 12:12:15 +08:00
CMakeLists.txt examples/protocols/asio: use common network component 2019-04-15 03:32:05 +00:00
Makefile examples/protocols/asio: use common network component 2019-04-15 03:32:05 +00:00
README.md build system: Use CMake-based build system as default when describing commands 2019-07-08 17:31:27 +10:00
sdkconfig.defaults Rename Kconfig options (components/esp32) 2019-05-21 09:09:01 +02:00

Asio TCP echo server example

Simple Asio TCP echo server using WiFi STA or Ethernet.

Example workflow

  • Wi-Fi or Ethernet connection is established, and IP address is obtained.
  • Asio TCP server is started on port number defined through the project configuration.
  • Server receives and echoes back messages transmitted from client.

Running the example

  • Open the project configuration menu (idf.py menuconfig) to configure Wi-Fi or Ethernet. See "Establishing Wi-Fi or Ethernet Connection" section in examples/protocols/README.md for more details.
  • Set server port number in menuconfig, "Example configuration".
  • Run idf.py -p PORT flash monitor to build and upload the example to your board and connect to it's serial terminal.
  • Wait for the board to connect to WiFi or Ethernet (note the IP address).
  • You can now send a TCP message and check it is repeated, for example using netcat nc IP PORT.

See the README.md file in the upper level 'examples' directory for more information about examples.