diff --git a/lib/logitech_receiver/device.py b/lib/logitech_receiver/device.py index 3c345aad..627701fc 100644 --- a/lib/logitech_receiver/device.py +++ b/lib/logitech_receiver/device.py @@ -198,6 +198,8 @@ class Device(object): if not self._codename: if self.online and self.protocol >= 2.0: self._codename = _hidpp20.get_friendly_name(self) + if not self._codename: + self._codename = self.name.split(' ', 1)[0] if self.name else None elif self.receiver: codename = self.receiver.read_register(_R.receiver_info, _IR.device_name + self.number - 1) if codename: @@ -213,7 +215,7 @@ class Device(object): if not self._name: if self.online and self.protocol >= 2.0: self._name = _hidpp20.get_name(self) - return self._name or self.codename or ('Unknown device %s' % (self.wpid or self.product_id)) + return self._name or self._codename or ('Unknown device %s' % (self.wpid or self.product_id)) @property def unitId(self): diff --git a/lib/solaar/cli/show.py b/lib/solaar/cli/show.py index 8f6b4645..9d4848fb 100644 --- a/lib/solaar/cli/show.py +++ b/lib/solaar/cli/show.py @@ -208,6 +208,8 @@ def _print_device(dev, num=None): elif feature == _hidpp20.FEATURE.DEVICE_NAME: print(' Name: %s' % _hidpp20.get_name(dev)) print(' Kind: %s' % _hidpp20.get_kind(dev)) + elif feature == _hidpp20.FEATURE.DEVICE_FRIENDLY_NAME: + print(' Friendly Name: %s' % _hidpp20.get_friendly_name(dev)) elif feature == _hidpp20.FEATURE.DEVICE_FW_VERSION: for fw in _hidpp20.get_firmware(dev): extras = _strhex(fw.extras) if fw.extras else ''