Skip to content

When a model has no FIR filters, but has a `chans/*.fir file` the error reported is not intuitive.

The check that fails :

drv/fmReadCoeff.c

#ifdef FIR_FILTERS
                            maxSOS = MAX_FIR_SO_SECTIONS;
#else
                            maxSOS = MAX_SO_SECTIONS;
#endif


if ( filtSections > 0 && filtSections <= maxSOS ) //Fails
{...

We fail the number of taps found in the .fir file, but only because maxSOS is MAX_SO_SECTIONS because we don't have any FIR filters in the model.

Better logic would be to not read .fir file when FIR_FILTERS is not defined.

Edited by Ezekiel Dohmen