Solaar/lib/logitech/unifying_receiver/devices.py

67 lines
1.5 KiB
Python

#
#
#
from collections import namedtuple
_DeviceDescriptor = namedtuple('_DeviceDescriptor',
['name', 'kind', 'codename', 'settings'])
DEVICES = {}
def _D(name, codename=None, kind=None):
if kind is None:
kind = ('mouse' if 'Mouse' in name
else 'keyboard' if 'Keyboard' in name
else 'touchpad' if 'Touchpad' in name
else 'trackball' if 'Trackball' in name
else None)
assert kind is not None
if codename is None:
codename = name.split(' ')[-1]
assert codename is not None
DEVICES[codename] = _DeviceDescriptor(name, kind, codename, None)
_D('Wireless Mouse M315')
_D('Wireless Mouse M325')
_D('Wireless Mouse M505')
_D('Wireless Mouse M510')
_D('Couch Mouse M515')
_D('Wireless Mouse M525')
_D('Wireless Trackball M570')
_D('Touch Mouse M600')
_D('Marathon Mouse M705')
_D('Wireless Keyboard K270')
_D('Wireless Keyboard K350')
_D('Wireless Keyboard K360')
_D('Wireless Touch Keyboard K400')
_D('Wireless Solar Keyboard K750')
_D('Wireless Illuminated Keyboard K800')
_D('Zone Touch Mouse T400')
_D('Wireless Rechargeable Touchpad T650')
_D('Logitech Cube', kind='mouse')
_D('Anywhere Mouse MX', codename='Anywhere MX')
_D('Performance Mouse MX', codename='Performance MX')
# DPI=(0x64, {0x80: 100,
# 0x81: 200,
# 0x82: 300,
# 0x83: 400,
# 0x84: 500,
# 0x85: 600,
# 0x86: 800,
# 0x87: 900,
# 0x88: 1000,
# 0x89: 1100,
# 0x8A: 1200,
# 0x8B: 1300,
# 0x8C: 1400,
# 0x8D: 1500}),
# Leds=(0x51, {}),
del _D
del _DeviceDescriptor
del namedtuple