get valid data before writing to ARM