SDL2 主机平台显示
sdl 显示平台允许你在运行 Linux 或 MacOS 的桌面系统上创建 ESPHome 显示。
这对于设计显示布局特别有用,因为编译和运行主机二进制文件比编译和
闪存到微控制器目标系统快得多。
# 示例配置条目esphome: name: sdl
host:
display: - platform: sdl show_test_card: true dimensions: width: 450 height: 600-
update_interval (可选, Time): 重新绘制屏幕的间隔。默认为
1s。 -
sdl_options (可选, string): 如果需要指定包含或库路径的构建参数。如果 SDL2 正确安装,则不应需要。
-
pages (可选, list): 显示页面而非单个 lambda。请参见 显示页面。
-
id (可选, ID): 手动指定用于代码生成的 ID。
-
window_options (可选): 影响显示在主机系统上渲染方式的选项。所有默认值为 false,除了 position,默认为 SDL 的未定义位置
- position (可选): 指定显示窗口在主机系统上的位置。
如果不指定,SDL 将选择默认位置。可以使用
x和y或centered_on_display,但不能同时使用。- x (可选, int): 显示窗口的 X 位置(像素)
- y (可选, int): 显示窗口的 Y 位置(像素)
- centered_on_display (可选, int): 用于多个显示器。
在指定编号的显示器上居中窗口。显示器编号从 0 开始。不能与
x或y一起使用。
- borderless (可选, boolean): 是否绘制带边框或不带边框的显示窗口
- always_on_top (可选, boolean): 是否始终将显示窗口绘制在其他窗口上方
- fullscreen (可选, boolean): 是否以全屏方式绘制显示窗口。这可能会调整主机显示的分辨率以匹配 SDL 显示尺寸
- skip_taskbar (可选, boolean): 是否跳过为显示窗口添加任务栏图标
- resizable (可选, boolean): 显示窗口是否可以手动调整大小
- position (可选): 指定显示窗口在主机系统上的位置。
如果不指定,SDL 将选择默认位置。可以使用
NOTE
要使用此显示构建,你必须安装 SDL2 包。
MacOS SDL2 安装
Section titled “MacOS SDL2 安装”在 MacOS 上安装 SDL2 最简单的方法是使用 homebrew:
brew install sdl2可能还需要运行以下命令:
brew link sdl2以确保文件正确符号链接。
你可以使用命令 sdl2-config --libs --cflags 检查安装情况。
你需要安装 XCode 命令行工具才能为主机平台构建。
Linux SDL2 安装
Section titled “Linux SDL2 安装”在基于 Debian/Ubuntu 的 Linux 系统上,你可以使用 apt 安装;同时检查你是否安装了必要的构建
工具,并且你必须使用带图形显示的桌面系统。
apt install libsdl2-dev build-essential git你可以使用命令 sdl2-config --libs --cflags 检查安装情况。
Microsoft Windows
Section titled “Microsoft Windows”虽然支持 SDL2,但原生在 Windows 上运行 ESPHome 并不容易。不过Windows Subsystem for Linux(WSL)可以 在 Windows 上安装和使用 Linux 开发环境,这将使你能够按照上述 Linux 说明使用 ESPHome 和 SDL2。有关 WSL 的更多信息,请参见 https://learn.microsoft.com/en-us/windows/wsl/install。
esphome run yourfile.yaml 命令将在 host 平台上编译并自动运行构建文件。