Precision of terrain height values

We use an octocopter for carrying some sensing instruments, which need to be quite close to the ground. In order to fly on a well-defined surface, we use a smoothed, dense digital elevation model, convert it to Geotiff and load it into the srtm folder. The accuracy of the elevation data is in the cm range and it is shown with high precision in MissionPlanner. Flying above this custom terrain works as it should.

However, when we did a slow flight (2m/s) above a slight slope, the copter’s altitude was stepped and looked like a staircase (red curve infigure shows GPS.Alt). I noticed in the log that the parameter TERR->TerrH was also step-like (green curve) and showed mainly integer values.

Also the desired altitude CTUN->DAlt has this appearance.

At some point, the high accuracy of the elevation model got lost. (possibly, because height in meters above terrain is an integer in AP_Terrain.h in an ardupilot library)

Is there a possibility to fly on custom terrain with sub-meter accuracy?