Double zu String ist immer sehr Speicherplatzaufwändig mit 8-Bit Controllern. Muss es den unbedingt eine Float Zahl sein ?? Geht es nicht auch mit Integer Werten oder so ??

Die Funktion oben kann man ganze einfach auch ohne malloc() schreiben, man muss einfach eine entsprechend große lokale Variable anlegen. Dynamische Speicherverwaltung ist sowieso meist oversized für AVRs

MfG Kjion