sprintf (long) ?

void loop() 
{
  static char buffer[50];
  unsigned long myLong = millis();
  sprintf (buffer, "Test : %10u%10i%10d --- ;) \r\n", myLong, myLong, myLong);
  Serial.write(buffer);
  delay(2000);
}

Format "%l" is not defined, and sprintf() does not seem to handle parameters with a size of more than 2 bytes ( seems to rely on a 16bit stack ?)

There's ``` ** ltoa(myLong,buffer,10)** ``` as a workaround. But if you target it inside a longer string, you have to remove the '\0'. And to get the number string right adjusted, I did not find an elegant solution yet. Any hint ?

Where's the arduino specific sprintf documentation ?

%ld ?

AWOL: %ld ?

%ld ( or %lu for an unsigned long ) !

oops, Thanks ;)