MS5803 + Datalogger Shield Communication problem

Hello I'm having a nasty problem. I want to use a datalogger shield and a MS5803 pressure sensor together, I used their libraries and had each of them work separately but not together.
This is the datalogger shield I bought:

https://www.ebay.com/itm/1pcs-Data-Logger-Module-Logging-Shield-Data-Recorder-for-Arduino-SD-Card-TE1013/173804612782?epid=2295950123&hash=item28778fecae:g:cfQAAOSwbX5cbjWr

This is the datasheet of the MS5803:

https://www.te.com/commerce/DocumentDelivery/DDEController?Action=showdoc&DocId=Data+SheetMS5803-14BAB3pdfEnglishENG_DS_MS5803-14BA_B3.pdfCAT-BLPS0013

And this is the connection diagram:

The 3 codes I present are almost equal just with some comments on lines to avoid having them running.

With this code I get the date in the SD like this:
2019/5/30 9:27:33

const int chipSelect = 10;
#include <SdFat.h>
SdFat sd;
SdFile myFile;
#include "RTClib.h"
RTC_DS1307 RTC;
#include <Wire.h>
#include <SparkFun_MS5803_I2C.h>
MS5803 sensor(ADDRESS_LOW);

float temperature_c, temperature_f;
double pressure_abs, pressure_relative, altitude_delta, pressure_baseline;
double base_altitude = 1655.0; 

void setup() {
   Serial.begin(9600);
    Wire.begin();
  delay(400);  // catch Due reset problem
  RTC.begin();
  if (!sd.begin(chipSelect, SPI_HALF_SPEED)) sd.initErrorHalt();
  sensor.reset();
  Serial.println("I haven't stopped");
  sensor.begin();
  Serial.println("I stopped");
  pressure_baseline = sensor.getPressure(ADC_4096);

}

void loop() {
  timeprint();
  pressureprint();
  myFile.close();
}
void pressureprint(){
  temperature_c = sensor.getTemperature(CELSIUS, ADC_512);
  pressure_abs = sensor.getPressure(ADC_4096);
  Serial.println("Temperature C = ");
  Serial.println(temperature_c);
  Serial.print("Pressure abs (mbar)= ");
  Serial.println(pressure_abs);
  Serial.println("");
}

void timeprint(){
    if (!myFile.open("test.txt", O_RDWR | O_CREAT | O_AT_END)) {
      sd.errorHalt("opening test.txt for write failed");
    }
    DateTime now = RTC.now();
    DateTime future (now.unixtime() + 7 * 86400L + 30);
    myFile.print(future.year(), DEC);
    myFile.print('/');
    myFile.print(future.month(), DEC);
    myFile.print('/');
    myFile.print(future.day(), DEC);
    myFile.print(' ');
    myFile.print(future.hour(), DEC);
    myFile.print(':');
    myFile.print(future.minute(), DEC);
    myFile.print(':');
    myFile.println(future.second(), DEC);
    delay(500);
}

With this code I get the date printed like this:
Temperature C =
27.97
Pressure abs (mbar)= 1000.60

const int chipSelect = 10;
#include <SdFat.h>
SdFat sd;
SdFile myFile;
#include "RTClib.h"
RTC_DS1307 RTC;
#include <Wire.h>
#include <SparkFun_MS5803_I2C.h>
MS5803 sensor(ADDRESS_HIGH);

float temperature_c, temperature_f;
double pressure_abs, pressure_relative, altitude_delta, pressure_baseline;
double base_altitude = 1655.0; 

void setup() {
  Serial.begin(9600);
  Wire.begin();
  delay(400);  // catch Due reset problem
//  RTC.begin();
//  if (!sd.begin(chipSelect, SPI_HALF_SPEED)) sd.initErrorHalt();
  sensor.reset();
  Serial.println("I haven't stopped");
  sensor.begin();
  Serial.println("I stopped");
  pressure_baseline = sensor.getPressure(ADC_4096);
}

void loop() {
//  timeprint();
  pressureprint();
//  myFile.close();
}
void pressureprint(){
  temperature_c = sensor.getTemperature(CELSIUS, ADC_512);
  pressure_abs = sensor.getPressure(ADC_4096);
  Serial.println("Temperature C = ");
  Serial.println(temperature_c);
  Serial.print("Pressure abs (mbar)= ");
  Serial.println(pressure_abs);
  Serial.println("");
}

/*void timeprint(){
    if (!myFile.open("test.txt", O_RDWR | O_CREAT | O_AT_END)) {
      sd.errorHalt("opening test.txt for write failed");
    }
    DateTime now = RTC.now();
    DateTime future (now.unixtime() + 7 * 86400L + 30);
    myFile.print(future.year(), DEC);
    myFile.print('/');
    myFile.print(future.month(), DEC);
    myFile.print('/');
    myFile.print(future.day(), DEC);
    myFile.print(' ');
    myFile.print(future.hour(), DEC);
    myFile.print(':');
    myFile.print(future.minute(), DEC);
    myFile.print(':');
    myFile.println(future.second(), DEC);
    delay(500);
}*/

AND WHEN I CONNECT THEM TOGETHER, and put this code I JUST GET:
"I haven't stopped message" on serial
but not the second message "I stopped"
This is the code

const int chipSelect = 10;
#include <SdFat.h>
SdFat sd;
SdFile myFile;
#include "RTClib.h"
RTC_DS1307 RTC;
#include <Wire.h>
#include <SparkFun_MS5803_I2C.h>
MS5803 sensor(ADDRESS_HIGH);

float temperature_c, temperature_f;
double pressure_abs, pressure_relative, altitude_delta, pressure_baseline;
double base_altitude = 1655.0; 

void setup() {
  Serial.begin(9600);
  Wire.begin();
  delay(400);  // catch Due reset problem
  RTC.begin();
  if (!sd.begin(chipSelect, SPI_HALF_SPEED)) sd.initErrorHalt();
  sensor.reset();
  Serial.println("I haven't stopped");
  sensor.begin();
  Serial.println("I stopped");
  pressure_baseline = sensor.getPressure(ADC_4096);
}

void loop() {
  timeprint();
  pressureprint();
  myFile.close();
}
void pressureprint(){
  temperature_c = sensor.getTemperature(CELSIUS, ADC_512);
  pressure_abs = sensor.getPressure(ADC_4096);
  Serial.println("Temperature C = ");
  Serial.println(temperature_c);
  Serial.print("Pressure abs (mbar)= ");
  Serial.println(pressure_abs);
  Serial.println("");
}

void timeprint(){
    if (!myFile.open("test.txt", O_RDWR | O_CREAT | O_AT_END)) {
      sd.errorHalt("opening test.txt for write failed");
    }
    DateTime now = RTC.now();
    DateTime future (now.unixtime() + 7 * 86400L + 30);
    myFile.print(future.year(), DEC);
    myFile.print('/');
    myFile.print(future.month(), DEC);
    myFile.print('/');
    myFile.print(future.day(), DEC);
    myFile.print(' ');
    myFile.print(future.hour(), DEC);
    myFile.print(':');
    myFile.print(future.minute(), DEC);
    myFile.print(':');
    myFile.println(future.second(), DEC);
    delay(500);
}

I think the problem is the I2C connection of the MS5803 is causing trouble to the SPI connections with the Datalogger, the MS5803 is connected via A4 and A5 but I don't know what pins the datalogger uses, but i haven't achieved anything else other than detecting the line where the program or at least the serial communication with Arduino stops.

Please help
:frowning:

I think the problem is the I2C connection of the MS5803 is causing trouble to the SPI connections with the Datalogger, the MS5803 is connected via A4 and A5

How is the RTC connected?

Have you run the I2C scanner with one device at a time connected? With both devices connected?

I've searched for the connections and I don't know where the RTC is connected. It's on the datalogger board and it just stacks on the Arduino Uno, maybe its connection pins are 13->10 but I (SPI pins?)am not sure, if that was the case I would not have issued using A4 and A5. And I have run parts of the code with each of them and they work fine, but they do not work together.