problema escribiendo en SD

Buenas...
Hace un tiempo (unos 4 5 años) hice un proyecto que guarda variables en una SD.

Funcionaba así: guardaba datos de diferentes variables en BYTE en determinada posición del mismo archivo mediante la función seek. Y luego las leia indexando la posicion de la variable deseada. De esta manera cada vez que apagaba el arduino al prenderlo tenia los valores de las variables.

(((escritura)))

file = SD.open("var.txt",FILE_WRITE)
file.seek(posicion1)
file.write (variable1)
file.seek(posicion2)
file.write (variable2)

(((lectura)))

file = SD.open("var.txt")
file.seek(posicion4)
byte variable4 = file.read()

El problema es que hoy retomo ese proyecto y eso ya no funciona. Lo que veo que pasa hoy es que al escribir me inserta un byte en la posicion definida por seek, osea , no me sobreescribe el byte definido. Antes me lo sobreescribia.

antes el programa escribia asi

1589
1389
1369

(los valores que cambian se sobreescribian)

ahora hace esto

1589
13589
136589

(escribe en el lugar indicado pero desplazando todo lo existente)

y al momento de leer la lectura es incorrecta.