diff --git a/multistep.module b/multistep.module
index cdd72f2..09eacd2 100644
--- a/multistep.module
+++ b/multistep.module
@@ -352,6 +352,7 @@ function multistep_field_attach_form($entity_type, $entity, &$form, &$form_state
       '#submit' => array('node_form_submit', 'multistep_submit'),
       '#weight' => -999,
       '#access' => variable_get('multistep_button_prev', TRUE),
+      '#limit_validation_errors' => array(),
     );
   }
   $form['actions']['save'] = array(
@@ -362,11 +363,13 @@ function multistep_field_attach_form($entity_type, $entity, &$form, &$form_state
     '#access' => variable_get('multistep_button_save', TRUE),
   );
   if ($step != multistep_get_last($entity)) {
+    $group_children = array_map('_multistep_array_wrap', $form['#groups'][$step]->children);
     $form['actions']['next'] = array(
       '#type' => 'submit',
       '#value' => variable_get('multistep_button_next', t('Next >')),
       '#submit' => array('node_form_submit', 'multistep_submit'),
       '#weight' => 999,
+      '#limit_validation_errors' => $group_children,
     );
   }
   else {
@@ -385,6 +388,10 @@ function multistep_field_attach_form($entity_type, $entity, &$form, &$form_state
   }*/
 }
 
+function _multistep_array_wrap($item) {
+  return array($item);
+}
+
 /**
  * Implements hook_node_validate().
  * Set proper revisioning and publishing.
