When using arduino-esp32 core v3.x, the edge impulse model compilation fails with errors of the type:
error: either all initializer clauses should be designated or none of them should be
1789 | .channels = input->dims->data[3],
This is because arduino-core v3.x uses a later vesion of the C++ compiler.
in files conv.cpp
and depthwise_conv.cpp
modify all data_dims_t
struct declarations to remove designators, eg change:
data_dims_t input_dims = {
.width = input_width, .height = input_height,
.channels = input->dims->data[3], 1
};
to:
data_dims_t input_dims = {
input_width, input_height,
input->dims->data[3], 1
};