Affichage de flottant

sprintf sur petit arduino ne gère pas les float en effet.

Les Strings peuvent emmener des soucis mémoire parfois ou ne pas réaliser l'opération voulue si la mémoire est limitée.

Le plus simple, le moins couteux en mémoire et en temps CPU pour votre besoin est de ne pas passer par le buffer du tout...

Serial.print(millis()/3600000.0, 2); // 2 chiffres après la virgule
Serial.write(';');                   // le séparateur
Serial.print(iEnrg, 2);              // en flottant, 2 chiffres après la virgule
Serial.write(';');                   // le séparateur
Serial.println(wConso, 3);           // 3 chiffres après la virgule

fabriquer le buffer en amont ne fera pas imprimer plus vite...