The parts that show the different methods for calculating pressure and temperature are highlighted in the images.
Use the linked datasheets if you can’t read the fine print.
Crudely changing the code at least gives me good results now! Next is trying to merge this in the VarioGPS code. One way to do it is to use the chip-select bit to determine which chip.
I2C INTERFACE COMMANDS Each I2C communication message starts with the start condition and it is ended with the stop condition. The MS5607-02BA address is 111011Cx, where C is the complementary value of the pin CSB.
Pulling it high will give an address of 0x76, (normally pulled to zero by 2k2, gives it a 0x77 address.) VarioGPS already uses this trick to identify another chips. I might ‘simply’ put the MS5607 in that slot, since I don’t have that chip.
Memory is already tight, so I removed both the LPS and BMP280/BME280 sensors. That gives me enough room to play and get the code inserted and cleaned up. I can always stick it in later when/if things are working.
RAM: [===== ] 50.5% (used 1034 bytes from 2048 bytes) Flash: [========= ] 91.6% (used 28144 bytes from 30720 bytes)