Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 15 Sep 2022 15:29:45 +0300
From:      Daniel Braniss <danny@cs.huji.ac.il>
To:        CeDeROM <cederom@tlen.pl>
Cc:        freebsd-hackers <hackers@freebsd.org>, "usb@freebsd.org" <usb@freebsd.org>
Subject:   Re: USB chip CH9102F
Message-ID:  <2658B51D-E40A-4B08-8EDF-7CF1264B0FB4@cs.huji.ac.il>
In-Reply-To: <CAFYkXjmrA=jR69JwS=dt-H%2BNotQw6zT2H5JGzQk4P92nmJn9Sg@mail.gmail.com>
References:  <DD3BBD04-3455-4732-9DA1-68D79A2195A3@cs.huji.ac.il> <CAFYkXjmrA=jR69JwS=dt-H%2BNotQw6zT2H5JGzQk4P92nmJn9Sg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail=_8B7298CB-40D9-437F-8508-6C670CBDA90B
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8



> On 14 Sep 2022, at 18:14, CeDeROM <cederom@tlen.pl> wrote:
>=20
> On Wed, Sep 14, 2022 at 3:43 PM Daniel Braniss wrote:
>> Hi,
>> is there/will there be any support for this chip? CH9102F.
>>=20
>> there is a driver for linux and windows, but event though it sort of =
works on FreeBSD,
>> the magic needed to flash the firmware on newer esp32=E2=80=99s is =
not working.
>=20
> I also bought USB-C based UART-to-USB adapter from Waveshare with
> CH343G chip and use it for ESP32 flashing.
>=20
> This chip is a bit tricky and I have noticed it is less reliable for
> initial flashing on a custom ESP32 board (boot mode selection using
> RTS/CTS pins). It sometimes fails, while older USB-UART converters
> works fine.
>=20
> What are your problems exactly?
>=20
pampa> /vol/src/esp/current/components/esptool_py/esptool/esptool.py -p =
/dev/ttyU0 read_mac
esptool.py v3.3-dev
Serial port /dev/ttyU0
Connecting...
Failed to get PID of a device on /dev/ttyU0, using standard reset =
sequence.
.
Detecting chip type... ESP32-C3
Chip is ESP32-C3 (revision 3)
Features: Wi-Fi
Crystal is 40MHz
MAC: 7c:df:a1:a3:61:74
Uploading stub...

A fatal error occurred: Failed to write to target RAM (result was =
01070000: Operation timed out)

> Are you sure this is not the custom hardware design issue?
>=20
no, it=E2=80=99 happens on several esp32s specially from m5stack

> Do you have Reset and BootSel pins on your board that you can trigger
> by hand in order to help USB-UART cable?
this particular onw, m6stack black/basic, has no gpio-0 available to =
enter
download mode, the older models have no problem with the usb-c
>=20
> What is your magic that you need to do in order to flash the chip =
successfully?
see the above.
some other boards I just connect gpio-0 to ground, or have to press a =
button before power on,
but I can flash. Also, as soon as I manage to flash, I can continue =
flashing over the air.

>=20
> Does standard operations (UART CLI) work as expected?
again, all boards/thingis i have no problem reading the console, and =
even writing
>=20
> Did you take a look at man stty and use stty crtscts <port> / stty
> -crtscts <port> to see if that fixes anything?

the initial (or when my software crashes) flashing is done via a python =
that does all the magic.
>=20
> --
> CeDeROM, SQ7MHZ, http://www.tomek.cedro.info
>=20


well, it does feel better knowing i=E2=80=99m not the only one with this =
problem :-)


--Apple-Mail=_8B7298CB-40D9-437F-8508-6C670CBDA90B
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;" class=3D""><br =
class=3D""><div><br class=3D""><blockquote type=3D"cite" class=3D""><div =
class=3D"">On 14 Sep 2022, at 18:14, CeDeROM &lt;<a =
href=3D"mailto:cederom@tlen.pl" class=3D"">cederom@tlen.pl</a>&gt; =
wrote:</div><br class=3D"Apple-interchange-newline"><div class=3D""><div =
class=3D"">On Wed, Sep 14, 2022 at 3:43 PM Daniel Braniss wrote:<br =
class=3D""><blockquote type=3D"cite" class=3D"">Hi,<br class=3D"">is =
there/will there be any support for this chip? CH9102F.<br class=3D""><br =
class=3D"">there is a driver for linux and windows, but event though it =
sort of works on FreeBSD,<br class=3D"">the magic needed to flash the =
firmware on newer esp32=E2=80=99s is not working.<br =
class=3D""></blockquote><br class=3D"">I also bought USB-C based =
UART-to-USB adapter from Waveshare with<br class=3D"">CH343G chip and =
use it for ESP32 flashing.<br class=3D""><br class=3D"">This chip is a =
bit tricky and I have noticed it is less reliable for<br =
class=3D"">initial flashing on a custom ESP32 board (boot mode selection =
using<br class=3D"">RTS/CTS pins). It sometimes fails, while older =
USB-UART converters<br class=3D"">works fine.<br class=3D""><br =
class=3D"">What are your problems exactly?<br class=3D""><br =
class=3D""></div></div></blockquote><div><span style=3D"caret-color: =
rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Menlo-Regular; =
font-size: 12px;" class=3D"">pampa&gt; =
/vol/src/esp/current/components/esptool_py/esptool/esptool.py -p =
/dev/ttyU0 read_mac</span><br style=3D"caret-color: rgb(0, 0, 0); color: =
rgb(0, 0, 0); font-family: Menlo-Regular; font-size: 12px;" =
class=3D""><span style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, =
0); font-family: Menlo-Regular; font-size: 12px;" class=3D"">esptool.py =
v3.3-dev</span><br style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, =
0); font-family: Menlo-Regular; font-size: 12px;" class=3D""><span =
style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: =
Menlo-Regular; font-size: 12px;" class=3D"">Serial port =
/dev/ttyU0</span><br style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, =
0, 0); font-family: Menlo-Regular; font-size: 12px;" class=3D""><span =
style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: =
Menlo-Regular; font-size: 12px;" class=3D"">Connecting...</span><br =
style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: =
Menlo-Regular; font-size: 12px;" class=3D""><span style=3D"caret-color: =
rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Menlo-Regular; =
font-size: 12px;" class=3D"">Failed to get PID of a device on =
/dev/ttyU0, using standard reset sequence.</span><br style=3D"caret-color:=
 rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Menlo-Regular; =
font-size: 12px;" class=3D""><span style=3D"caret-color: rgb(0, 0, 0); =
color: rgb(0, 0, 0); font-family: Menlo-Regular; font-size: 12px;" =
class=3D"">.</span><br style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, =
0, 0); font-family: Menlo-Regular; font-size: 12px;" class=3D""><span =
style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: =
Menlo-Regular; font-size: 12px;" class=3D"">Detecting chip type... =
ESP32-C3</span><br style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, =
0); font-family: Menlo-Regular; font-size: 12px;" class=3D""><span =
style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: =
Menlo-Regular; font-size: 12px;" class=3D"">Chip is ESP32-C3 (revision =
3)</span><br style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); =
font-family: Menlo-Regular; font-size: 12px;" class=3D""><span =
style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: =
Menlo-Regular; font-size: 12px;" class=3D"">Features: Wi-Fi</span><br =
style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: =
Menlo-Regular; font-size: 12px;" class=3D""><span style=3D"caret-color: =
rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Menlo-Regular; =
font-size: 12px;" class=3D"">Crystal is 40MHz</span><br =
style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: =
Menlo-Regular; font-size: 12px;" class=3D""><span style=3D"caret-color: =
rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Menlo-Regular; =
font-size: 12px;" class=3D"">MAC: 7c:df:a1:a3:61:74</span><br =
style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: =
Menlo-Regular; font-size: 12px;" class=3D""><span style=3D"caret-color: =
rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Menlo-Regular; =
font-size: 12px;" class=3D"">Uploading stub...</span><br =
style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: =
Menlo-Regular; font-size: 12px;" class=3D""><br style=3D"caret-color: =
rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Menlo-Regular; =
font-size: 12px;" class=3D""><span style=3D"caret-color: rgb(0, 0, 0); =
color: rgb(0, 0, 0); font-family: Menlo-Regular; font-size: 12px;" =
class=3D"">A fatal error occurred: Failed to write to target RAM (result =
was 01070000: Operation timed out)</span></div><br class=3D""><blockquote =
type=3D"cite" class=3D""><div class=3D""><div class=3D"">Are you sure =
this is not the custom hardware design issue?<br class=3D""><br =
class=3D""></div></div></blockquote>no, it=E2=80=99 happens on several =
esp32s specially from m5stack</div><div><br class=3D""><blockquote =
type=3D"cite" class=3D""><div class=3D""><div class=3D"">Do you have =
Reset and BootSel pins on your board that you can trigger<br class=3D"">by=
 hand in order to help USB-UART cable?<br =
class=3D""></div></div></blockquote>this particular onw, m6stack =
black/basic, has no gpio-0 available to enter</div><div>download mode, =
the older models have no problem with the usb-c<br class=3D""><blockquote =
type=3D"cite" class=3D""><div class=3D""><div class=3D""><br =
class=3D"">What is your magic that you need to do in order to flash the =
chip successfully?<br class=3D""></div></div></blockquote>see the =
above.</div><div>some other boards I just connect gpio-0 to ground, or =
have to press a button before power on,</div><div>but I can flash. Also, =
as soon as I manage to flash, I can continue flashing over the =
air.</div><div><br class=3D""><blockquote type=3D"cite" class=3D""><div =
class=3D""><div class=3D""><br class=3D"">Does standard operations (UART =
CLI) work as expected?<br class=3D""></div></div></blockquote>again, all =
boards/thingis i have no problem reading the console, and even =
writing<br class=3D""><blockquote type=3D"cite" class=3D""><div =
class=3D""><div class=3D""><br class=3D"">Did you take a look at man =
stty and use stty crtscts &lt;port&gt; / stty<br class=3D"">-crtscts =
&lt;port&gt; to see if that fixes anything?<br =
class=3D""></div></div></blockquote><div><br class=3D""></div>the =
initial (or when my software crashes) flashing is done via a python that =
does all the magic.<br class=3D""><blockquote type=3D"cite" =
class=3D""><div class=3D""><div class=3D""><br class=3D"">--<br =
class=3D"">CeDeROM, SQ7MHZ, <a href=3D"http://www.tomek.cedro.info" =
class=3D"">http://www.tomek.cedro.info</a><br class=3D""><br =
class=3D""></div></div></blockquote></div><br class=3D""><div =
class=3D""><br class=3D""></div><div class=3D"">well, it does feel =
better knowing i=E2=80=99m not the only one with this problem =
:-)</div><div class=3D""><br class=3D""></div></body></html>=

--Apple-Mail=_8B7298CB-40D9-437F-8508-6C670CBDA90B--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2658B51D-E40A-4B08-8EDF-7CF1264B0FB4>