MESH v5.0.0 chat_model "Out of segment buffers"

Hello, im trying to create a mesh system with sensors that work like a chat. I tested it on 5 devices and there is a strange behavior. After 120 test messages an error appears : "

i know it has to do with a buffer being full, but i dont know how to empty it. How do i get rid of this error ?

My code + config (the rest is mostly chat example) : 

void main(void)
{
    int err;

    printk("Initializing...\n");

    err = bt_enable(bt_ready);
    if (err) {
        printk("Bluetooth init failed (err %d)\n", err);
    }

    k_timer_start(&my_timer, K_MSEC(100), K_MSEC(1000));
   

}
K_WORK_DEFINE(repeating_timer_work,my_enemy);

void my_fren(struct k_timer *dummy)
{
k_work_submit(&repeating_timer_work);
}

K_TIMER_DEFINE(my_timer, my_fren, NULL);
long long int timestamp = 0;


static void my_enemy(struct k_timer *timer_id){

	if(bt_mesh_is_provisioned()){
	char * test[20];
	timestamp += 1;

    char * str[20];

	sprintf(str, "timestamp-%d",timestamp);
	
	test[0] = str;
	free(str);

	messagueages(test);
	} 
}
int messagueages(char *mes[]){

	int err;
	err = bt_mesh_chat_cli_message_send(&chat, mes[0]);
	if (err){
	LOG_WRN("Failed to send message: %d", err);
	}
	return 0;
	
}
CONFIG
CONFIG_BT_MESH_TX_SEG_MSG_COUNT=64
CONFIG_BT_MESH_RX_SEG_MSG_COUNT=64
CONFIG_BT_MESH_SEG_BUFS=64
CONFIG_BT_MESH_RX_SEG_MAX=10
CONFIG_BT_MESH_TX_SEG_MAX=10
CONFIG_BT_MESH_SEG_ACK_BASE_TIMEOUT=150
CONFIG_BT_MESH_SEG_ACK_PER_HOP_TIMEOUT=50
CONFIG_BT_MESH_SEG_ACK_PER_SEGMENT_TIMEOUT=0
CONFIG_BT_MESH_DEFAULT_TTL=7
CONFIG_BT_MESH_LOOPBACK_BUFS=3
CONFIG_BT_MESH_TX_SEG_RETRANS_COUNT=4
CONFIG_BT_MESH_TX_SEG_RETRANS_TIMEOUT_UNICAST=400
CONFIG_BT_MESH_TX_SEG_RETRANS_TIMEOUT_GROUP=50
CONFIG_BT_MESH_NETWORK_TRANSMIT_COUNT=0
CONFIG_BT_MESH_NETWORK_TRANSMIT_INTERVAL=20
CONFIG_BT_MESH_RELAY=y
CONFIG_BT_MESH_RELAY_ENABLED=y
CONFIG_BT_MESH_RELAY_RETRANSMIT_COUNT=2
CONFIG_BT_MESH_RELAY_RETRANSMIT_INTERVAL=20
CONFIG_BT_MESH_RELAY_BUF_COUNT=32
CONFIG_BT_MESH_BEACON_ENABLED=y
Parents Reply Children
Related