Empty field collection in hook_node_presave with entity_metadata_wrapper
By this way as per this post:

/**
 * Implementation of hook_node_presave.
 */
function mymodule_node_presave($node) {
  if ($node -&gt; type == 'my_type') {
    $field_field_collection = field_get_items('node', $node, 'field_field_collection');
    foreach ($field_field_collection as $key =&gt; $value) {
      $fc_wrapper = entity_metadata_wrapper('field_collection_item', $value['entity']);
      $fc_name = $fc_wrapper -&gt; field_field_collection_name -&gt; value();
      dsm($fc_name);
    }
  }
}


See: Understanding Field Collection Values and Entity metadata wrappers pages.