无法通过AWS Greengrass Lambda函数访问USB设备

时间:2019-11-19 09:00:51

标签: amazon-web-services aws-iot greengrass

我有一个python函数,当在树莓派上独立运行时,它能够访问本地USB打印机。 当尝试将该Python函数作为部署在同一树莓派上的AWS greengrass函数的一部分运行时,它无法访问USB打印机设备

greengrass lambda日志中的异常:

  

提高USBNotFoundError(“找不到设备或未插入电缆。”)

即使我已使用AWS greengrass控制台为该功能提供了对aws greengrass的必需本地资源访问权限。 使用路径/dev/bus/usb/001/009更新了类型为“ Device”的本地资源,并更新,部署并重新启动了GG守护程序。

使用/dev/usb/文件夹验证了设备的路径

pi@raspberrypi:/greengrass/ggc $ find /dev/bus/usb
/dev/bus/usb
/dev/bus/usb/001
/dev/bus/usb/001/009 //USB Printer

1 个答案:

答案 0 :(得分:0)

我假设您使用的是 Greengrass v1。

您需要授予 GGC 集团访问本地资源的权限。为此,您必须转到 AWS IoT > Greengrass > Groups > <Group-name>

然后,转到 Resources > Add Local Resource 并选择类型为 Device 并通知设备路径,例如 /dev/ttyUSB0。此外,选择 Lambda 函数从属关系以通知哪个函数可以访问它。

usb configuration example