Skip to main content
安装、列出和移除自定义驱动。自定义驱动用于控制 Lager 未内置的仪器,例如自研的测试夹具。驱动代码只保存在 Box 上,因此无需发布到 Lager 中,也无需安装到每位用户的电脑上。 安装驱动后,使用 lager nets add-custom 添加一个使用该驱动的 Net。之后每位用户都可以用标准 CLI 操作该 Net,有两种形式:
运行操作请参见 lager custom,编写驱动请参见自定义驱动。

语法

命令


命令参考

list

列出 Box 上已安装的自定义驱动,包括版本、状态、Python 包以及使用它们的 Net。
选项:
  • --box BOX - Lager Box 名称或 IP 地址
  • --json - 以 JSON 格式输出 Box 的响应
输出:
驱动包无法加载的驱动会显示 error: 及原因,其他驱动不受影响。 Deps 列显示驱动的 Python 包数量;没有包时显示 -。如果这些包是为不同的 Python 版本或 CPU 安装的,则显示 stale,请运行 reinstall-deps 修复。

show

显示驱动的 Net 设置、操作及操作参数,内容由 Box 从驱动的清单文件中读取。
参数:
  • TYPE - 驱动类型,例如 stepper
选项:
  • --box BOX - Lager Box 名称或 IP 地址

install

从驱动包目录安装驱动,或替换已安装的同类型驱动。该目录必须包含 lager_driver.json 和 driver.py。Box 会校验清单文件,如果无效则不会安装任何内容。
参数:
  • BUNDLE_DIR - 驱动包目录的本地路径
选项:
  • --box BOX - Lager Box 名称或 IP 地址
  • --yes - 替换已安装的驱动时不再询问
驱动包必须小于 5 MB。Box 将其保存在 /etc/lager/drivers/ 中,因此 lager update 之后仍然保留。 如果清单文件指定了 requirements 文件,Box 还会安装其中的 Python 包,这可能需要几分钟。如果这些包无法安装,驱动不会被安装。参见自定义驱动中的“Python 包”一节。 示例:

reinstall-deps

根据已安装驱动包中的 requirements 文件,重新安装驱动的 Python 包。当 lager drivers list 将这些包显示为 stale 时使用。
参数:
  • TYPE - 驱动类型
选项:
  • --box BOX - Lager Box 名称或 IP 地址
如果安装失败,之前安装的包会保留。

remove

从 Box 上移除驱动。如果仍有 Net 使用该驱动,Box 会拒绝移除,因为这些 Net 将无法工作。
参数:
  • TYPE - 驱动类型
选项:
  • --box BOX - Lager Box 名称或 IP 地址
  • --force - 即使仍有 Net 使用也移除该驱动
  • --yes - 跳过确认提示

说明

  • 驱动类型不能使用内置 Net 角色或 lager 命令的名称,例如 supply 或 uart。
  • 驱动在 Box 上运行,权限与 lager python 脚本相同。它不会出现在公开的 Lager 代码中,但能够连接到 Box 的人可以读取它。
  • 驱动列出的 Python 包也以同样的权限在 Box 上运行。只安装您信任的包。