Daniel Pavel
17863c85b6
fixed querying for known registers
2013-06-08 21:06:22 +02:00
Daniel Pavel
237d0f9d9a
keep the battery level if polling the device marks it as offline
2013-06-08 21:05:30 +02:00
Daniel Pavel
d01d9edb78
tweaked idle polling timings
2013-06-08 16:27:03 +02:00
Daniel Pavel
b2b4febd31
receiver notifications: don't set all flags, might fail
2013-06-08 16:18:10 +02:00
Daniel Pavel
ad67e6eaee
fix read timeouts in base.py, use seconds everywhere
2013-06-08 16:17:14 +02:00
Daniel Pavel
ed5ce48f65
fixes to polling receiver/device status
2013-06-08 16:16:12 +02:00
Daniel Pavel
46544e1cbe
listen for udev events on the GLib main loop
2013-06-07 14:39:04 +02:00
Daniel Pavel
c52f2fc069
fix descriptor for K700 keyboard
2013-06-05 01:24:19 +02:00
Daniel Pavel
c186573775
fix register blacklisting
2013-06-05 00:31:40 +02:00
Daniel Pavel
cbdc0bd99b
very low battery level should trigger an attention event
2013-06-03 21:40:15 +02:00
Daniel Pavel
bfe7bcf1b4
avoid possible race condition on device initialization
2013-06-02 11:19:30 +02:00
Daniel Pavel
c61eb3f039
show charging status in device icon
2013-06-01 22:08:14 +02:00
Daniel Pavel
83a29328c7
don't use notification flags with HID++ 2.0 devices
2013-06-01 15:07:39 +02:00
Peter Wu
39e630cece
cli: improve alignment for special keys
...
The following lines have an insane length and are therefore not included in the
longest line:
WIN7_MONITOR_SWITCH_AS_WIN_SHIFT_LEFTARROW=0x0093,
WIN7_MONITOR_SWITCH_AS_WIN_SHIFT_RIGHTARROW=0x0094,
While doing this, also fix an obvious typo in the "Lock PC" control.
2013-05-27 14:07:38 +02:00
Peter Wu
b2a62c2dd7
special_keys: update controls list
...
My previous observation was right, controls and tasks are really different
entities. The following "controls" appears to be invalid and have been removed:
Home=0x001A,
Music=0x001D,
Search=0x0029,
Sleep=0x002F,
2013-05-27 11:44:20 +02:00
Peter Wu
6ae11f862c
Add more feature names, rename existing ones
...
Extracted from SetPoint 6.52.74 software using:
<FeaturesSupported.xml awk -F\" '/<Feature /{sub(/^LD_FID_/, "", $2); printf("\t%s=%s,\n", $2, $4)}' | sort -t= -k2
Existing names are renamed to the newer, verbose names.
2013-05-26 23:47:40 +02:00
Peter Wu
28c35633d3
Add more tasks for special keys
...
Based on tasks.xml from `%ProgramFiles%\\SetPointP\\tasks.xml`.
2013-05-26 22:47:03 +02:00
Peter Wu
6e36e33b22
Decouple controls from tasks (programmable keys)
...
They are treated differently in the HID++ 2.0 specification. Observations seem
to confirm this difference. For instance, a part of solaar-cli's output:
0: unknown:0022 => Home FN sensitive, is FN, reprogrammable
1: Mail => Mail FN sensitive, is FN, reprogrammable
2: unknown:003E => Search FN sensitive, is FN, reprogrammable
2013-05-26 22:47:03 +02:00
Daniel Pavel
e73f076324
don't support the VX Nano right now
2013-05-22 20:43:29 +03:00
Daniel Pavel
131f8f7f45
disable status polling on devices
...
the regular flow should be reading the battery on all devices now
2013-05-22 20:42:26 +03:00
Daniel Pavel
c3b73964d5
improved support for some Nano receivers
2013-05-22 20:41:11 +03:00
Daniel Pavel
790fc7c04b
improved support for the Nano receiver
2013-05-22 07:31:16 +03:00
Peter Wu
9c0dac044c
hid10: update 07 battery parsing based on spec
...
This fixes pwr/Solaar#49 partially, at least the charging state will be reported
correctly hereafter. The charge level may still be incorrect though.
2013-05-22 00:10:17 +02:00
Daniel Pavel
da6711c93c
the 'Solar key' on K750 is named 'Light Check button'
2013-05-21 00:48:21 +03:00
Daniel Pavel
d3dcdcb92e
Merge remote-tracking branch 'origin/master'
2013-05-19 11:54:38 +03:00
Peter Wu
f0542923d7
hid10: update flags description for notifications
...
The Logitech HID++ 1.0 documentation actually names the fields for devices and
receiver. Clarify that and explain why enabling all of the bits is a bad idea.
2013-05-19 10:30:41 +02:00
Peter Wu
29d0c07164
hid10: Formatting and re-order NOTIFICATION_FLAGs
...
Align values for easier reading the numeric values of NOTIFICATION_FLAGs. To
maintain consistency in the ordering of the values, swap keyboard_backlight with
keyboard_present.
2013-05-19 10:20:21 +02:00
Peter Wu
152abb086a
hid10: document notifications better
...
See [registers.txt][1] for 'keyboard_backlight'. The behavior of
keyboard_sleep_raw and keyboard_multimedia_raw is described at
[keyboard.txt][2].
[1]: https://git.lekensteyn.nl/ltunify/tree/registers.txt
[2]: https://git.lekensteyn.nl/ltunify/tree/keyboard.txt
2013-05-19 10:14:31 +02:00
Daniel Pavel
ef62892f60
pop up a desktop notification if the battery is below 5%
2013-05-18 14:35:33 +03:00
Daniel Pavel
7ae24488d9
only notify on connected devices at start-up
2013-05-18 02:20:22 +03:00
Daniel Pavel
317cf6d00f
only enable certain notification flags on devices
...
Also added some documentation to the notification flags, where possible.
2013-05-18 00:15:42 +03:00
Daniel Pavel
a5eeac6e5a
enable notifications for peripherals; fixes #27
2013-05-17 23:06:24 +03:00
Daniel Pavel
c20b279362
minor tweaks
2013-05-08 12:06:01 +03:00
Daniel Pavel
8d5ca66db7
get rid of bad map() calls
2013-05-06 17:51:03 +02:00
Daniel Pavel
3ecfdd027e
handle all 07/0D register notifications
2013-05-06 17:08:58 +02:00
Daniel Pavel
55ca9927b0
python 2/3: fix handling of first argument (unicode) of pack/unpack
2013-05-06 16:50:17 +02:00
Daniel Pavel
0283bb0e91
fix str/unicode detection in Python 3.2
2013-05-06 15:33:42 +02:00
Daniel Pavel
d39c0995b6
Merge remote-tracking branch 'origin/master'
2013-05-06 14:55:21 +02:00
Daniel Pavel
db4c088ce9
Merge pull request #37 from Lekensteyn/py3-compat
...
Py3 compat: replace use of "unicode" (pwr/Solaar#32 )
The `u''` syntax fails in Python 3.2; will fix is_string after the merge.
2013-05-06 05:54:53 -07:00
Daniel Pavel
a4898e24b7
extended documentation of descriptors and registers
2013-05-06 14:51:57 +02:00
Daniel Pavel
1f48e44cc6
Merge remote-tracking branch 'origin/master'
2013-05-04 20:20:43 +02:00
Daniel Pavel
9d8743e765
comment-out descriptor settings for Anywhere MX, not actually tested
2013-05-04 20:18:10 +02:00
Peter Wu
2327a0012e
descriptors.py: Clarify use of negative values
...
The negative behavior is not obvious, document it in the descriptors.py file
such that people who edit it to add new devices know how it works.
2013-05-04 20:02:37 +02:00
Daniel Pavel
e819265e7e
fix automatic register blacklisting
2013-05-04 19:50:08 +02:00
Daniel Pavel
d7dd9393ff
minor clean-ups
2013-05-04 17:19:48 +02:00
Daniel Pavel
64c36a1562
updated descriptors table and the devices doc
2013-05-04 17:18:39 +02:00
Daniel Pavel
13a54565ba
cleaned-up the descriptors table
2013-05-04 15:09:50 +02:00
Daniel Pavel
ad577d22d0
handle sleep in udev monitoring, fixes #35
2013-05-04 12:19:29 +02:00
Peter Wu
10c26fe642
Py3 compat: replace use of "unicode" ( pwr/Solaar#32 )
...
Generating "an unknown notification" type bailed out because of an unknown
feature type None. Since `isinstance(other, str)` is False for None, the script
will raise an exception on `isinstance(other, unicode)`.
There is no differentiation between `str` and `bytes` in Python 2, therefore
add another condition to `NamedInt.__eq__` to catch unknown types (like
`bytes`).
2013-05-03 23:46:46 +02:00
Daniel Pavel
2ee2a5dc46
Merge remote-tracking branch 'origin/master'
2013-05-03 17:08:32 +02:00