Low bandwidth setting
Bandwidth is not set to very low value, causing data is being heavily filtered. The lowest bandwidth setting is 25Hz, which causes heavy data filtering. Values may seem to be constant when viewed with rostopic.
On new C-turtle release, current bandwidth setting value can be viewed with diagnostics. The best way to view diagnostics is with pr2_dashboard.
On older systems, the bandwidth value is only available to controllers. Older software also defaulted to lowest bandwidth setting.
Upgrade software. Also, there might be a controller that is changing bandwidth value.
Accelerometer interrupt stays asserted
The accelerometer has been know to go into bad state where it always interrupt stays asserted. The interrupt notifies controller that a new sample is available. If interrupt stays asserted, the controller board to constantly read from accelerometer data believing it has a new sample.
Gripper firmware only buffer 4 most recent samples. When data is viewed with rostopic there is always 4 new samples instead of an average of 3.
header: seq: 14080967 stamp: secs: 1282097599 nsecs: 640504013 frame_id: l_gripper_motor_accelerometer_link samples: - x: -9.04359375 y: -3.2572265625 z: -0.843046875 - x: -9.04359375 y: -3.2572265625 z: -0.843046875 - x: -9.04359375 y: -3.2572265625 z: -0.843046875 - x: -9.04359375 y: -3.2572265625 z: -0.843046875
New diagnostics software will use the sample counter to monitor the accelerometer sampling rate. When the issue occurs the sampling rate will be around 40kHz. The diagnostics will produce the warning Bad accelerometer sampling frequency.
Older software and firmware would allow invalid bandwidth setting that would trigger this issue. Even with newer firmware and software, this still sometimes occurs. This is still under investigation.
The current solution is to power-cycle to right/left arm with the problematic gripper accelerometer. This can be easy be done through the dashboard by selecting Disable then selecting Enable. The software will need to be restarted after power-cycling.
Accelerometer values don't change (much)
When viewing or plotting accelerometer data there does not seem to much high frequency content.
There's a couple possible causes for this
- Low bandwidth setting causing data to be heavily filtered.
- Accelerometer interrupt stays asserted. Effectively causing sample accelerometer data to be read many times.