Peaks clone ?

No you were right to remove this code as processors isn’t a trivial type. So the line peaks::Processors processors[2] = {}; is correct.

I edited my crash log post as I initially thought it was a problem with the firmware; in reading the log I assumed (wrongly) that a large value was being passed by the module to the firmware. This is not the case. The problem is in the eurorack/peaks/modulations/multistage_envelope.cc file the trace is pointing to. This is due to the shape_ variable not being initialized in the void MultistageEnvelope::Init() method.

The line pointed to in the crash is

which uses shape_ as an index for lookup_table_table

LUT_ENV_LINEAR is defined in eurorack/peaks/resources.h

segment_ and phase_ are initialized in void MultistageEnvelope::Init()

The fix I have used is to add this code to the end of void MultistageEnvelope::Init() in peaks/modulations/multistage_envelope.cc

for (uint8_t i = 0; i < 8; i++) {
    shape_[i] = {};
}

Any builders feel free to try the firmware code fix and let us know how you get on. :slight_smile: