The display takes around 1 second to update. This is ok as it can be videoed in sunlight. An issue is that this code waits for the update _waitWhileBusy. In my case the microcontroller is controlling the boat and it should not hang around for the screen update. Options I have is update the screen every 10 seconds or so; put the loop logic in another function loopcalc, say and call loopcalc within the waitWhileBusy function. More complex is to simulate multi-thread.
Image developed using Fritzing