I have found a bug in the CortexGripper class on line 153
# Process the command, but clear it as well so future steps are aborted until a new
# command is sent.
self.articulation_subset.apply_action(joint_positions=self.width_to_joints(self.command.width))
self.command = None
self.command
is a property and as such can not bet set to None if the user provide a speed of None. Commenting the line solves the problem and does not create any additional bug