我开始——或者试首先使用 ESP32-WROOM-32 开发板,使用 Ubuntu 23.04,最终安装白光发光二极管通过控制照明家庭助理。
到目前为止,我已经通过 USB 将 ESP32 开发板连接到计算机,该电缆是数据线;或者看起来像是,因为同一根电缆允许我的手机(Pixel 8 和 Pixel 6A)用作计算机的网络摄像头。
使用lsusb
可得:
Bus 004 Device 003: ID 2109:0812 VIA Labs, Inc. VL812 Hub
Bus 004 Device 002: ID 2109:0812 VIA Labs, Inc. VL812 Hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 006: ID 8087:0025 Intel Corp. Wireless-AC 9260 Bluetooth Adapter
Bus 003 Device 004: ID 1462:7b85 Micro Star International PRO CARBON
Bus 003 Device 007: ID 328f:006d EMEET HD Webcam eMeet C960
Bus 003 Device 005: ID 2109:2812 VIA Labs, Inc. VL812 Hub
Bus 003 Device 003: ID 2109:2812 VIA Labs, Inc. VL812 Hub
Bus 003 Device 002: ID 041e:3273 Creative Technology, Ltd Stage V2
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 1b1c:1b3c Corsair Corsair Gaming HARPOON RGB Mouse
Bus 001 Device 002: ID 046d:c336 Logitech, Inc. G213 Prodigy Gaming Keyboard
Bus 001 Device 010: ID 1a86:7523 QinHeng Electronics CH340 serial converter
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
并ls /dev/tty*
给出:
/dev/tty /dev/tty23 /dev/tty39 /dev/tty54 /dev/ttyS10 /dev/ttyS26
/dev/tty0 /dev/tty24 /dev/tty4 /dev/tty55 /dev/ttyS11 /dev/ttyS27
/dev/tty1 /dev/tty25 /dev/tty40 /dev/tty56 /dev/ttyS12 /dev/ttyS28
/dev/tty10 /dev/tty26 /dev/tty41 /dev/tty57 /dev/ttyS13 /dev/ttyS29
/dev/tty11 /dev/tty27 /dev/tty42 /dev/tty58 /dev/ttyS14 /dev/ttyS3
/dev/tty12 /dev/tty28 /dev/tty43 /dev/tty59 /dev/ttyS15 /dev/ttyS30
/dev/tty13 /dev/tty29 /dev/tty44 /dev/tty6 /dev/ttyS16 /dev/ttyS31
/dev/tty14 /dev/tty3 /dev/tty45 /dev/tty60 /dev/ttyS17 /dev/ttyS4
/dev/tty15 /dev/tty30 /dev/tty46 /dev/tty61 /dev/ttyS18 /dev/ttyS5
/dev/tty16 /dev/tty31 /dev/tty47 /dev/tty62 /dev/ttyS19 /dev/ttyS6
/dev/tty17 /dev/tty32 /dev/tty48 /dev/tty63 /dev/ttyS2 /dev/ttyS7
/dev/tty18 /dev/tty33 /dev/tty49 /dev/tty7 /dev/ttyS20 /dev/ttyS8
/dev/tty19 /dev/tty34 /dev/tty5 /dev/tty8 /dev/ttyS21 /dev/ttyS9
/dev/tty2 /dev/tty35 /dev/tty50 /dev/tty9 /dev/ttyS22
/dev/tty20 /dev/tty36 /dev/tty51 /dev/ttyprintk /dev/ttyS23
/dev/tty21 /dev/tty37 /dev/tty52 /dev/ttyS0 /dev/ttyS24
/dev/tty22 /dev/tty38 /dev/tty53 /dev/ttyS1 /dev/ttyS25
现在,/dev/tty*
无论 ESP32 开发板是否插入,输出都不会改变,而拔下开发板会导致Bus 001 Device 010: ID 1a86:7523 QinHeng Electronics CH340 serial converter
条目从中删除lsusb
,所以我认为这是与开发板相关的条目?
在线搜索会出现几篇文章:
- 开发板上的 USB 转 UART 桥接器这篇文章建议我可能需要一根 USB 转 UART 电缆,并且
- Linux 和 macOS 的标准工具链设置。
(两个链接都指向乐鑫
我按照上面列出的第二篇文章中概述的指南操作,但……似乎没有任何变化/改进。为确保万无一失,我注销并登录系统时没有关闭电源,然后关闭系统并重新打开电源(这是老生常谈,对吧)。
看到后steeldriver 的评论(以下):
这可能是由于与 brltty 设备驱动程序的 ID 冲突造成的 - 例如参见无法使用基于 USB 串行转换芯片的 USB 加密狗
我点击了链接,并听取了 Fehlrersturm 的建议他们的答案,并注释掉该ENV{PRODUCT}...
行(如下所示)。
# Device: 1A86:7523
# Baum [NLS eReader Zoomax (20 cells)]
# ENV{PRODUCT}=="1a86/7523/*", ENV{BRLTTY_BRAILLE_DRIVER}="bm", GOTO="brltty_usb_run"
当我运行 时,这导致出现了一个额外的条目 – /dev/ttyUSB0 ls /dev/tty*
。我又卡在这里了,指南“建立与 ESP32 的串行连接 - Windows 和 Linux“说要使用PuTTY,我试过了(使用图片中显示的设置,该图片显示在他们的网站上):
当我点击“打开”按钮时,什么都没有发生。按钮恢复正常状态,没有打开任何新窗口,据我所知,根本没有任何结果。
按照另一个[来自steeldriver的评论](请确保将您的用户添加到 dialout 组...),如下所示:
确保将您的用户添加到拨出组...
完成后,为了确保组已更新/刷新,我注销然后重新登录,然后对系统进行电源循环。
为了确保我已被添加到该dialout
组中,我使用了getent group | grep dialout
,结果如下:
dialout:x:20:david
然后,我遵循了其他一些路径,其中包括运行的建议sudo dmesg | grep ttyUSB0
(该建议并未特别建议使用sudo
,但没有sudo
我收到一条错误消息,指出“操作不允许”),它给出了响应:
[ 308.540203] usb 1-3: ch341-uart converter now attached to ttyUSB0
我不知道这是否有用,但感觉应该是有用的?
所以,我的问题基本上是:我遗漏了什么?我如何连接到这个板?
显然,尽管我已经使用 Ubuntu 十多年了,但我对它的内部工作原理并不是特别熟悉,因此ELI5如果可能的话,非常感激(或更低)的解释。