COM CRC ERROR

cozwei

New member
Hallo

nachdem ich nun wieder eine RTC eingebaut habe, bootet mein Ardumower. Leider bekomme ich aber ständig einen COMM CRC ERROR.
Der Robot reagiert auf Serial Konsolenbefehle wie den Odometrietest. Wo muss ich den Fehler suchen?

Code:
21:40:57.918 -> RESET cause: power-on
21:40:57.918 -> Sunray,1.0.305
21:40:57.918 -> compiled for: Adafruit Grand Central M4
21:40:57.918 -> using robot driver: AmRobotDriver
21:40:57.918 -> robot id: eb:d6:42:90:53:35:37:4e:36:20:20:20:ff:03:1d:4b
21:40:57.918 -> MOTOR_DRIVER_BRUSHLESS: no
21:40:57.918 -> enableCharging 0
21:40:57.918 -> probing for HM-10 module (NOTE: will fail for ESP32)...
21:40:57.918 -> trying to detect Bluetooth 4.0/BLE (HM-10 module) (make sure your phone is NOT connected)9600...
21:40:58.420 -> BLE: AT
21:41:00.400 -> trying to detect Bluetooth 4.0/BLE (HM-10 module) (make sure your phone is NOT connected)115200...
21:41:00.901 -> BLE: AT
21:41:01.945 -> AT+V,0x16
21:41:02.157 -> error: no BLE module found!
21:41:02.157 -> RCModel disabled in config
21:41:02.157 -> ENABLE_PASS
21:41:02.157 -> ENABLE_TILT_DETECTION
21:41:02.157 -> FREEWHEEL_IS_AT_BACKSIDE: 1
21:41:02.157 -> WHEEL_BASE_CM: 36
21:41:02.157 -> WHEEL_DIAMETER: 250
21:41:02.157 -> ENABLE_ODOMETRY_ERROR_DETECTION: 0
21:41:02.157 -> TICKS_PER_REVOLUTION: 377
21:41:02.157 -> MOTOR_FAULT_CURRENT: 6.00
21:41:02.157 -> MOTOR_OVERLOAD_CURRENT: 0.80
21:41:02.157 -> USE_LINEAR_SPEED_RAMP: 0
21:41:02.157 -> MOTOR_PID_KP: 2.00
21:41:02.157 -> MOTOR_PID_KI: 0.03
21:41:02.157 -> MOTOR_PID_KD: 0.03
21:41:02.157 -> MOTOR_RIGHT_SWAP_DIRECTION
21:41:02.157 -> MOW_FAULT_CURRENT: 8.00
21:41:02.157 -> MOW_OVERLOAD_CURRENT: 2.00
21:41:02.157 -> ENABLE_OVERLOAD_DETECTION: 1
21:41:02.157 -> ENABLE_FAULT_DETECTION: 1
21:41:02.157 -> ENABLE_FAULT_OBSTACLE_AVOIDANCE: 1
21:41:02.157 -> ENABLE_RPM_FAULT_DETECTION: 1
21:41:02.157 -> SONAR_INSTALLED
21:41:02.157 -> SONAR_ENABLE: 1
21:41:02.157 -> SONAR_TRIGGER_OBSTACLES: 1
21:41:02.157 -> RAIN_ENABLE: 0
21:41:02.157 -> BUMPER_ENABLE: 1
21:41:02.157 -> BUMPER_DEADTIME: 1000
21:41:02.157 -> BUMPER_TRIGGER_DELAY: 0
21:41:02.157 -> BUMPER_MAX_TRIGGER_TIME: 30
21:41:02.157 -> CURRENT_FACTOR: 1.98
21:41:02.157 -> GO_HOME_VOLTAGE: 21.50
21:41:02.157 -> BAT_FULL_VOLTAGE: 28.70
21:41:02.157 -> BAT_FULL_CURRENT: 0.20
21:41:02.157 -> BAT_SWITCH_OFF_IDLE: 0
21:41:02.157 -> BAT_SWITCH_OFF_UNDERVOLTAGE: 1
21:41:02.157 -> REQUIRE_VALID_GPS: 0
21:41:02.157 -> GPS_SPEED_DETECTION: 1
21:41:02.157 -> GPS_MOTION_DETECTION: 1
21:41:02.157 -> GPS_REBOOT_RECOVERY: 1
21:41:02.157 -> GPS_CONFIG: 0
21:41:02.157 -> GPS_CONFIG_FILTER: 1
21:41:02.157 -> CPG_CONFIG_FILTER_MINELEV: 10
21:41:02.157 -> CPG_CONFIG_FILTER_NCNOTHRS: 10
21:41:02.157 -> CPG_CONFIG_FILTER_CNOTHRS: 30
21:41:02.157 -> ALLOW_ROUTE_OUTSIDE_PERI_METER: 1.00
21:41:02.157 -> OBSTACLE_DETECTION_ROTATION: 1
21:41:02.157 -> KIDNAP_DETECT: 1
21:41:02.157 -> KIDNAP_DETECT_ALLOWED_PATH_TOLERANCE: 1.00
21:41:02.157 -> DOCKING_STATION: 1
21:41:02.157 -> DOCK_IGNORE_GPS: 0
21:41:02.157 -> DOCK_AUTO_START: 1
21:41:02.157 -> TARGET_REACHED_TOLERANCE: 0.05
21:41:02.157 -> STANLEY_CONTROL_P_NORMAL: 3.00
21:41:02.157 -> STANLEY_CONTROL_K_NORMAL: 1.00
21:41:02.157 -> STANLEY_CONTROL_P_SLOW: 3.00
21:41:02.157 -> STANLEY_CONTROL_K_SLOW: 0.10
21:41:02.157 -> BUTTON_CONTROL: 1
21:41:02.157 -> USE_TEMP_SENSOR: 0
21:41:02.157 -> BUZZER_ENABLE
21:41:02.157 -> SERIAL_BUFFER_SIZE=1024 (increase if you experience GPS checksum errors)
21:41:02.157 -> -----------------------------------------------------
21:41:02.157 -> UBLOX::begin serial
21:41:02.157 -> using gps driver: UBLOX
21:41:02.157 -> sizeof Point=4
21:41:02.157 -> map dump - mapCRC=0
21:41:02.157 -> points:
21:41:02.157 -> perimeter pts: 0
21:41:02.157 -> exclusion pts: 0
21:41:02.157 -> exclusions: 0
21:41:02.157 -> dock pts: 0
21:41:02.157 -> mow pts: 0
21:41:02.157 -> free pts: 0
21:41:02.157 -> mowPointsIdx=0 dockPointsIdx=0 freePointsIdx=0 wayMode=3
21:41:02.157 -> probing for ESP8266 (NOTE: will fail for ESP32)...
21:41:02.654 -> WIFI (ESP8266) not found! If you have ESP8266 and the problem persist, you may need to flash your ESP to firmware 2.2.171
21:41:02.692 -> MPU9250 found
21:41:02.692 -> using imu driver: MpuDriver
21:41:04.026 -> WARN: PID unmet cycle time Ta=1.86 TaMax=0.10
21:41:04.026 -> WARN: PID unmet cycle time Ta=1.86 TaMax=0.10
21:41:04.130 -> batTemp=998  cpuTemp=32
21:41:04.130 -> ==> changeOp:ImuCalibration(initiatedByOperator 0)->Idle
21:41:04.130 -> IMU gyro calibration (robot must be static)... 1
21:41:04.130 -> 0:0:10 ctlDur=0.00 op=ImuCalibration(initiatedByOperator 0)->Idle freem=245291 sp=200000A4 bat=0.00,0.000(0.00) chg=0.00,0(0.00) diff=0.000 tg=0.00,0.00 x=0.00 y=0.00 delta=0.00 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=10.23
21:41:04.130 -> WARNING - LoopTime: 10225 - 10225 - 102.25 - 10225ms
21:41:05.141 -> IMU gyro calibration (robot must be static)... 2
21:41:06.138 -> IMU gyro calibration (robot must be static)... 3
21:41:07.137 -> IMU gyro calibration (robot must be static)... 4
21:41:07.740 -> sending encryptMode=1 encryptChallenge=10
21:41:08.125 -> IMU gyro calibration (robot must be static)... 5
21:41:09.127 -> 0:0:15 ctlDur=0.02 op=ImuCalibration(initiatedByOperator 0)->Idle freem=244763 sp=200013F4 bat=24.89,0.000(0.01) chg=0.09,0(0.00) diff=-11.510 tg=0.00,0.00 x=0.00 y=0.00 delta=0.00 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=15.23
21:41:09.127 -> IMU gyro calibration (robot must be static)... 6
21:41:10.158 -> IMU gyro calibration (robot must be static)... 7
21:41:10.733 -> COMM CRC ERROR: ;N%M&*r+-
21:41:11.153 -> IMU gyro calibration (robot must be static)... 8
21:41:12.157 -> IMU gyro calibration (robot must be static)... 9
21:41:13.154 -> IMU gyro calibration (robot must be static)... 10
21:41:14.162 -> 0:0:20 ctlDur=0.02 op=ImuCalibration(initiatedByOperator 0)->Idle freem=244763 sp=200013F4 bat=24.89,0.000(0.01) chg=0.10,0(0.00) diff=-19.846 tg=0.00,0.00 x=0.00 y=0.00 delta=0.00 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=20.23
21:41:14.162 -> Info - LoopTime: 6 - 2 - 2.95 - 7ms
21:41:14.162 -> IMU gyro calibration (robot must be static)... 11
21:41:15.137 -> IMU gyro calibration (robot must be static)... 12
21:41:16.172 -> IMU gyro calibration (robot must be static)... 13
21:41:16.745 -> COMM CRC ERROR: ;N%M&*r+-
21:41:17.159 -> IMU gyro calibration (robot must be static)... 14
21:41:18.146 -> IMU gyro calibration (robot must be static)... 15
21:41:18.218 -> ==> changeOp:Idle(initiatedByOperator 0)
21:41:18.218 -> OP_IDLE
21:41:19.149 -> 0:0:25 ctlDur=0.02 op=Idle(initiatedByOperator 0) freem=244763 sp=200013F4 bat=24.89,0.000(0.01) chg=0.08,0(0.00) diff=-22.958 tg=0.00,0.00 x=0.00 y=0.00 delta=-0.26 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=25.23
21:41:22.727 -> COMM CRC ERROR: ;N%M&*r+-
21:41:24.138 -> 0:0:30 ctlDur=0.02 op=Idle(initiatedByOperator 0) freem=244763 sp=200013F4 bat=24.89,0.000(0.02) chg=0.08,0(0.00) diff=-24.116 tg=0.00,0.00 x=0.00 y=0.00 delta=-0.26 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=30.23
21:41:24.175 -> Info - LoopTime: 6 - 2 - 2.94 - 53ms
21:41:28.733 -> COMM CRC ERROR: ;N%M&*r+-
21:41:29.168 -> 0:0:35 ctlDur=0.02 op=Idle(initiatedByOperator 0) freem=244763 sp=200013F4 bat=24.90,0.000(0.02) chg=0.09,0(0.00) diff=-24.551 tg=0.00,0.00 x=0.00 y=0.00 delta=-0.25 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=35.23
21:41:34.153 -> 0:0:40 ctlDur=0.02 op=Idle(initiatedByOperator 0) freem=244763 sp=200013F4 bat=24.89,0.000(0.02) chg=0.10,0(0.00) diff=-24.711 tg=0.00,0.00 x=0.00 y=0.00 delta=-0.25 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=40.24
21:41:34.153 -> Info - LoopTime: 3 - 2 - 2.92 - 4ms
21:41:34.717 -> COMM CRC ERROR: ;N%M&*r+-
21:41:39.171 -> 0:0:45 ctlDur=0.02 op=Idle(initiatedByOperator 0) freem=244763 sp=200013F4 bat=24.89,0.000(0.02) chg=0.09,0(0.00) diff=-24.772 tg=0.00,0.00 x=0.00 y=0.00 delta=-0.25 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=45.24
21:41:40.738 -> COMM CRC ERROR: ;N%M&*r+-
21:41:43.328 -> BUTTON 1s
21:41:44.181 -> 0:0:50 ctlDur=0.02 op=Idle(initiatedByOperator 0) freem=244763 sp=200013F4 bat=24.89,-0.000(0.02) chg=0.10,0(0.00) diff=-24.795 tg=0.00,0.00 x=0.00 y=0.00 delta=-0.26 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=50.24
21:41:44.181 -> Info - LoopTime: 7 - 2 - 2.96 - 7ms
21:41:44.329 -> BUTTON 2s
21:41:45.347 -> BUTTON 3s
21:41:46.167 -> stateButton 3
21:41:46.743 -> COMM CRC ERROR: ;N%M&*r+-
21:41:49.170 -> 0:0:55 ctlDur=0.02 op=Idle(initiatedByOperator 0) freem=244763 sp=200013F4 bat=24.89,0.000(0.02) chg=0.08,0(0.00) diff=-24.803 tg=0.00,0.00 x=0.00 y=0.00 delta=-0.25 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=55.24
21:41:49.311 -> BUTTON 1s
21:41:50.120 -> stateButton 1
21:41:52.732 -> COMM CRC ERROR: ;N%M&*r+-
21:41:54.193 -> 0:1:0 ctlDur=0.02 op=Idle(initiatedByOperator 0) freem=244763 sp=200013F4 bat=24.89,0.000(0.02) chg=0.09,0(0.00) diff=-24.810 tg=0.00,0.00 x=0.00 y=0.00 delta=-0.25 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=60.24
21:41:54.193 -> Info - LoopTime: 6 - 2 - 2.94 - 6ms
21:41:54.694 -> BUTTON 1s
21:41:54.729 -> COMM CRC ERROR: ;N%N&*r+.
21:41:55.681 -> BUTTON 2s
21:41:55.993 -> stateButton 2
21:41:58.743 -> COMM CRC ERROR: ;N%M&*r+-
21:41:59.202 -> 0:1:5 ctlDur=0.02 op=Idle(initiatedByOperator 0) freem=244763 sp=200013F4 bat=24.89,0.000(0.02) chg=0.09,0(0.00) diff=-24.811 tg=0.00,0.00 x=0.00 y=0.00 delta=-0.25 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=65.25
21:42:00.454 -> BUTTON 1s
21:42:00.669 -> stateButton 1
21:42:00.743 -> COMM CRC ERROR: ;N%N&*r+.
21:42:00.881 -> BUTTON 1s
21:42:01.061 -> stateButton 1
21:42:04.160 -> batTemp=998  cpuTemp=32
21:42:04.160 -> WARN: PID unmet cycle time Ta=0.13 TaMax=0.10
21:42:04.160 -> WARN: PID unmet cycle time Ta=0.13 TaMax=0.10
21:42:04.194 -> 0:1:10 ctlDur=0.02 op=Idle(initiatedByOperator 0) freem=244763 sp=200000A4 bat=24.89,-0.000(0.02) chg=0.07,0(0.00) diff=-24.807 tg=0.00,0.00 x=0.00 y=0.00 delta=-0.25 tow=0 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=70.25
21:42:04.194 -> Info - LoopTime: 5 - 2 - 3.87 - 105ms
21:42:04.716 -> COMM CRC ERROR: ;N%M&*r+-
21:42:06.737 -> COMM CRC ERROR: ;N%N&*r+.
 
vielleicht hilft die esp32 Serial Konsole als Hinweis. Offensichtlich gibt es einen Fehler weil der watchdog reagiert.

Code:
22:40:45.631 -> A⸮Ց>4Y⸮⸮0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
22:40:45.631 -> mode:DIO, clock div:1
22:40:45.631 -> load:0x3fff0018,len:4
22:40:45.631 -> load:0x3fff001c,len:1216
22:40:45.631 -> ho 0 tail 12 room 4
22:40:45.631 -> load:0x40078000,len:10944
22:40:45.631 -> load:0x40080400,len:6388
22:40:45.631 -> entry 0x400806b4
22:40:45.665 -> ESP32 firmware V0.4.5,Bluetooth V4.0 LE
22:40:45.665 -> Configuring WDT...
22:40:45.665 -> starting BLE...
22:40:45.847 -> using NimBLE library
22:40:45.880 -> Waiting a BLE client connection to notify...
22:40:45.880 -> 299 ping
22:40:46.374 -> Attempting to connect to WPA SSID: Seb 2,4GHz
22:40:46.374 -> using dynamic IP
22:40:49.696 -> You're connected with SSID=xxx and IP=192.168.xx.xxx
22:40:49.696 -> Default Memory:       free size:   127852 bytes   largest free block:   113792
22:40:49.730 -> Internal 8bit Memory: free size:   127852 bytes   largest free block:   113792
22:40:49.730 -> starting HTTPS server
22:40:50.756 -> 5189 ping
22:40:52.764 -> 7207 ping
22:40:54.829 -> 9252 ping
22:41:56.851 -> E (72309) task_wdt: Task watchdog got triggered. The following tasks did not reset the watchdog in time:
22:41:56.884 -> E (72309) task_wdt:  - loopTask (CPU 1)
22:41:56.884 -> E (72309) task_wdt: Tasks currently running:
22:41:56.884 -> E (72309) task_wdt: CPU 0: IDLE0
22:41:56.884 -> E (72309) task_wdt: CPU 1: loopTask
22:41:56.884 -> E (72309) task_wdt: Aborting.
22:41:56.884 -> abort() was called at PC 0x4016d78c on core 0
22:41:56.884 ->
22:41:56.884 -> ELF file SHA256: 0000000000000000
22:41:56.884 ->
22:41:56.884 -> Backtrace: 0x4008f5ec:0x3ffc0130 0x4008f869:0x3ffc0150 0x4016d78c:0x3ffc0170 0x4008dccd:0x3ffc0190 0x401be687:0x3ffbd270 0x4016f057:0x3ffbd290 0x40092029:0x3ffbd2b0 0x4009087a:0x3ffbd2d0
22:41:56.918 ->
22:41:56.918 -> Rebooting...
22:41:56.918 -> ets Jun  8 2016 00:22:57
22:41:56.918 ->
22:41:56.918 -> rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
22:41:56.918 -> configsip: 0, SPIWP:0xee
22:41:56.918 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
22:41:56.918 -> mode:DIO, clock div:1
22:41:56.955 -> load:0x3fff0018,len:4
22:41:56.955 -> load:0x3fff001c,len:1216
22:41:56.955 -> ho 0 tail 12 room 4
22:41:56.955 -> load:0x40078000,len:10944
22:41:56.955 -> load:0x40080400,len:6388
22:41:56.955 -> entry 0x400806b4
22:41:57.372 -> ESP32 firmware V0.4.5,Bluetooth V4.0 LE
22:41:57.372 -> Configuring WDT...
22:41:57.372 -> starting BLE...
22:41:57.614 -> using NimBLE library
22:41:57.647 -> Waiting a BLE client connection to notify...
 
Bei mir wurden die COMM CRCs meist von der Connection zwischen PCB und ESP32 ausgelöst.
Da würde ich als erstes mal schauen ob alle Verbindungen gut sind und die Kabel weder zu lang, noch irgendwo direkt an Motoren oder Stromkabeln vorbei gehen.

Kann man auch ganz gut prüfen wenn man in der App mal händisch fährt, dann sollten als Reaktion meist vermehrt diese CRCs kommen.
 
Muss ich mir am Wochenende mal genauer anschauen. Eigentlich lief die Verbindung vor dem Winter bereits.
 
es funktioniert leider überhaupt nicht. Die App connected, aber im Log findet sich überhaupt nix ausser sporadisch der COMM CRC Error.

IMG_3E7A03017278-1.jpegBildschirmfoto 2023-07-07 um 22.14.54.png
 
Oben