# Role of FreeRTOSIPConfigDefault.h

**URL:** <https://forums.freertos.org/t/role-of-freertosipconfigdefault-h/10577>\
**Category:** Libraries\
**Created:** [August 31, 2020, 11:22am UTC](https://forums.freertos.org/t/role-of-freertosipconfigdefault-h/10577 "2020-08-31T11:22:57Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![fgu](https://avatars.discourse-cdn.com/v4/letter/f/aeb1de/32.png) [@fgu](https://forums.freertos.org/u/fgu)\
**Post date:** [August 31, 2020, 11:22am UTC](https://forums.freertos.org/t/role-of-freertosipconfigdefault-h/10577/1 "2020-08-31T11:22:57Z")

</div>

Hi.

I am currently trying for the first time to create a project using FreeRTOS+TCP.  
I followed the tuto page : [Including in a Project](https://www.freertos.org/FreeRTOS-Plus/FreeRTOS_Plus_TCP/TCP_Networking_Tutorial_Adding_Source_Files.html)

But when compiling, i get an error in FreeRTOSIPConfigDefault.h : “The ipconfigEVENT\_QUEUE\_LENGTH parameter must be at least ipconfigNUM\_NETWORK\_BUFFER\_DESCRIPTORS + 5”.

I also have an error in FreeRTOS\_Sockets.h because i did not include FreeRTOSIPConfig.h : #error FreeRTOSIPConfig.h has not been included yet

I have several questions :

1. If FreeRTOSIPConfigDefault.h checks user’s config, why this header does not contain FreeRTOSIPConfig.h ?
2. Where should I include FreeRTOSIPConfig.h ?

I know these questions seem a bit dumb. Sorry.

Thank you.

---

<div class="post-metadata">

**Author:** ![aggarg](https://d3iykfbgfh8zhg.cloudfront.net/user_avatar/forums.freertos.org/aggarg/32/4245_2.png) [@aggarg](https://forums.freertos.org/u/aggarg)\
**Post date:** [August 31, 2020, 4:37pm UTC](https://forums.freertos.org/t/role-of-freertosipconfigdefault-h/10577/2 "2020-08-31T16:37:08Z")

</div>

You can look here for include order: [https://github.com/aws/amazon-freertos/blob/master/libraries/abstractions/secure\_sockets/freertos\_plus\_tcp/iot\_secure\_sockets.c#L32](https://github.com/aws/amazon-freertos/blob/master/libraries/abstractions/secure_sockets/freertos_plus_tcp/iot_secure_sockets.c#L32)

Here is a sample `FreeRTOSIPConfig.h`: [https://github.com/aws/amazon-freertos/blob/master/vendors/microchip/boards/curiosity\_pic32mzef/aws\_demos/config\_files/FreeRTOSIPConfig.h](https://github.com/aws/amazon-freertos/blob/master/vendors/microchip/boards/curiosity_pic32mzef/aws_demos/config_files/FreeRTOSIPConfig.h)

Thanks.

---

<div class="post-metadata">

**Author:** ![rtel](https://d3iykfbgfh8zhg.cloudfront.net/user_avatar/forums.freertos.org/rtel/32/31_2.png) [@rtel](https://forums.freertos.org/u/rtel)\
**Post date:** [September 1, 2020, 3:40am UTC](https://forums.freertos.org/t/role-of-freertosipconfigdefault-h/10577/3 "2020-09-01T03:40:01Z")

</div>

> [@aggarg](#):
>
> You can look here for include order: [https://github.com/aws/amazon-freertos/blob/master/libraries/abstractions/secure\_sockets/freertos\_plus\_tcp/iot\_secure\_sockets.c#L32](https://github.com/aws/amazon-freertos/blob/master/libraries/abstractions/secure_sockets/freertos_plus_tcp/iot_secure_sockets.c#L32)

[thought I had posted this earlier today, but seems I didn’t click the “reply” button]

I’m not sure that is actually correct. I don’t think you should include FreeRTOSIPConfig.h directly, but FreeRTOS\_IP.h. See here for an example [https://github.com/FreeRTOS/FreeRTOS/blob/master/FreeRTOS-Plus/Demo/FreeRTOS\_Plus\_TCP\_Minimal\_Windows\_Simulator/main.c#L44](https://github.com/FreeRTOS/FreeRTOS/blob/master/FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_Minimal_Windows_Simulator/main.c#L44)

---

<div class="post-metadata">

**Author:** ![fgu](https://avatars.discourse-cdn.com/v4/letter/f/aeb1de/32.png) [@fgu](https://forums.freertos.org/u/fgu)\
**Post date:** [September 1, 2020, 5:51pm UTC](https://forums.freertos.org/t/role-of-freertosipconfigdefault-h/10577/4 "2020-09-01T17:51:05Z")

</div>

Hi and thank you.

I don’t have any include error anymore.
