1 个不稳定版本
0.1.0 | 2023 年 3 月 1 日 |
---|
#5 在 #e-ink
21KB
301 行
miractl
miractl 是一个用于管理 Boox Mira 和 Mira Pro 电子墨水显示器的工具。
安装
目前没有可用的预构建二进制文件。您需要安装 Rust 工具链,然后从存储库根目录运行
$ cargo build --release
然后只需将 target/release/miractl
复制到您的路径中的某个位置。在 Linux 上,您还需要适当的 udev 规则;请参阅以下内容。
用法
刷新显示器
$ miractl refresh
设置显示参数
$ miractl set --warm 25 --cold 15
$ miractl set --filter 10:96 --contrast 5
选择显示模式
$ miractl mode read
$ miractl mode speed
参数
- 暖色调
- 设置暖色调前灯,从 0 到 254
- 冷色调
- 设置冷色调前灯,从 0 到 254
- 速度
- 设置刷新速度,从 1 到 7
- 刷新模式
- 设置刷新模式
- 对比度
- 设置对比度,从 0 到 15
- 过滤器
- 设置白/黑过滤器
两者必须同时设置,格式为
WHITE:BLACK
其中WHITE
和BLACK
是介于 0 和 127 之间的整数。
颜色过滤器与对比度
Mira 显示器都支持对比度设置和可调颜色过滤器。交互可能会有些困惑。
屏幕 UI 上的第二个滑块和官方应用程序中标记为“暗色增强”的设置都调整显示器的 对比度,介于 0-15 之间。
屏幕 UI 上的第三个滑块和官方应用程序中标记为“浅色过滤器”的设置调整白色过滤器。
白色和黑色过滤器以类似设置照片白点和黑点的方式工作。任何比白色过滤器点亮的物体都被认为是白色;任何比黑色过滤器点暗的物体都被认为是纯黑色。这会导致图像最亮和最暗的部分丢失一些细节,但通常在网页浏览中使用时可以带来显著的好处。网页的背景往往不是 100% 白色;如果没有白色过滤器,它们在显示器上会出现抖动——这种效果是令人分心的。白色过滤器允许您消除抖动,使背景显示为纯白色,从而生成更适合电子墨水显示器的更高对比度图像。
黑色滤镜的工作原理相同,对于实际上是深色的暗色文本也很有效。
在撰写本文时,无法直接从显示UI或Boox应用中设置黑色滤镜;相反,它构成了官方默认显示模式预设的一部分。
显示模式
显示模式基本上是内置的预定义的低级参数组合。共有五个:speed
(速度)、text
(文本)、image
(图片)、video
(视频)和read
(阅读)。
注意事项和限制
我只有一台Boox Mira用于测试。我相信这也适用于Pro,但如果你有多台Mira屏幕,效果可能会有所不同。欢迎提交PR/进行测试。
自动抖动设置尚不支持。
udev规则
-
创建
/etc/udev/rules.d/58-hid.rules
-
将以下规则复制到文件中,以支持
hidraw
和libusb
。
SUBSYSTEM=="input", GROUP="input", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0416", ATTRS{idProduct}=="5020", MODE:="666", GROUP="plugdev"
KERNEL=="hidraw*", ATTRS{idVendor}=="0416", ATTRS{idProduct}=="5020", MODE="0666", GROUP="plugdev"
- 重新加载udev规则
udevadm control --reload-rules && udevadm trigger
鸣谢
USB接口的核心基于https://github.com/ipodnerd3019/mira-js的知识。
依赖项
~2–13MB
~111K SLoC