ch340中的Android UsbSerial库问题

Kin*_*one 6 android serial-port

我正在尝试将开源 python 项目esptool.py转换为 Android(java) 项目。
在 android 中,对于串行通信,我使用的是USB 串行库。
我只需要esp8266功能esptoo.py,所以我只转换了 esp8266 功能。

UsbSerial库,我使用同步 api,因为esptool.py使用同步命令进行串行/
当前项目与 esp8266/FTDI 配合良好,esp8266/cp2102 与esptool.py.
我的问题不是使用esp8266/ch340.
当然,esptool.py 与esp8266/ch340.
但是,我的 android 项目无法使用它。
在android中,esptool.py中使用的主要命令是setDTR, setRTS,serial Readserial Write。尽管处于esp8266/ch340正常模式(不是引导加载程序模式),但每个命令都运行良好。

另外,我确认 esp8266 可以通过 setDTR、setRTS 的组合正确地进入引导加载程序模式。
更正确地确认bootloader模式,我可以使用Flash buttonRST button的esp8266。
在此处输入图片说明 使用 esp8266/ch340,我无法通过 android 项目的第一步。第一步是同步操作。

从android,使用https://github.com/espressif/esptool/wiki/Serial-Protocol#initial-synchronisation调用写入命令,然后esp8266 是字节响应。
主要问题是无法从 esp8266 读取响应命令。
从 UsbSerial 中,有syncRead,syncWrite命令,也有用于串行操作的异步命令。
esptool.py是用同步 API 制作的,所以,我在 android 项目中使用同步 API。
此外,当前项目与 esp8266/FTDI、esp8266/cp2102 完美配合。所以,我认为,主要算法是从 esptool.py 成功转换的

但是,esp8266/ch340,当前项目不工作。
从调试中,我确认我无法在引导加载程序模式下从 esp8266/ch340 读取任何字节。
对于调试,我使用异步 api创建了新项目。

使用 esp8266 的按钮,使esp8266/ch340引导加载程序模式,我正在将同步命令写入 esp8266。
闪光按钮,第一个按钮

https://github.com/espressif/esptool/wiki/Serial-Protocol,esp8266 正在发送响应命令,但无法读取esp8266/ch340.

但是,我发现了一些奇怪的事情。
在引导加载程序模式后,写入同步命令并断开 USB 与 android 的连接,然后,我可以在Disconnecting moment.
如果我写了 3 次同步命令,那么 3 个响应命令会在断开连接的时刻到达。
我该如何解决这个问题?

如何在引导加载程序模式下调试 esp8266?

从调试来看,esp8266/ch340引导加载程序模式)中的主要问题。