Welcome to ScubaBoard, the world's largest scuba diving community. Registration is not required to read the forums, but we encourage you to join. Joining has its benefits and enables you to participate in the discussions.
Benefits of registering include
Consider creating the entire screen in memory, and finally writing the memory contents to the display. If you have any flickering with text, this will solve it as well. Keywords: sprite. There's a library out there for TFT displays: TFT-eSprite and is probably useful for your touchscreen as well.ESP32 is much powerful than arduino nano but the lcd refreshing is still challanging.
Consider creating the entire screen in memory, and finally writing the memory contents to the display. If you have any flickering with text, this will solve it as well. Keywords: sprite. There's a library out there for TFT displays: TFT-eSprite and is probably useful for your touchscreen as well.
For the 3-point Nitrox calibration, how are you doing the 0% O2? Saturating with N2 or is it an electrical zero?
This is a very nice project, are you selling the components that are custom on your website?
Would you consider adding a CO sensor as well? The parts are relatively cheap, you can use the same one that CooTwo used, and there is nothing on the market that has three in one.