[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freebsd-hackers
Subject:    Re: USB chip CH9102F
From:       Daniel Braniss <danny () cs ! huji ! ac ! il>
Date:       2022-09-15 12:29:45
Message-ID: 2658B51D-E40A-4B08-8EDF-7CF1264B0FB4 () cs ! huji ! ac ! il
[Download RAW message or body]

> On 14 Sep 2022, at 18:14, CeDeROM <cederom@tlen.pl> wrote:
> 
> On Wed, Sep 14, 2022 at 3:43 PM Daniel Braniss wrote:
>> Hi,
>> is there/will there be any support for this chip? CH9102F.
>> 
>> 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's is not working.
> 
> I also bought USB-C based UART-to-USB adapter from Waveshare with
> CH343G chip and use it for ESP32 flashing.
> 
> 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.
> 
> What are your problems exactly?
> 
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?
> 
no, it' 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
> 
> 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.

> 
> Does standard operations (UART CLI) work as expected?
again, all boards/thingis i have no problem reading the console, and even writing
> 
> 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.
> 
> --
> CeDeROM, SQ7MHZ, http://www.tomek.cedro.info
> 


well, it does feel better knowing i'm not the only one with this problem :-)


[Attachment #3 (unknown)]

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



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic