- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试在设备模式下为单个 USB 设备 Controller 端口添加 uvc 和大容量存储。我正在使用 configfs 来完成工作。
谁能告诉我怎么做。
问候,雷达
最佳答案
您正在制作一种既可用作相机又可用作 U 盘的设备?也许是加密狗,您可以在其中上传视频然后在 Skype 中播放它们?无论哪种方式,这听起来都是一个很好的 configfs 练习。
概括地说,这些步骤是:
过早跳到第 3 步会使诊断问题变得更加困难。例如,如果用户空间 uvc-gadget 程序存在问题,可能会阻止两个小工具枚举。
以 root 用户身份,您可以运行以下经过验证的脚本,以使用 Raspbian 9 在 Raspberry Pi Zero W 上进行枚举和流式传输。对于第 1 步,您可以删除特定于 UVC 的部分,然后在第 2 步中删除大容量存储行。
#!/bin/bash -xe
modprobe libcomposite
cd /sys/kernel/config/usb_gadget/
mkdir -p stackoverflow
cd stackoverflow
echo 0x1d6b > idVendor # Linux Foundation
echo 0x0104 > idProduct # Multifunction Composite Gadget
echo 239 > bDeviceClass # USB_CLASS_MISC
echo 0x02 > bDeviceSubClass
echo 0x01 > bDeviceProtocol
mkdir -p strings/0x409
mkdir -p configs/c.1/strings/0x409
echo "My Composite Gadget" > strings/0x409/product
###################### mass storage ########################
mkdir -p functions/mass_storage.usb0
echo /dev/mmcblk0p1 > functions/mass_storage.usb0/lun.0/file
ln -s functions/mass_storage.usb0 configs/c.1/
############################################################
########################## UVC #############################
mkdir -p functions/uvc.usb1/control/header/h
cd functions/uvc.usb1/control/
ln -s header/h class/fs
cd ../../../
mkdir -p functions/uvc.usb1/streaming/uncompressed/u/360p
cat <<EOF > functions/uvc.usb1/streaming/uncompressed/u/360p/dwFrameInterval
666666
1000000
5000000
EOF
mkdir functions/uvc.usb1/streaming/header/h
cd functions/uvc.usb1/streaming/header/h
ln -s ../../uncompressed/u
cd ../../class/fs
ln -s ../../header/h
cd ../../class/hs
ln -s ../../header/h
cd ../../../../..
ln -s functions/uvc.usb1 configs/c.1/
############################################################
ls /sys/class/udc > UDC
######################## UVC part 2 ########################
sleep 1 # workaround: if gadget activated too soon, may hit a dmesg error with usb_function_activate [libcomposite]
./uvc-gadget -d
############################################################
(作为引用,这是我的 uvc-gadget repo 和补丁。)
简单地指向位于 /dev/mmcblk0p1
的引导分区是一种快速而肮脏的方法来测试 Pi 的 SD 卡的大容量存储。运行 sudo fdisk -l
以查找您可以在您的特定系统上使用的内容。
由于 Pi Zero 是 USB 2.0 设备,我不需要包含任何 class/ss
(超高速)。我还特意省略了您可能会在其他示例中找到的字段,例如 MaxPower、序列号和制造商。此脚本旨在展示启动和运行所需的最低限度。
您已经在其他 channel 发帖询问从 NXP 到 TI 等平台的这个问题,我无法预测那里会出现什么问题。但是,我看到建议尝试在内核版本 4.11-rc3 中引入的与 UVC 相关的修复。鉴于 Raspbian 目前的版本是 4.9,也许没有必要进行这些更改。
关于linux - USB : gadget : device mode : configfs: uvc and mass storage on single configuration?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42895950/
我想在 Vista 中创建一个边栏小工具。我关注了this tutorial关于如何创建一个字母。但是,当我转到边栏中的添加小工具时,小工具根本不会显示在小工具库中。 我已经尝试重置侧边栏,删除 ga
在开发过程中,应该如何快速测试 Windows Gadget?每次创建存档、安装它并将其添加到桌面都非常繁琐... 最佳答案 这个应用程序可能会加快这个过程: http://www.codeproje
在最近的安全公告中,微软警告说“小工具中的漏洞可能允许远程执行代码”: An attacker who successfully exploited a Gadget vulnerability co
我正在尝试构建一个 gmail 上下文小工具。我过去让它工作,但我必须改变一些东西,现在它不起作用。我已成功创建列表并将小工具添加到我的测试域中。但是当我打开一封电子邮件时仍然没有任何反应。 这是 l
我需要在同一个插件中开发更多的小工具,这些小工具看起来几乎一样,改变的是它们需要访问和显示的资源。最好的方法是什么? 我是否需要为每个小工具创建一个 xml 文件,即使它是相同的? 对于 Java 部
我正在尝试为 Windows 7 开发一个 Windows 桌面小部件。只是想知道是否有一种简单的方法可以重新加载小部件,或者是否有某种形式的调试代码可以每 10 秒重新加载一次小部件。 我问的原因是
我试图在不使用Visual Studio的情况下创建侧边栏小工具。我一直在寻找调试它们的方法,但是一切都说Visual Studio JIT调试器是唯一的方法。 没有人能够在没有Visual Stud
我正在尝试根据给定的示例运行 GWT 示例小工具应用程序 here 。当我编译代码时,出现以下异常: [ERROR] Unexpected internal compiler error [INFO]
我正在尝试在我的域中部署上下文小工具。 我遵循了开发指南,但小工具没有出现。 我认为问题出在“数据访问”:如果安装似乎顺利,则事件, 在 Google Apps 控制台中,小工具的数据访问部分显示一个
我正在开发一个简单的 GMail 上下文小工具(目前,如果满足 2 个条件,gmail 页面中就会有一个简单的“hello world”)。但我需要匹配双重条件,而不仅仅是一个。因此,我无法使用预装提
我需要使用干净的 input[date] CSS。为此,我想知道如何删除或禁用以下元素: 如何去除蓝色边框? 如何防止单独编辑年、月、日? (因此,没有蓝色背景框) 如何去除十字? 如何去掉双箭头?
本文整理了Java中org.apache.shindig.gadgets.config.XhrwrapperConfigContributor类的一些代码示例,展示了XhrwrapperConfigC
本文整理了Java中org.apache.shindig.gadgets.templates.XmlTemplateLibrary类的一些代码示例,展示了XmlTemplateLibrary类的具体用
我正在寻找将 Android 智能手机用作 USB 键盘的可能性,就像我将使用 Linux Gadget 和带 OTG 端口的树莓派一样。所以我想像这样: 通过标准 USB 将 Android 手机连
抱歉,如果这是众所周知的,但在谷歌上搜索我的答案只提供了有关制作 Google Wave 小工具的链接。 我的问题是,是否有任何 Google Wave 小工具可以实现更好的协作代码编辑?我的意思是,
大家好.. 我想从我的数据库中获取一些信息并显示到我的侧边栏小工具中(我是小工具编码的新手)。我尝试了很多方法来做到这一点,但我还没有成功。 为此,我准备了一个 php 文件来从我的数据库(在服务器上
我们是这个小工具的开发者,它已经运行了几年。我们有最终客户报告说,某些用户的工具栏正在消失,我们自己的一些用户也看到了这种情况。在所有情况下为这些用户启用工具栏。 小工具定义位于: https://c
我想在我们的生产应用程序服务器上托管一个 Google 小工具,它将提供一种身份验证方式并显示我们数据库中的一些有趣信息。 显然,我更愿意在我们的生产站点之外开发和测试它。 是否有任何方法可以测试托管
我已经构建了一个 Vista 小工具。它获取一个名为“settings.xml”的本地 XML 文件。它加载了它并且我改变了一些东西。然后我调用 xmldoc.Save("settings.xml")
我想向 gadget.io.MakeRequest 的回调函数传递一个参数。这有可能吗? function MyRequest(param){ ... gadget.io.makeRequest(ur
我是一名优秀的程序员,十分优秀!