Skip to content

Commit e65f0c9

Browse files
committed
Update READMEs
1 parent 78c0377 commit e65f0c9

File tree

3 files changed

+47
-9
lines changed

3 files changed

+47
-9
lines changed

README.md

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,10 @@ The current list of supported devices includes:
3636
- MasterKeys Pro L RGB ISO (untested)
3737

3838
If you would like for your device to be supported as well, please run
39-
the `record` executable.
39+
the `record` executable. Enter the row and column coordinates of each
40+
key according to the Cooler Master reference each time for the key that
41+
lights up in red. The shared `layout.c` can be attached to an issue, and
42+
then your device is added in no-time!
4043

4144
Keyboards with only monochrome lighting may use a different protocol and
4245
thus they would probably require more modifications than just adding a
@@ -50,20 +53,22 @@ To be able to compile and install any of the targets in this library,
5053
distribution, the name of the packages (if they are provided) may
5154
differ from the ones given here. The reference commands are for Ubuntu.
5255
```bash
53-
# Include libx11-dev if you wish to run the ambilight example
54-
sudo apt-get install cmake libusb-1.0.0-dev
56+
# libx11-dev is for the AmbiLight and notifications examples
57+
# python3-gtk2.0 is for the notifications example
58+
sudo apt-get install cmake libusb-1.0.0-dev libx11-dev python3-gtk2.0
5559
cd Source/masterkeys-linux # Or wherever you have cloned the repo
56-
# Automatically also builds target ambilight
57-
# Exclude the examples in the CMakeLists.txt if you do not have libx11-dev
60+
61+
# Builds library, utilities and C examples
62+
# Exclude them from the file if you don't want them to be built
5863
cmake .
5964
make
6065
sudo make install
6166

62-
# For the Python library (system-wide install)
67+
# For the Python library (system-wide install) and Python examples
6368
sudo python -m pip install scikit-build
64-
sudo python setup.py install
69+
sudo python setup.py build install # Python examples not installed
6570

66-
# Or if you would rather install from PyPI
71+
# Or if you would rather install from PyPI, still requires dependencies
6772
sudo python -m pip install masterkeys
6873
```
6974

@@ -107,7 +112,7 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.
107112
```
108113

109114
## Credits
110-
Part of the implementation of this library is based on the more
115+
Part of the implementation of the `libmk` library is based on the more
111116
extensive protocol description written by [`chmod222`](https://github.com/chmod222),
112117
available under the LGPLv3 license in [`libcmmk`](https://github.com/chmod222/libcmmk),
113118
which has the same goal as this project.

examples/README.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,16 @@ Takes the average of sections of the image to correspond to the color
1414
of a single key, thus showing the image selected on the keyboard in
1515
a much reduced resolution. As it is pure Python and it loops over a PIL
1616
pixel access object, the current implementation is quite slow.
17+
18+
## Notifications
19+
Mostly an improvement of the AmbiLight example, the notifications
20+
example is a completely rewritten version that runs from Python.
21+
Performance critical functions are implemented in C.
22+
23+
Where AmbiLight only displays the dominant color shown on the screen,
24+
the notifications example will interrupt the AmbiLight color stream and
25+
flash the keyboard in the dominant color of a notification.
26+
27+
Options are available to be set through the Python file
28+
`notifications.py`. The notifications example shows the potential of
29+
RGB keyboards as more than just gimmicks.

utils/README.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Utilities
2+
3+
## main
4+
The program `main.c` is the testing executable for the functionality
5+
of `libmk`. Run this to check if your keyboard is properly supported.
6+
Tests include setting full keyboard color, effects, individual LED
7+
control and profile control. The profile in slot 4 will be overwritten!
8+
9+
## ctrl
10+
The program `ctrl.c` is the testing executable for the functionality
11+
of `libmkc` and shows of the performance of the Cooler Master MasterKeys
12+
RGB keyboards using a high speed, high refresh-rate software defined
13+
color wave. `libmkc` works asynchronously to allow programs to achieve
14+
such fast effects.
15+
16+
## record
17+
The program `record.c` is used for adding support for new layouts for
18+
devices with an already known protocol. Unfortunately, supporting
19+
keyboards with a different protocol requires significant work in packet
20+
sniffing to reverse engineer the protocol used.

0 commit comments

Comments
 (0)