Hi Erik,

Would you mind opening an issue at https://github.com/apache/nuttx/issues?

It isn't clear which SoC you are testing, but it seems to be a RISC-V-based
Espressif SoC (ESP32-C3, perhaps). For ESP32-C3, we have two
implementations: a legacy
<https://nuttx.apache.org/docs/latest/platforms/risc-v/esp32c3-legacy/index.html>
implementation and a common
<https://nuttx.apache.org/docs/latest/platforms/risc-v/esp32c3/index.html>
implementation. The legacy implementation is intended to be deprecated as
soon as the common implementation reaches the same support level. The
so-called common implementation shares sources between all the supported
RISC-V-based devices (ESP32-C3, ESP32-C6 and ESP32-H2).

The legacy implementation theoretically supports RS485, but it doesn't
build the `arch/risc-v/src/common/espressif/esp_serial.c` (which is used by
the common implementation). So it isn't clear how you are enabling the
RS485 mode.

For the common implementation, neither RS485 nor hardware flow control has
been implemented yet. Can you please provide more details on issues to
track it down?

Best regards,

Em seg., 17 de fev. de 2025 às 16:49, Erik Englund <erik.engl...@gmail.com>
escreveu:

> While kiddo is home from school with a fever, I thought i would give NuttX
> a go again, living mostly in the Zephyr-world for the past years.
> Great job starting to implement cmake buildsystem, as keeping out-of-tree
> build directories greatly reduces the cases where you need to reclone the
> entire project due to build system errors, especially after a git pull
> without remembering to do a clean/distclean etc!
>
> Im building from master, couldnt see any relevant changes since 12.8.0.
>
> Enabling flow control in the build instantly crashes the build as the
> function:
> esp_rxflowcontrol (arch/risc-v/src/common/espressif/esp_serial.c) is
> trying to call the function esp_lowputc_set_iflow which isnt included in
> the build. It seem to exist in:
> arch/risc-v/src/esp32c3-legacy/esp32c3_lowputc.c
> Is the entine ESP32 lineup being merged to a ton of hal/hal_ll files
> instead of the old pure implementation?
>
> Anyways, flowcontrol seem to be setup in esp_setup (esp_serial.c) so just
> using that code in esp_rxflowcontrol should fix this issue.
>
> I setup UART1 in RS485 mode: dl0 and dl1 enabled + enable rs485 mode.
> CTS blocks transmission as intended if CTS isnt pulled to GND.
> But RTS signal is just pulling the pin high for a few microseconds before
> going low again,  right before transmitting the message.
>
> [image: image.png]
>
>
> The issue is seen when echoing to the serialport from nsh as when opening
> the serial device in a application and transmitting data.
>
> Is this a misconfiguration or a known issue?
>
>
>
>

Reply via email to