ERR_IMU_COMM PCB1.3 | Azurit1.0a7

Yes it's strange but if you are sure that the rtc and the eeprom work perfectly ,it's mean that the part between PC1 and i2c on pcb1.3 is ok.
You tell me that the imu didn't work on all other port.Not possible all of them didn't work at the same time.
Verify again the voltage on I2C2.
But the best way is to test these port with an other i2c sensor (lcd or imu or ....).

Strange in your screenprint no error from the gyroscope L3G4200 ?.

Not sure but maybe in the library you use to test the imu directly on due the pullup is not active and it's why the imu work in this particular case.
It's the problem i have with the PCB1.2 and to solve it i need to buy an I2C multiplexer TCA9548 and now all is ok and i can use multiple IMU at the same time but it need a new firmware and complexe wiring.

In all case i also use the Pcb1.3 and Gy801 and due for more than 20 hours and never one error.

Good luck
 
I checked the voltage on all I2C ports vcc is 5v gnd is gnd and 3.3 is 3.3 only sda and scl varies between 0.4V and 0.75V if nothing is connected. I am not sure if the rtc and the eeprom work perfectly, but i didn't got any rtc errors anymore.
How can I check the ports with an other sensor? I have to use it with azurit?
 
I am not sure if the rtc and the eeprom work perfectly

It's the first thing to check.

For the DS1307:
In arduremote or Pfod put the Timer to Yes to force Azurit read the DS1307 each minute.
Go to Date time and put the real value.
Turn OFF all the system(USB and BATTERY) for at least 2 or 3 minutes.
When restart the time need to have change, if no there is problem.

For the EEPROM
In setting the Save setting need to freeze PFOD for 5 second if it's OK.
To be sure Set the BUMPER for example to ON, save setting,turn the power OFF USB and BATTERY when restart repeat the procedure with BUMPER OFF.

Precision on the factory setting.
When you use the factory setting ,never use the save setting immediatly after, a Power down is mandatory just after the factory setting.

How can I check the ports with an other sensor?
Simply plug your module on one port put the Jumper JPxxx corresponding to 3.3V and use the Library of the module,normaly it's work without issue and without azurit Do not use a module with the same adress than the RTC .
 
I have no idea what is wrong with this thing. I hooked up a MPU6050 and after that a MPU9250 and both times I only got this adresses:

Code:
Scanning...
I2C device found at address 0x50  !
I2C device found at address 0x68  !
done

I think that is the RTC and the EEPROM?
After that I hooked up a GY-87 and I got the following adresses:

Code:
Scanning...
I2C device found at address 0x50  !
I2C device found at address 0x68  !
I2C device found at address 0x77  !
done

What is wrong? Should I try a new GY-80? Or has the PCB a Problem? But I can't imagine that the PCB is faulty because Azurit did not work with the IMU even if I connect the IMU directly to I2C....
 
Hi.
All is normal.

From factory the MPU6050 use the same adress that the RTC, 0x68 (it's why i2cscanner can't see it) so you need to connect the ADO to VIN and power the modul with 3.3V (Jumper JP2 to 3.3V) and now you can see the 0x69 adress if only on the DUE

and the 3 adress 0x50(EEPROM on RTC),0x68(DS1307 the rtc),0x69(MPU6050) when the test is made on the PCB1.3

The GY87 can't be use with PCB1.3 because the MPU6050 onboard is at adress 0x68 same as the RTC and you can't change it (no ADO pin).

By.
 
Hi.
Here the I2c adress and explanation of problem with PCB1.3

GY87 Module
0x77 indicate that your I2C bus is OK (it's the BMP180).
0x1E (it's the compass HMC5883) is into a second bus inside this board so it's normal that you can't see it directly need a passthrou.
0x68 you can see it only when not on the PCB1.3 because it is already used by the DS1307 on the RTC

RTC Module
0x68 The DS1307 it's the RTC
0x50 The AT24C32 it's the eeprom

GY88
0x77 (it's the BMP180).
0x1E (it's the compass HMC5883) you can't see it directly without passthrou.
0x68 or 0x69 depend if AD0 is open or connected to 3.3V


By.
 
If on the PCB1.3 the RTC keep the date and time , the eeprom work and the GY87 return correct value from the BMP180 then i thing it's certainly only a GY801 problem.
If you have a Due it's better to use a GY88 (if you can find one).
By.
 
And every day greets the marmot.
I got a replacement for the IMU but still the same shit. It works on every port for some seconds and then the nice errors. And before you ask I still have not found the error counter for the 3rd sensor so there is no error for that in the logs...

Do you have an idea what can I try for a workarround? :(


Code:
RTC date received: Thu 19.10.2017
t     1 L  0 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw 126 pit -52 rol  71 bat -653.-1 chg 841.8 -24.5 imu  1 adc  0 Ardumower
t     2 L  0 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  67 pit -58 rol  78 bat 12.5 chg  0.0  0.0 imu238 adc 96 Ardumower
t     3 L238 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  66 pit -60 rol  81 bat 12.5 chg  0.0  0.0 imu253 adc 98 Ardumower
t     4 L253 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  82 bat 12.5 chg  0.0  0.0 imu253 adc100 Ardumower
t     5 L253 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu254 adc100 Ardumower
t     6 L254 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu253 adc 99 Ardumower
t     7 L253 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu253 adc 98 Ardumower
t     8 L253 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu253 adc 99 Ardumower
t     9 L253 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu253 adc 97 Ardumower
t    10 L253 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu254 adc 99 Ardumower
t    11 L254 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu253 adc 98 Ardumower
t    12 L253 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu253 adc100 Ardumower
t    13 L253 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu253 adc100 Ardumower
t    14 L253 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu254 adc 99 Ardumower
t    15 L254 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu253 adc 98 Ardumower
t    16 L253 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu253 adc 99 Ardumower
t    17 L253 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  65 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu253 adc 97 Ardumower
Error with readADXL345B()
Error with readHMC5883L()
t    18 L253 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw  56 pit -61 rol  83 bat 12.5 chg  0.0  0.0 imu 70 adc 27 Ardumower
IMU comm error
Error with readADXL345B()
Error with readHMC5883L()
IMU comm error
Error with readADXL345B()
Error with readHMC5883L()
 
Not Cool.
Can you try the calibration or not the time before crash.
Maybe try to refresh (and print in the Console ) the "RTC date received: " each second to verify if the RTC continue to work when the IMU is crash.
You have a 12V board ?
BY.
 
Okay I have some information for you.
The RTC in the programm counts as long as I don't activate the IMU. When I activate the IMU the RTC in the programm stops to count and I get RTC DATA errors in the app. But the hardware RTC continues to count the time.

Look at the time.

Code:
DS1307 comm error
RTC date received: Fri 20.10.2017  18 17
IMU comm error
Error with readADXL345B()
Error with readHMC5883L()
t   115 L  1 m0 ERR  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw -129 pit -64 rol  90 bat 12.5 chg  0.0  0.0 imu  1 adc  1 Ardumower
pfod cmd=y4
DS1307 comm error
RTC date received: Fri 20.10.2017  18 17
IMU comm error
Error with readADXL345B()
Error with readHMC5883L()


And after a reset of the DUE everything is okay.

Code:
START
Ardumower 1.0a7-Azurit  PCB 1.3  Arduino Due  IOREF=3.30
Robot: Ardumower
press...
  d for menu
  v to change console output (sensor counters, values, perimeter etc.)
sen_counters
RTC date received: Fri 20.10.2017  18 19
t     1 L  0 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw   0 pit   0 rol   0 bat -728.-2 chg 841.8 -24.5 imu  0 adc  0 Ardumower
RTC date received: Fri 20.10.2017  18 19
t     2 L  0 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw   0 pit   0 rol   0 bat 12.5 chg  0.0  0.0 imu  0 adc100 Ardumower
RTC date received: Fri 20.10.2017  18 19
t     3 L28443 m0 OFF  set    0    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw   0 pit   0 rol   0 bat 12.5 chg  0.0  0.0 imu  0 adc100 Ardumower
RTC date received: Fri 20.10.2017  18 19


The minutes jump from 17 to 19.

Screenshot_20171020-180757.png

Attachment: https://forum.ardumower.de/data/media/kunena/attachments/3881/Screenshot_20171020-180757.png/
 
Zuletzt bearbeitet von einem Moderator:
Hi.
First i thing you need to have a correct RTC working for at list 10 Minutes without any error and a loops > 5000.
How many RTC have you tested, Did you power the PCB1.3 with the RTC without CR2032 (Maybe it Can damage the DS1307) .
On EBAY i order 2 of them and the 2 didn't work correctly.
Good Luck.
 
Hi
Better to test with IMU disconnected and remove JP2.

at T=600 the RTC stop working,
So first use the Save Setting in PFOD while looking at the console to solve RTC and EEPROM issue.
If the RTC and EEPROM don't work The I2C can't read the IMU.

By.
 
Remove completly the IMU from the PCB1.3.

Use only the RTC.
With PFOD in Setting, change Perimeter Use from YES to NO for example, and Save setting (You can connect the PC and verify in the console).The save setting take at minimum 5 Secondes.
Power OFF the PCB and unplug the USB cable.
Wait
Power ON again and verify in PFOD that the Perimeter is NO
Repeat this with other value and verify the Data are saved after Power OFF without EEPROM ERROR.

In Timer set Use to YES.
And again verify that the RTC is read for 10 miniutes without any error.

Only after ,and if all is OK you can test the IMU.

By
 
When you did your test the PCB1.3 is correctly powered ?
You need to have the 12 or 24V on the board and push the start button until the beep and all the LED ok.
It's normal that the RTC don't work with only the USB.

I have also make some test with post on the net but it's never work The RTC need to work at the first start.(Remove resistor and shunt Diode ,LR2032 or CR2032 no change also)
If you have a UNO or MEGA,you can test the RTC directly with 5V.
 
Oben