Download FreeRTOS

Quality RTOS & Embedded Software

FreeRTOS website now available in Simplified Chinese
New FreeRTOS Long Term Support version now available.
FreeRTOS Extended Maintenance Program (EMP) registration now open.
FreeRTOS-Plus-TCP v3.0.0 released:
Featured FreeRTOS IoT Integrations:


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 IP 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 is 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.

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