Interbotix / HROS1-Framework

HR-OS1 Framework, based on the Darwin-OP project. Intended for use on HR-OS1 Humanoid Robot platforms.
http://www.trossenrobotics.com/HR-OS1
GNU General Public License v3.0
54 stars 40 forks source link

Gyro and Accel readings are incorrect #11

Closed r3n33 closed 8 years ago

r3n33 commented 9 years ago

Verified on multiple HR-OS1's using the Arbotix Pro by running walk_tuner, entering the command: mon, and tipping the robot:

Accel F/B and L/R are swapped Gyro L/R or F/B was inverted I forget which off hand.

A fix for this exists in my experimentation branch. https://github.com/r3n33/HROS1-Framework/commit/f93f65e7693e24313424c0fadae1548a0ed43e9c

KurtE commented 9 years ago

It would be great if a fix was pulled into the main branch. Wonder if the fix may need to be firmware version specific?

That is long term should the fix be in the usage here or should the Arbotix-Pro firmware be updated to be compatible with CM730?

KurtE commented 8 years ago

Again it would be good to know if the firmware on the two betas are the same and if the firmware is going to be updated.

But: I believe that part of this is at least temporarily resolved by a couple of commits that happened about 11 days ago.

In: the commit: https://github.com/Interbotix/HROS1-Framework/commit/b6f36250b3076c4493f7ce8313fee00796a07246

In cm730.h - A couple of registers changed index numbers:

(i.e. swapped the positions of X and y in the registers.

And then in the commit: https://github.com/Interbotix/HROS1-Framework/commit/c8ca038d7ba3b3a7333e79b8ca7c6fe3a6435c48 the value of one of the registers was inverted...

MotionStatus::FB_ACCEL = 1024 - m_CM730->m_BulkReadData[CM730::ID_CM].ReadWord(CM730::P_ACCEL_Y_L);

Wonder if this is the final fix?

DerelictRobot commented 8 years ago

That was the fix, the firmware didn't need updating as X & Y ACC is remapped on the Arbotix-Pro vs CM730