Download FreeRTOS

Quality RTOS & Embedded Software

Simplifying Authenticated Cloud Connectivity for Any Device.
Designing an energy efficient and cloud-connected IoT solution with CoAP.
Introducing FreeRTOS Kernel version 11.0.0:
FreeRTOS Roadmap and Code Contribution process.
OPC-UA over TSN with FreeRTOS.


DHCP stands for Dynamic Host Control Protocol.

Static IP addresses are useful during application development, but they are impractical for product deployment because:

  • They need to be hard coded either in the executable binary or external flash memory.
  • IP addresses cannot be pre-assigned to products without prior knowledge of the network environment in which the products will be deployed.
  • There is no prior knowledge of how many nodes will exist on the network, or indeed how many of the possible total number of nodes will be active at any one time.

DHCP provides an alternative to static IPv4 address assignment. DHCP servers exist on local networks to dynamically allocate IP addresses to nodes on the same network. When a network enabled product boots up it contacts the DHCP server to request its IP address, removing the need for each node to be statically configured.

If ipconfigUSE_DHCP and ipconfigUSE_IPv4 are set to 1 in FreeRTOSIPConfig.h then FreeRTOS-Plus-TCP will attempt to obtain its IP address from a DHCP server, and only revert to using a static IP address (AutoIP is also on the roadmap) if a DHCP server cannot be contacted.

The device running FreeRTOS-Plus-TCP can register its hostname with the DHCP server. See the ipconfigDHCP_REGISTER_HOSTNAME configuration constant for more information.

Expert users can influence the DHCP process using an application DHCP hook (or 'callback') function.

Also, see DHCPv6 for dynamic assignment of an IPv6 address.

Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.