Skip to content

Conversation

@rjgriffin42
Copy link
Member

No description provided.

rjgriffin42 and others added 6 commits November 17, 2025 21:56
* started working on a fix for pelvis rotationd elays

* rolled back on how the time in the phase is found, and started adding a decay factor so the feedforward values dont go to the moon

* fixed a bound inclusiveness problem
#1105)

* added some changes to prefer previous reachable regions to yield more consistent, smoother results

* reverted line change

---------

Co-authored-by: Nick Kitchel <59104880+PotatoPeeler3000@users.noreply.github.com>
Co-authored-by: Nick Kitchel <59104880+PotatoPeeler3000@users.noreply.github.com>
Co-authored-by: Nick Kitchel <59104880+PotatoPeeler3000@users.noreply.github.com>
* Make ROS2HeartbeatMonitor garbage free

* Add heartbeats to CSG objects

* Added destroy method to CSGROS2CommunicationHelper and cleaned up usage in the panel

---------

Co-authored-by: Alexander OCU <rosie@ihmc.org>
Co-authored-by: Nick Kitchel <59104880+PotatoPeeler3000@users.noreply.github.com>
return true;
}

private RobotSide getSideCarryingMostWeight(Footstep leftFootstep, Footstep rightFootstep)
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is copied from transfer to standing.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not sure how critical this method is and how important it is to accurately estimate the side with the most weight, but you can probably do a more accurate load comparison by using controllerToolbox.getFootSwitches().get(side).getMeasuredWrench().getLinearPartZ().

supportingSide = getSideCarryingMostWeight(footstepLeft, footstepRight);
supportingSide = supportingSide == null ? RobotSide.LEFT : supportingSide;

TransferToAndNextFootstepsData transferToAndNextFootstepsDataForDoubleSupport = walkingMessageHandler.createTransferToAndNextFootstepDataForDoubleSupport(supportingSide.getOppositeSide());
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

as it was, the hard coding didn't work well when the left foot led.

extraToeOffHeight = feetManager.getExtraCoMMaxHeightWithToes();

TransferToAndNextFootstepsData transferToAndNextFootstepsDataForDoubleSupport = walkingMessageHandler.createTransferToAndNextFootstepDataForDoubleSupport(supportingSide);
TransferToAndNextFootstepsData transferToAndNextFootstepsDataForDoubleSupport = walkingMessageHandler.createTransferToAndNextFootstepDataForDoubleSupport(supportingSide.getOppositeSide());
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Switched size, based on what I saw in the test.

PotatoPeeler3000 and others added 3 commits November 18, 2025 09:58
* fixed the reachability constraint return

* properly reset the feedback conditions for the ICP feedback
Base automatically changed from demo/alex-nov-2025 to develop November 21, 2025 20:22
# Conflicts:
#	ihmc-common-walking-control-modules/src/main/java/us/ihmc/commonWalkingControlModules/highLevelHumanoidControl/plugin/CSGROS2CommunicationHelper.java
#	ihmc-common-walking-control-modules/src/main/java/us/ihmc/commonWalkingControlModules/highLevelHumanoidControl/plugin/StepGeneratorCommandInputManager.java
#	ihmc-high-level-behaviors/src/libgdx/java/us/ihmc/rdx/csg/RDXCSGPanel.java
// by the "from" foot, as the
// way the phase variable works means we can approach what is meant to be swing on the "to" foot while still in the "from" foot.
if (Math.abs(transferToPosition.getX()) < 0.1 && endGroundHeight > startGroundHeight)
if (Math.abs(transferToPosition.getX()) < 0.1 && endGroundHeight > startGroundHeight && transferToPosition.getZ() > transferFromPosition.getZ() + 0.05)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

0.1 and 0.05 are hard coded values. Need to look at what they actually mean and change it to a variable name

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed to have names describing the variables

}
}

public void testSpecialStairs(boolean goingUp,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you add a description to this test that indicates what makes these stairs special

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

their mama told them they were special, stefan. That's all you need to know.

if (holdDesiredHeightConstantWhenStanding)
{
comHeightManager.initializeToNominalDesiredHeight();
supportingSide = RobotSide.LEFT;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does Standing mean the doubleSupport?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it is double support, yes. I'm not completely sure why it used the nomenclature supportSide, but it does

Footstep footstepRight = walkingMessageHandler.getFootstepAtCurrentLocation(RobotSide.RIGHT);
RobotSide supportingSide = getSideCarryingMostWeight(footstepLeft, footstepRight);
supportingSide = getSideCarryingMostWeight(footstepLeft, footstepRight);
supportingSide = supportingSide == null ? RobotSide.RIGHT : supportingSide;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should the default be LEFT since that is usually our convention

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In this case, I don't really want to change what's there, since I'm worried about the other ramifications of that.

Copy link
Contributor

@stefanfasano stefanfasano left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Make sure to test on robot before merge, since minor controller conditions/heuristics were added/changed

@rjgriffin42 rjgriffin42 merged commit 5467a96 into develop Dec 16, 2025
65 of 67 checks passed
@rjgriffin42 rjgriffin42 deleted the feature/fix_height branch December 16, 2025 18:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants