Mercurial > public > ostc4
comparison Discovery/Src/data_central.c @ 302:eba8d1eb5bef cleanup-4
bugfix, cleanup: keep both is_ambient_pressure_close_to_surface in sync
The CPU1 firmware used 40cm of water pressure, and the RTE used 1m of
water pressure to detect between diving and surface state. This is
simply wrong, and can lead to small, rounding like, errors.
Use 1m water pressure as "official" depth things count as diving.
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
author | Jan Mulder <jlmulder@xs4all.nl> |
---|---|
date | Mon, 20 May 2019 10:13:44 +0200 |
parents | 5ca177d2df5d |
children | 95928ef3986f |
comparison
equal
deleted
inserted
replaced
301:a09b1855d656 | 302:eba8d1eb5bef |
---|---|
758 // Return the final result. | 758 // Return the final result. |
759 | 759 |
760 return (cm_crc(&crc_model)); | 760 return (cm_crc(&crc_model)); |
761 } | 761 } |
762 | 762 |
763 | 763 // This code is also in RTE. Keep it in sync when editing |
764 _Bool is_ambient_pressure_close_to_surface(SLifeData *lifeData) | 764 _Bool is_ambient_pressure_close_to_surface(SLifeData *lifeData) |
765 { | 765 { |
766 if(lifeData->pressure_ambient_bar < (lifeData->pressure_surface_bar + 0.04f)) | 766 if(lifeData->pressure_ambient_bar < (lifeData->pressure_surface_bar + 0.1f)) |
767 return true; | 767 return true; |
768 else | 768 else |
769 return false; | 769 return false; |
770 } | 770 } |