7 个版本

0.2.0 2022 年 5 月 15 日
0.1.5 2018 年 7 月 26 日
0.1.4 2018 年 3 月 10 日
0.1.3 2017 年 12 月 22 日
0.0.1 2017 年 9 月 5 日

#564硬件支持

26 每月下载量

GPL-3.0 许可证

225KB
3K SLoC

ledcat

CI

Ledcat 是一个简单的工具,旨在为驱动 LED 条和其他设备提供标准接口。

只需创建一个程序,输出您条中每个像素的 3 个字节的 RGB 数据。

文档

安装

最简单的安装 Ledcat 的方法是 从 Github 下载二进制文件

注意:Hzeller 的 LED 矩阵驱动器不可从 CI 构建。

使用 Cargo 安装

如果您还没有安装,请安装 Rust 语言

然后,您可以使用 Cargo 直接安装 ledcat。

cargo install ledcat

手动构建

或者,您可以手动构建和安装 Ledcat。

git clone https://github.com/polyfloyd/ledcat.git
cd ledcat
cargo build --release
cp target/release/ledcat /usr/local/bin/ledcat

用法示例

# Make a strip of 30 apa102 leds all red.
perl -e 'print "\xff\x00\x00" x 30' | ledcat --geometry 30 apa102 > /dev/spidev0.0
# Receive frames over UDP.
nc -ul 1337 | ledcat --geometry 30 apa102 > /dev/spidev0.0
# Load an image named "image.png", resize it to fit the size of the display and
# send it to a ledstrip zigzagged over the Y-axis.
convert image.png -resize 75x8! -depth 8 RGB:- | \
    ledcat --geometry 75x8 --transpose zigzag_y apa102 > /dev/spidev0.0
# A clock on a zigzagged two dimensional display of 75x8 pixels
while true; do
    convert -background black -fill cyan -font Courier -pointsize 8 \
        -size 75x8 -gravity center -depth 8 caption:"$(date +%T)" RGB:-
    sleep 1;
done | ledcat --geometry 75x16 --transpose zigzag_y apa102 > /dev/spidev0.0;
# Show random noise as ambient lighting or priority messages if there are any.
mkfifo /tmp/ambient
mkfifo /tmp/messages
cat /dev/urandom > /tmp/ambient &
./my_messages > /tmp/messages &
ledcat --input /tmp/ambient /tmp/messages --exit never --geometry 30 apa102 > /dev/spidev0.0

支持的驱动器

  • Linux spidev
  • 串行
  • Artnet DMX

支持的设备类型

依赖项

~4.5–6MB
~99K SLoC