diff --git a/pushtape_core/pushtape_core.module b/pushtape_core/pushtape_core.module
index a1f152d..9677c40 100644
--- a/pushtape_core/pushtape_core.module
+++ b/pushtape_core/pushtape_core.module
@@ -91,12 +119,12 @@ function pushtape_core_form_alter(&$form, &$form_state, $form_id) {
  */
 function pushtape_core_track_node_form_validate($form, &$form_state) {
   /* We need to force an album here. */
-  if ($form['field_album_checkbox']['#value'] == 1 && empty($form_state['values']['new_album']) && !is_numeric($form_state['values']['field_album'][LANGUAGE_NONE][0]['nid'])) {
+  if ($form['field_album_checkbox']['#value'] == 1 && empty($form_state['values']['new_album']) && !is_numeric($form_state['values']['field_album'][LANGUAGE_NONE][0]['target_id'])) {
     form_set_error('new_album', t('Please enter a name for your new album.'));
   }
   if ($form['field_album_checkbox']['#value'] == 0) {
     $form_state['values']['new_album'] = '';
-    $form_state['values']['field_album'][LANGUAGE_NONE][0]['nid'] = '';
+    $form_state['values']['field_album'][LANGUAGE_NONE][0]['target_id'] = '';
   }
 }
 
@@ -118,17 +146,17 @@ function pushtape_core_track_node_form_submit($form, &$form_state) {
     $node->uid = $user->uid;
     $node->language = LANGUAGE_NONE;
     $node->pathauto_perform_alias = FALSE;
-    $node->field_tracklist[LANGUAGE_NONE][0]['nid'] = $form_state['nid'];
+    $node->field_tracklist[LANGUAGE_NONE][0]['target_id'] = $form_state['nid'];
     // This function operates by reference on our node object, and will add $node->nid.
     node_save($node);
     // Now associate the track with the new album and redirect to it after saving the track.
     $track = node_load($form_state['nid']);
-    $track->field_album[LANGUAGE_NONE][0]['nid'] = $node->nid;
+    $track->field_album[LANGUAGE_NONE][0]['target_id'] = $node->nid;
     node_save($track);
     unset($form_state['rebuild']);
     $form_state['redirect'] = 'node/' . $node->nid . '/edit';
   }
-  elseif ($form_state['values']['field_album_previous_value'] != $form_state['values']['field_album'][LANGUAGE_NONE][0]['nid']) {
+  elseif ($form_state['values']['field_album_previous_value'] != $form_state['values']['field_album'][LANGUAGE_NONE][0]['target_id']) {
     $track_id = $form_state['nid'];
     // Delete from previous album, if there was one.
     if ($form_state['values']['field_album_previous_value'] > 0) {
@@ -144,7 +172,7 @@ function pushtape_core_track_node_form_submit($form, &$form_state) {
     }
     // Add to this album
     if ($form['field_album_checkbox']['#value'] == 1) {
-      $this_album = node_load($form_state['values']['field_album'][LANGUAGE_NONE][0]['nid']);
+      $this_album = node_load($form_state['values']['field_album'][LANGUAGE_NONE][0]['target_id']);
       $delta = !empty($this_album->field_tracklist) ? count($this_album->field_tracklist[LANGUAGE_NONE]) : 0;
       if ($delta > 0) {
         // Avoid duplicates
@@ -306,15 +334,15 @@ function pushtape_core_node_load($nodes, $types) {
   foreach ($nodes as $node) {
     if ($node->type == 'track') {
       if (!empty($node->field_album)) {
-        $album = node_load($node->field_album[LANGUAGE_NONE][0]['nid']);
+        $album = node_load($node->field_album[LANGUAGE_NONE][0]['target_id']);
         $pushtape_core_override = array();
         if (empty($node->field_artwork)) {
           $node->field_artwork = $album->field_artwork;
           $pushtape_core_override[] = 'field_artwork';
         }
@@ -349,7 +377,7 @@ function pushtape_core_field_formatter_info() {
       // the label is is what is displayed in the select box in the UI.
       'label' => t('Ordered list of linked titles'),
       // field types is the important bit!! List the field types your formatter is for.
-      'field types' => array('node_reference'),
+      'field types' => array('entityreference'),
     ),
   );
 }
@@ -374,4 +402,4 @@ function pushtape_core_field_formatter_view($entity_type, $entity, $field, $inst
       break;
   }
   return $element;
-}
\ No newline at end of file
+}
diff --git a/pushtape_music/pushtape_music.features.field.inc b/pushtape_music/pushtape_music.features.field.inc
index 6ab06d0..42152a4 100644
--- a/pushtape_music/pushtape_music.features.field.inc
+++ b/pushtape_music/pushtape_music.features.field.inc
@@ -402,34 +454,42 @@ function pushtape_music_field_default_fields() {
       'entity_types' => array(),
       'field_name' => 'field_tracklist',
       'foreign keys' => array(
-        'nid' => array(
+        'node' => array(
           'columns' => array(
-            'nid' => 'nid',
+            'target_id' => 'nid',
           ),
           'table' => 'node',
         ),
       ),
       'indexes' => array(
-        'nid' => array(
-          0 => 'nid',
+        'target_id' => array(
+          0 => 'target_id',
         ),
       ),
-      'module' => 'node_reference',
+      'module' => 'entityreference',
       'settings' => array(
-        'referenceable_types' => array(
-          'album' => 0,
-          'page' => 0,
-          'panel' => 0,
-          'track' => 'track',
-        ),
-        'view' => array(
-          'args' => array(),
-          'display_name' => '',
-          'view_name' => '',
+        'handler' => 'base',
+        'handler_settings' => array(
+          'behaviors' => array(
+            'views-select-list' => array(
+              'status' => 0,
+            ),
+          ),
+          'sort' => array(
+            'direction' => 'ASC',
+            'field' => 'body:value',
+            'property' => 'nid',
+            'type' => 'none',
+          ),
+          'target_bundles' => array(
+            'track' => 'track',
+          ),
         ),
+        'handler_submit' => 'Change handler',
+        'target_type' => 'node',
       ),
       'translatable' => '0',
-      'type' => 'node_reference',
+      'type' => 'entityreference',
     ),
     'field_instance' => array(
       'bundle' => 'album',
@@ -439,10 +499,18 @@ function pushtape_music_field_default_fields() {
       'display' => array(
         'default' => array(
           'label' => 'above',
-          'module' => 'pushtape',
+          'module' => 'entityreference',
+          'settings' => array(
+            'link' => FALSE,
+          ),
+          'type' => 'entityreference_label',
+          'weight' => 7,
+        ),
+        'featured' => array(
+          'label' => 'above',
           'settings' => array(),
-          'type' => 'pushtape_ol_view',
-          'weight' => '1',
+          'type' => 'hidden',
+          'weight' => 0,
         ),
         'full' => array(
           'label' => 'hidden',
@@ -461,13 +535,13 @@ function pushtape_music_field_default_fields() {
       ),
       'widget' => array(
         'active' => 1,
-        'module' => 'node_reference',
+        'module' => 'entityreference',
         'settings' => array(
-          'autocomplete_match' => 'contains',
-          'autocomplete_path' => 'node_reference/autocomplete',
-          'size' => 60,
+          'match_operator' => 'CONTAINS',
+          'path' => '',
+          'size' => '60',
         ),
-        'type' => 'node_reference_autocomplete',
+        'type' => 'entityreference_autocomplete',
         'weight' => '1',
       ),
     ),
@@ -563,35 +643,42 @@ function pushtape_music_field_default_fields() {
       'entity_types' => array(),
       'field_name' => 'field_album',
       'foreign keys' => array(
-        'nid' => array(
+        'node' => array(
           'columns' => array(
-            'nid' => 'nid',
+            'target_id' => 'nid',
           ),
           'table' => 'node',
         ),
       ),
       'indexes' => array(
-        'nid' => array(
-          0 => 'nid',
+        'target_id' => array(
+          0 => 'target_id',
         ),
       ),
-      'module' => 'node_reference',
+      'module' => 'entityreference',
       'settings' => array(
-        'referenceable_types' => array(
-          'album' => 'album',
-          'article' => 0,
-          'page' => 0,
-          'panel' => 0,
-          'track' => 0,
-        ),
-        'view' => array(
-          'args' => array(),
-          'display_name' => '',
-          'view_name' => '',
+        'handler' => 'base',
+        'handler_settings' => array(
+          'behaviors' => array(
+            'views-select-list' => array(
+              'status' => 0,
+            ),
+          ),
+          'sort' => array(
+            'direction' => 'ASC',
+            'field' => 'body:value',
+            'property' => 'nid',
+            'type' => 'none',
+          ),
+          'target_bundles' => array(
+            'album' => 'album',
+          ),
         ),
+        'handler_submit' => 'Change handler',
+        'target_type' => 'node',
       ),
-      'translatable' => '1',
-      'type' => 'node_reference',
+      'translatable' => '0',
+      'type' => 'entityreference',
     ),
     'field_instance' => array(
       'bundle' => 'track',
@@ -600,11 +687,19 @@ function pushtape_music_field_default_fields() {
       'description' => '',
       'display' => array(
         'default' => array(
-          'label' => 'inline',
-          'module' => 'node_reference',
+          'label' => 'above',
+          'module' => 'entityreference',
+          'settings' => array(
+            'link' => FALSE,
+          ),
+          'type' => 'entityreference_label',
+          'weight' => 12,
+        ),
+        'featured' => array(
+          'label' => 'above',
           'settings' => array(),
-          'type' => 'node_reference_default',
-          'weight' => '3',
+          'type' => 'hidden',
+          'weight' => 0,
         ),
         'full' => array(
           'label' => 'inline',
@@ -631,63 +726,67 @@ function pushtape_music_field_default_fields() {
         'active' => 1,
         'module' => 'options',
         'settings' => array(
-          'autocomplete_match' => 'contains',
-          'autocomplete_path' => 'node_reference/autocomplete',
-          'size' => 60,
+          'match_operator' => 'CONTAINS',
+          'path' => '',
+          'size' => '60',
         ),
         'type' => 'options_select',
-        'weight' => '2',
+        'weight' => '1',
       ),
     ),
   );

