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);
}