def find_twin(device_id, device_list):
    """
    Locate the emulated twin of source device with identifier device_id.

    Parameters
    ----------
    device_id : str
        Identifier of original device for which the twin is located.
    device_list : list
        List of device dictionaries in project fetched by the API.

    Returns
    -------
    twin : dict
        Dictionary of device information for located twin.
        Returns None if no twin were found.

    """

    # iterate devices
    for device in device_list:
        # skip non-emulated devices
        if not device['name'].split('/')[-1].startswith('emu'):
            continue

        # check if device_id label exists and matches
        if 'original_device_id' in device['labels'].keys() and device['labels']['original_device_id'] == device_id:
            print('-- Located twin [{}].'.format(device['labels']['name']))
            return device

    # no twin found
    return None