9.2 KiB
Режимы подсветки
19 встроенных режимов прошивки плюс выключение.
Номер режима = байт [0] lighting-payload, алиасы заданы в katana.py (MODES).
Полная таблица с байтами payload — в protocol.md (раздел «Lighting payload»).
Таблица режимов
Режимы указаны в порядке их перечисления в фирменной утилите.
| № | Название | Алиас | Цвет | Яркость | Скорость | Направление | Описание |
|---|---|---|---|---|---|---|---|
| 1 | Постоянный свет | static |
моно/спектр | + | + | статическое свечение всех клавиш | |
| 2 | Подсветка нажатых | keypress |
моно/спектр | + | + | все выключены, подсвечиваются нажатые | |
| 3 | Затухание нажатых | fade |
моно/спектр | + | + | все включены, гаснут нажатые | |
| 4 | Звёздный | star |
моно/спектр | + | + | случайные вспышки после полного затухания | |
| 5 | Снежный | snow |
моно/спектр | + | + | аналогично, но больше соседних клавиш | |
| 6 | Цветочный | flower |
спектр | + | + | плавные цвета на каждой клавише без затухания | |
| 7 | Дыхание | breathing |
спектр¹ | + | + | плавное свечение и затухание всех клавиш | |
| 8 | Полный спектр | spectrum |
спектр | + | + | плавные цвета на всех клавишах без затухания | |
| 9 | Круги | ripple |
моно/спектр | + | + | плавные цвета кругами из центра к краям | |
| 10 | Водопад | waterfall |
моно/спектр | + | + | ↑/↓ | спектр по рядам клавиш |
| 11 | Течение | flow |
моно/спектр | + | + | ←/→ | косые волны в одну сторону без затухания |
| 12 | Вращение | rotate |
моно/спектр | + | + | ←/→ | волна по кругу вокруг центра |
| 13 | Горизонтальная грань | h-edge |
моно/спектр | + | + | все выключены, горизонтальная волна по ряду от нажатой клавиши | |
| 14 | Вертикальная грань | v-edge |
моно/спектр | + | + | все выключены, косая волна по всем рядам от нажатой клавиши | |
| 15 | Рябь по воде | splash |
моно/спектр | + | + | все выключены, плавные круги от нажатой клавиши | |
| 16 | Бегущая строка | marquee |
моно/спектр | + | + | ←/→ | все выключены, плавная бегущая подсветка каждой клавиши в каждом ряду сверху вниз |
| 17 | Горы | mountains |
моно/спектр | + | + | плавные углы из середины в стороны | |
| 18 | Ветер | wind |
моно/спектр | + | + | ←/→ | косые волны в одну сторону с затуханием |
| 19 | Шаттл | shuttle |
моно/спектр | + | + | бегущие строки по чётным/нечётным рядам в обе стороны | |
| 20 | Выключена | off |
все клавиши погашены |
¹ У breathing цвет из payload игнорируется прошивкой: цикл цвета зашит и гоняет зелёно-жёлто-красную гамму при любом --color (проверено на железе, payload совпадает с вендорским — подробности в protocol.md).
Для моноцветного дыхания аналога нет; если нужен именно красный постоянный свет — используйте static.
Примеры
./katana.py off # выключить подсветку
./katana.py mode 1 --color ff00ff # статика, маджента
./katana.py mode static --color magenta # то же самое, алиасами
./katana.py mode breathing # дыхание (цвет зашит в прошивку, см. сноску ¹)
./katana.py mode spectrum --color cyan # полный спектр (спектр игнорирует цвет)
./katana.py mode static --rainbow # статика радугой
./katana.py mode waterfall --color gold --speed 5
./katana.py mode marquee --color red --direction east-west
Аргументы mode
N
Номер режима из таблицы выше (десятичный или hex) либо алиас.
Также принимается off.
--color ЦВЕТ
Цвет для моно-режимов.
По умолчанию ffffff.
В спектр-режимах (flower, spectrum, waterfall...) игнорируется прошивкой.
--brightness 1–15
Яркость.
По умолчанию 15.
--speed 2–15
Скорость анимации.
По умолчанию 10 (вендорский дефолт).
Для static скорость не применяется — прошивке всегда шлётся 10, при явном другом значении печатается warning.
Значения ниже 2 для анимаций принимаются, но не наблюдались у вендора (warning).
--rainbow
Только для static: радужный спектр вместо одного цвета (байт [11] = 01).
--direction
Направление анимации (байт [11]) для режимов с направлением: north-south, south-north, east-west, west-east.
Для остальных режимов команда завершается ошибкой.
Сняты значения: waterfall (north-south=02, south-north=03), marquee (east-west=01, west-east=00); для flow, rotate, wind байты уточняются.
--flag 0–255
Переопределение служебного байта [8] payload — без необходимости не трогать.
По умолчанию вендорский (00 static/star, 01 остальные).
--no-save
Не писать настройки во флеш (пропустить save).
По умолчанию save выполняется.
Настройка действует до выключения клавиатуры.
Полезно для экспериментов, чтобы не изнашивать флеш.
Направление анимации
Задаётся --direction north-south|south-north|east-west|west-east (байт [11] payload).
Значения сняты для waterfall (02/03) и marquee (01/00).
Для flow, rotate, wind применяйте те же опции — значения байта уточняются.
Подробности — protocol.md (раздел «Байт [11] — подрежим»).