readme updates
This commit is contained in:
		
							parent
							
								
									1b6e6692c0
								
							
						
					
					
						commit
						5a99e55309
					
				
							
								
								
									
										95
									
								
								README
								
								
								
								
							
							
						
						
									
										95
									
								
								README
								
								
								
								
							|  | @ -1,60 +1,83 @@ | ||||||
| Solaar | **Solaar** is a Linux device manager for Logitech's | ||||||
| ------ | [Unifying Receiver](http://www.logitech.com/en-us/66/6079) peripherals. | ||||||
| 
 | 
 | ||||||
| 
 | It comes in two flavours, command-line and GUI.  Both are able to list the | ||||||
| This application connects to a Logitech Unifying Receiver | devices paired to a Unifying Receiver, show detailed info for each device, and | ||||||
| (http://www.logitech.com/en-us/66/6079) and listens for events from devices | also pair/unpair supported devices with the receiver. | ||||||
| attached to it. |  | ||||||
| 
 |  | ||||||
| Currently the K750 solar keyboard is also queried for its solar charge status. |  | ||||||
| Support for other devices could be added in the future, but the K750 keyboard is |  | ||||||
| the only device I have and can test on. |  | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| Requirements | Requirements | ||||||
| ------------ | ------------ | ||||||
| 
 | 
 | ||||||
| - Python (2.7 or 3.2). Either version should work well. | You should have a reasonably new kernel (3.2+), with the `logitech-djreceiver` | ||||||
| - Gtk 3; Gtk 2 should partially work with some problems. | driver enabled and loaded; also, the `udev` package must be installed and the | ||||||
| - Python GI (GObject Introspection), for Gtk bindings. | daemon running.  If you have a modern Linux distribution (2011+), you're most | ||||||
| - pyudev for enumerating udev devices. | likely good to go. | ||||||
| - Optional libnotify GI bindings, for desktop notifications. |  | ||||||
| 
 | 
 | ||||||
| The necessary packages for Debian/Ubuntu are `python-pyudev`/`python3-pyudev`, | The command-line application (`bin/solaar-cli`) requires Python 2.7.3 or 3.2+ | ||||||
| `python-gi`/`python3-gi`, `gir1.2-gtk-3.0`, and optionally `gir1.2-notify-0.7`. | (either version should work), and the `python-pyudev`/`python3-pyudev` package. | ||||||
|  | 
 | ||||||
|  | The GUI application (`bin/solaar`) also requires Gtk3, and its GObject | ||||||
|  | Introspection bindings. The Debian/Ubuntu package names are | ||||||
|  | `python-gi`/`python3-gi` and `gir1.2-gtk-3.0`; if you're using another | ||||||
|  | distribution the required packages are most likely named something similar. | ||||||
|  | If the desktop notifications bindings are also installed (`gir1.2-notify-0.7`), | ||||||
|  | you will also get desktop notifications when devices come online/go offline. | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| Installation | Installation | ||||||
| ------------ | ------------ | ||||||
| 
 | 
 | ||||||
| Normally USB devices are not accessible for r/w by regular users, so you will | Normally USB devices are not accessible for r/w by regular users, so you will | ||||||
| need to install a udev rule to allow access to the Logitech Unifying Receiver. | need to do a one-time udev rule installation to allow access to the Logitech | ||||||
|  | Unifying Receiver. | ||||||
| 
 | 
 | ||||||
| In rules.d/ you'll find a udev rule file, to be copied in /etc/udev/rules.d/ (as | In the `rules.d/` folder of Solaar you'll find a udev rule file, to be copied in | ||||||
| root). | `/etc/udev/rules.d/` (as the root user). | ||||||
| 
 | 
 | ||||||
| In its current form it makes the UR device available for r/w by all users | In its current form it makes the Unifying Receiver device available for r/w by | ||||||
| belonging to the 'plugdev' system group (standard Debian/Ubuntu group for | all users belonging to the `plugdev` system group (standard Debian/Ubuntu group | ||||||
| pluggable devices). It may need changes, specific to your particular system's | for pluggable devices). It may need changes, specific to your particular | ||||||
| configuration. | system's configuration. | ||||||
| 
 | 
 | ||||||
| If in doubt, replacing GROUP="plugdev" with GROUP="<your username>" should just | If in doubt, replacing `GROUP="plugdev"` with `GROUP="<your username>"` should just | ||||||
| work. | work. | ||||||
| 
 | 
 | ||||||
| After you copy the file to /etc/udev/rules.d (and possibly modify it for your | After you copy the file to `/etc/udev/rules.d` (and possibly modify it for your | ||||||
| system), run 'udevadm control --reload-rules' as root for it to apply. Then | system), run `udevadm control --reload-rules` as root for it to apply. Then | ||||||
| physically remove the Unifying Receiver, wait 30 seconds and re-insert it. | physically remove the Unifying Receiver, wait 10 seconds and re-insert it. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | Supported Devices | ||||||
|  | ----------------- | ||||||
|  | 
 | ||||||
|  | **Solaar** will detect all devices paired with your Unifying Receiver, and at | ||||||
|  | the very least display some basic information about them.  Depending on the | ||||||
|  | device, it may be able to read its battery status.  Changing various settings | ||||||
|  | of the devices (like mouse DPI) is currently not supported, but implementation | ||||||
|  | is planned. | ||||||
|  | 
 | ||||||
|  | The [K750 Solar Keyboard](http://www.logitech.com/keyboards/keyboard/devices/7454) | ||||||
|  | is also queried for its solar charge status.  Pressing the Solar key on the | ||||||
|  | keyboard will pop-up the application window and display the current lighting | ||||||
|  | value, similar to Logitech's Solar app for Windows. | ||||||
|  | 
 | ||||||
|  | Extended support for other devices will be added in the future, depending on the | ||||||
|  | documentation available, but the K750 keyboard is the only device I have and can | ||||||
|  | test on right now. | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| Thanks | Thanks | ||||||
| ------ | ------ | ||||||
| 
 | 
 | ||||||
| This project began as a third-hand clone of Noah K. Tilton's logitech-solar-k750 | This project began as a third-hand clone of [Noah K. Tilton](https://github.com/noah)'s | ||||||
| project on GitHub (no longer available). It was developed further thanks to the | logitech-solar-k750 project on GitHub (no longer available). It was developed | ||||||
| diggings in Logitech's HID protocol done, among others, by Julien Danjou | further thanks to the diggings in Logitech's HID++ protocol done by many other | ||||||
| (http://julien.danjou.info/blog/2012/logitech-k750-linux-support) and | people: | ||||||
| Lars-Dominik Braun (http://6xq.net/git/lars/lshidpp.git). |  | ||||||
| 
 | 
 | ||||||
| 
 | - [Julien Danjou](http://julien.danjou.info/blog/2012/logitech-k750-linux-support), | ||||||
| Cheers, | who also provided some internal | ||||||
| -pwr | [Logitech documentation](http://julien.danjou.info/blog/2012/logitech-unifying-upower) | ||||||
|  | - [Lars-Dominik Braun](http://6xq.net/git/lars/lshidpp.git) | ||||||
|  | - [Alexander Hofbauer](http://derhofbauer.at/blog/blog/2012/08/28/logitech-performance-mx) | ||||||
|  | - [Clach04](http://bitbucket.org/clach04/logitech-unifying-receiver-tools) | ||||||
|  |  | ||||||
|  | @ -348,7 +348,7 @@ def _update_device_box(frame, dev): | ||||||
| 
 | 
 | ||||||
| def update(window, receiver, device=None): | def update(window, receiver, device=None): | ||||||
| 	assert receiver is not None | 	assert receiver is not None | ||||||
| 	# print ("update", receiver, receiver.status, device, None if device is None else device.number) | 	# print ("update %s %s, %s" % (receiver, receiver.status, device)) | ||||||
| 	window.set_icon_name(ui.appicon(receiver.status)) | 	window.set_icon_name(ui.appicon(receiver.status)) | ||||||
| 
 | 
 | ||||||
| 	vbox = window._vbox | 	vbox = window._vbox | ||||||
|  |  | ||||||
|  | @ -57,6 +57,11 @@ PAIRING_ERRORS = _NamedInts( | ||||||
| 				too_many_devices=0x03, | 				too_many_devices=0x03, | ||||||
| 				sequence_timeout=0x06) | 				sequence_timeout=0x06) | ||||||
| 
 | 
 | ||||||
|  | REGISTERS = _NamedInts( | ||||||
|  | 				battery=0x0D, | ||||||
|  | 				dpi=0x63, | ||||||
|  | 				leds=0x51) | ||||||
|  | 
 | ||||||
| # | # | ||||||
| # functions | # functions | ||||||
| # | # | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue