Yes here it is. It is already adapted for pieregister. But if you use a diffrent add_action you can start the function otherwise
// Function to add expiry on registration to a user role $current_user->ID
function new_registerd_member( $user ) {
//$current_user = wp_get_current_user();
//$user = new WP_User( $current_user->ID );
// Remove role
//$user->remove_role( 'subscriber' );
// Add role
//$user->add_role( 'mycustomrole' );
// This adds the expire user stuff to the role posible date_in_block 'years' 'months' 'weeks' 'days'
global $expire_users;
$expire_settings = $expire_users->admin->settings->get_default_expire_settings();
$expire_data = array(
'expire_user_date_type' => $expire_settings['expire_user_date_type'],
'expire_user_date_in_num' => 1,
'expire_user_date_in_block' => 'months',
'expire_user_date_on_timestamp' => $expire_settings['expire_timestamp'],
'expire_user_role' => $expire_settings['expire_user_role'],
'expire_user_reset_password' => $expire_settings['expire_user_reset_password'],
'expire_user_email' => $expire_settings['expire_user_email'],
'expire_user_email_admin' => $expire_settings['expire_user_email_admin'],
'expire_user_remove_expiry' => $expire_settings['expire_user_remove_expiry']
);
$user = new Expire_User( $user->ID );
$user->set_expire_data( $expire_data );
$user->save_user();
}
add_action( 'pie_register_after_register_validate', 'new_registerd_member', 10,1 );
Hope this helps