OpenCM9.04 USART3 can not work with DYNAMIXEL TTL Bus simultaneously

When I use the board of opencm9.04, the XL-320 is connected to the DYNAMIC TTL Bus, and the TX3 and RX3 of pins D24 and D25 are used to connect the TOFSense range sensor at the same time.After importing the program, the range sensor cannot obtain data. However, when I disconnect the connection between the XL-320 and opencm9.04 and re import the program, the range sensor can get data. Can I ask if the DYNAMIXEL TTL Bus of opencm9.04 can not be used with the TX3 and RX3 of pins D24 and D25 simultaneously?

Here is my range sensor codeļ¼š

 if(Serial3.available()>0)//If the serial port buffer receives data  {
if(Serial3.peek() == TOF_FRAME_HEADER)
{
  count_i=0;//Set array subscript count variable to 0
  rx_buf[count_i]=Serial3.read();//Put the frame header in the first element of the array and clear the data in the serial port receiving buffer
}
else
{
  rx_buf[count_i]=Serial3.read();//If it is not a frame header, read and clear the data in the serial port receiving buffer normally
}        
count_i++;//Array subscript count variable+1, ready to store the received data to the next location
if(count_i>15)//If the array subscript count variable is>15, it means that the receiving array is full of 16 data, and the count variable is cleared and decoded once
{

count_i=0;for(count_j=0;count_j<15;count_j++)
  {
    check_sum+=rx_buf[count_j];//Check sum of calculated data
  }
  if((rx_buf[0] == TOF_FRAME_HEADER)&&(rx_buf[1] == TOF_FUNCTION_MARK)&&(check_sum == rx_buf[15]))
  {
    tof0.id=rx_buf[3];
    tof0.system_time=(unsigned long)(((unsigned long)rx_buf[7])<<24|((unsigned long)rx_buf[6])<<16|((unsigned long)rx_buf[5])<<8|(unsigned long)rx_buf[4]);        
    tof0.dis=((float)(((long)(((unsigned long)rx_buf[10]<<24)|((unsigned long)rx_buf[9]<<16)|((unsigned long)rx_buf[8]<<8)))/256))/1000.0;
    tof0.dis_status=rx_buf[11];
    tof0.signal_strength=(unsigned int)(((unsigned int)rx_buf[13]<<8)|(unsigned int)rx_buf[12]);
    tof0.range_precision=rx_buf[14];
    Serial.print("id:");
    Serial.println(tof0.id);
    Serial.print("system_time:");
    Serial.println(tof0.system_time);
    Serial.print("dis:");
    Serial.println(tof0.dis);
    Serial.print("dis_status:");
    Serial.println(tof0.dis_status);
    Serial.print("signal_strength:");
    Serial.println(tof0.signal_strength);
    Serial.print("range_precision:");
    Serial.println(tof0.range_precision);
    Serial.println("");
  }      
}
check_sum=0;

}

That is a bit strange. XL-320s are controlled via Serial1 on the OpenCM-904. Serial3 is only used for DXL control if you also use the 485-Expansion Shield - do you use this shield?

In the past, I had used XL-320s at the same time as my ToF sensors which are I2C devices, and I used D24 as SCL and D25 as SDA (485-EXP was not used). And this setup was OK. I was using Dynamixel2Arduino Library. Which Dynamixel Library are you using?