SRAM memory

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hello,

After building my project, I get the table below.

I would like to reduce the space used in sram on the red lines (an other if it possible) but I do not know what they correspond and if it is possible to do so.

especially with the Packet Buffers  / Networking / bluetooth_low_energy 

Can you help me ?

----------------------------------|---------|---------|

                                  |         | Static  |

              Module              | Flash   |   RAM     |

----------------------------------+---------+---------|

AMQPv1_0_client                   |   13824 | 0       |

App                               |    4351 | 1212    |

base64                            |     523 | 0       |

Bluetooth_Embedded_Low_Energy_Stac|     164 | 57      |

bluetooth_low_energy              | 81239   | 9352    |

Bluetooth_SmartBridge             |    7169 | 372     |

---                               |   32023 | 5858    |

crc                               |    1608 | 0       |

crypto_open                       |   47062 | 4       |

DHCP_Server                       |    1476 | 132     |

DNS                               |    1636 | 44      |

Host MCU-family library           |   18751 | 2560    |

HTTP_client                       |     399 | 0       |

Interrupt Vectors                 |     388 | 0       |

JSON_parser                       |    2508 | 662     |

libc                              |   35811 | 3136    |

Linked_List                       |     460 | 0       |

micro_ecc                         |    6212 | 0       |

Networking                        |    5311 | 13280      |

NetX-Duo - Interfaces & Stacks    |       0 | 16      |

Other                             |   46324 | 535     |

Packet Buffers                    |       0 | 23088      |

platform                          |    1568 | 292     |

RAM Initialisation                |    2924 | 0       |

resources                         |    8372 | 0       |

Ring_Buffer                       |     112 | 0       |

SPI_Flash_Library_LOBBY           | 916 |       0     |

Startup Stack & Link Script fill  |      46 | 4       |

Supplicant - BESL                 |   25516 | 616     |

ThreadX                           |    8596 | 396     |

TLV                               |      28 | 0       |

WICED                             | 5771    |    1076 |

WICED_Bluetooth_Firmware_Driver_fo|   38361 | 0       |

WWD                               |   18911 | 3156    |

----------------------------------+---------+---------|

TOTAL (bytes)                     |  415436 | 65848   |

----------------------------------|---------|---------|

0 Likes
1 Solution
PriyaM_16
Moderator
Moderator
Moderator
250 replies posted 100 replies posted 50 replies posted

For reducing the size of packet buffers you can add these lines in the make file of your project.

#GLOBAL_DEFINES += PBUF_POOL_TX_SIZE=2

#GLOBAL_DEFINES += PBUF_POOL_RX_SIZE=2

#GLOBAL_DEFINES += WICED_PAYLOAD_MTU=600 \

#TX_PACKET_POOL_SIZE=1 \

#RX_PACKET_POOL_SIZE=1

Now for removing BLE: This module will be included only if you have some Bluetooth APIs in your application. If you do not have any Bluetooth low energy related APIs in your application, then the module won’t be included. Since bt_smartbridge is used here, BLE cant be removed as it is primarily based on BLE.
Networking as per my understanding contains the network stack. The make file for not including networking stack is made as follows: snip.scan-CYW943907AEVAL1F-NoNs but it will throw errors as the operating system will require a network stack. This will be the case unless you are planning to use your own network stack. Please let me know why you want to remove the network stack?

Also you wanted to remove other sections which are consuming space. Please follow this link to remove DHCP server from the map:Disable DHCP_Server module, or exclude from build?

For disabling DTLS you can add this macro in the make file as : #GLOBAL_DEFINES += WICED_CONFIG_DISABLE_DTLS

For disabling enterprise security add this macro: WICED_CONFIG_DISABLE_ENTERPRISE_SECURITY

This will further free some space.

View solution in original post

2 Replies