Apparently there are lots of ways to calculate coefficients for digital filters!

I found C code examples for a pair of first order filters (thanks Google!) that also seem to be working fine. I'm running these on a Teensy 3.6 in the range of 100Hz - 2kHz.

Code:

double coefficients[5]= {0,0,0,0,0};
// Calulate first-order LPF coefficients
void calcCoefficients_LPF(float freq){
float RC = 1.0/(2*PI*freq);
float dt = 1.0/AUDIO_SAMPLE_RATE;
float alpha = dt/(RC+dt);
double b0 = -alpha;
double a1 = alpha-1;
coefficients[0] = b0;
coefficients[3] = a1;
}
// Calulate first-order HPF coefficients
void calcCoefficients_HPF(float freq){
float RC = 1.0/(2*PI*freq);
float dt = 1.0/AUDIO_SAMPLE_RATE;
float alpha = RC/(RC+dt);
double b0 = -alpha;
double b1 = alpha;
double a1 = -alpha;
coefficients[0] = b0;
coefficients[1] = b1;
coefficients[3] = a1;
}

Interesting (to me anyway) that this approach don't use an exponential function -- just add/subtract/multiply/divide...