Daniel Pavel
9a2a28e0aa
replaced hard-coded register numbers with constants
...
also re-worked the battery reading code a bit
2013-07-02 12:23:12 +02:00
Daniel Pavel
bf5fc42f07
fixed duplicate entries in keyboard tasks
2013-07-02 00:40:34 +02:00
Daniel Pavel
90ab7af069
Anywhere MX and M600 descriptor updates
2013-07-01 19:22:46 +02:00
Daniel Pavel
3436055c7f
re-worked (AGAIN) the way the devices are initially set-up
...
There is absolutely no consistency between the registers and
features receivers have, even if they're the same product_id!
2013-07-01 19:00:26 +02:00
Daniel Pavel
5ebc2634ae
(hopefully) better serial read-out for devices
2013-07-01 18:40:03 +02:00
Daniel Pavel
ceba698678
moved settings templates into separate .py
2013-07-01 15:24:30 +02:00
Daniel Pavel
eaa38c858c
properly format battery status string for 0x07 devices
2013-07-01 11:51:20 +02:00
Daniel Pavel
4504045bc6
extended descriptor for M305
2013-07-01 11:49:44 +02:00
Daniel Pavel
9a8d089c73
handle some mystery data packets from older devices
2013-07-01 11:34:54 +02:00
Daniel Pavel
0d56cfbded
clean-up in get/set notification flags computation
2013-06-30 17:12:44 +02:00
Daniel Pavel
a1c04ce39f
renamed 'leds' register to '3leds', in case other may be found later
2013-06-30 15:02:58 +02:00
Daniel Pavel
da541e000a
put usb ids into separate py file
2013-06-30 14:34:53 +02:00
Daniel Pavel
e490162e4f
the K400 also has the FN swap feature
2013-06-30 14:04:14 +02:00
Daniel Pavel
a0b7d39f83
use the wpid to identify devices, when possible
2013-06-30 13:49:35 +02:00
Daniel Pavel
c464e049bf
allow settings to be bound to certain device types
...
avoids stuff like smooth-scroll being attached to a keyboard
2013-06-29 21:26:25 +02:00
Daniel Pavel
daad9b5d5f
cleaned-up NamedInts, added int2bytes and bytes2int generic functions
2013-06-29 20:37:04 +02:00
Daniel Pavel
8d5718178f
load the configuration when the device is detected
...
and apply it every time the device comes online
2013-06-29 20:35:02 +02:00
Daniel Pavel
1d438f098f
handle 0x07 battery notifications with indicating charging, but with no battery level
2013-06-29 20:26:29 +02:00
Daniel Pavel
c2a549c114
the K800 also has 3 leds, use them to indicate battery charge
2013-06-28 17:09:05 +02:00
Daniel Pavel
c25b769578
repr() formatting cleanups
2013-06-26 13:40:46 +02:00
Daniel Pavel
0cf1f1983d
handle backlight notifications from register 0x17
2013-06-26 13:38:36 +02:00
Daniel Pavel
39ec568ab1
descriptors table and devices documentation updated
2013-06-25 18:54:27 +02:00
Daniel Pavel
5b94ebae34
enable the backlight notifications on devices, if available
2013-06-25 18:53:18 +02:00
Daniel Pavel
fc5c72e164
some clean-ups in descriptors
2013-06-25 16:01:29 +02:00
Daniel Pavel
6b0b7ea823
minor clean-ups and formatting
2013-06-24 17:04:19 +02:00
Daniel Pavel
f64942b51d
if the battery level is approximative, show a string instead of percentage
2013-06-24 17:02:00 +02:00
Daniel Pavel
375db9996f
fixed reading correct device kind on link notification
2013-06-24 16:58:41 +02:00
Daniel Pavel
20dfc063ff
initial support for performance mx leds
...
The leds light up when we get updates about the battery level.
Right now they are not (programatically) turned off.
2013-06-23 20:59:16 +02:00
Daniel Pavel
70c341e268
don't use proxies for receiver/device objects
...
they should be unnecessary now that their status is properly tracked
2013-06-23 18:37:50 +02:00
Daniel Pavel
422cd26b92
some extra asserts on hid++ 1.0 register r/w
2013-06-23 18:16:13 +02:00
Daniel Pavel
cec892ce88
disable poll ticking
...
It was necessary to periodically check if the peripherals are still
online -- suspend/resume may cause Solaar to (wrongfully) remember the
status of devices after a resume.
Now that is handled by the optional upower module -- the hard way -- by
restarting all listeners on resume.
2013-06-23 18:15:19 +02:00
Daniel Pavel
273284da39
use number instead of serial to pick devices in ui (faster start-up)
2013-06-23 12:09:46 +02:00
Daniel Pavel
df8df2bffa
don't force a battery read on link active, will happen anyway
2013-06-21 22:24:28 +02:00
Daniel Pavel
ae4c921300
cleaner start-up of paired devices
2013-06-21 22:23:53 +02:00
Daniel Pavel
3d1aa6698d
only check for non-unifying protocol only on nano receviers
2013-06-21 22:19:31 +02:00
Daniel Pavel
e19b690bd5
fixed reading of polling rate
2013-06-21 16:47:19 +02:00
Daniel Pavel
5785896007
status: the device may be invalid when processing the unpair notification
2013-06-21 16:39:30 +02:00
Daniel Pavel
8d522de7e7
drop some unnecessary logging when ignoring request replies
2013-06-21 16:39:04 +02:00
Daniel Pavel
81ae4c8d4d
forgot about pairing notification on receiver...
2013-06-21 16:32:29 +02:00
Daniel Pavel
c1aa341a7a
tweaked timing of enabling receiver notifications
2013-06-21 15:20:52 +02:00
Daniel Pavel
fd35f23af7
one a separate flag to check if the device is active
2013-06-21 15:17:14 +02:00
Daniel Pavel
c04851f64e
better handling of timeouts in base.request
2013-06-21 15:05:48 +02:00
Daniel Pavel
431f1c97cf
added read/write_register to receiver and devices
2013-06-21 15:03:36 +02:00
Daniel Pavel
1b68a3d5a9
fixed request timeouts for devices
2013-06-20 19:51:54 +02:00
Daniel Pavel
1d9a3bf23a
fixed checking for features of offline 2.0 devices
2013-06-20 17:21:23 +02:00
Daniel Pavel
3d8c764eb0
relax timeouts for device requests
2013-06-20 17:13:49 +02:00
Daniel Pavel
31e134c1e0
don't wait so long on the first idle poll
2013-06-20 13:12:29 +02:00
Daniel Pavel
ca9825d262
support for the VX Nano mouse
2013-06-20 13:10:30 +02:00
Daniel Pavel
1a36ec65ee
faster checking of feature-based settings
2013-06-20 12:55:48 +02:00
Daniel Pavel
d07a20e6f8
improved reading device properties
2013-06-20 12:54:27 +02:00