Questions about passing param to BlynkTimer's setTimeout (or any other timer func)

That’s the way it works I’m afraid. I think it’s void though so technically you could pass anything. Ints, strings etc you just have to specify what it is in the function.

See my code here I just pass ints though.
https://community.blynk.cc/t/toolbox-lock/36689?u=justbertc

Edit:
So in your function, maybe just try casting to float?

#include <BlynkSimpleEsp8266_SSL.h>

BlynkTimer timer;

void setup()
{
  Serial.begin(115200);

  float testParameter = 45.1;
  timer.setTimeout(1000L, testTimer, (void*)testParameter);
  
  testParameter = 99.9;
  testTimer((void*)testParameter);
}

void loop()
{
  timer.run();
}

void testTimer(void *valToSet) {
  //intptr_t n = (intptr_t)(valToSet);
  Serial.print("Test function with input: ");
  Serial.println((float)valToSet);
}