Menu

#578 Unable to read from Seeduino XIAO board. Hardware Control disables read back

closed-rejected
Maettu
arduino (1)
7
2023-11-18
2023-11-06
No

Dear guys

Similar to some previously reported issues where YAT fails at establishing communication with Arduino-based boards, I am facing some issues with a Seeduino XIAO board where nothing gets read upon conecting my device. It does work right away with the Arduino Serial Monitor, though.

I am aware of a previous thread that indicates that enabling Hardware flow control solves some issues.

While this partially worked for me, it is NOT a complete solution. After enabling Hardware Control, I was able to finally read some data from the USB (see attached capture)

unable to write to the port

my settings are:
settings

My sketch sends data on the serial port and loops it back on Serial port 1 from this board (pins 6 and 7) (sketch attached) however, I get the error: [Warning: CTS inactive, retaining data...]
and no looped data is read back.

Any help would be very much appreciated

sketch

1 Attachments

Discussion

  • Maettu

    Maettu - 2023-11-06
    • status: unread --> pending
    • assigned_to: Maettu
    • Priority: 5 --> 7
     
  • Maettu

    Maettu - 2023-11-06

    Hi Daniel,

    Great you've already come across the thread discussing hardware flow control. I think your case is also connected to this, though in a different way. The first screenshot indicates CTS is held inactive by the device, resulting in YAT retaining data. Have you tried activating the RTS line on your device? Unless the CTS line is active, YAT will not send data when hardware flow control is selected. Alternatively, try configuring the terminal's Flow Control to None and then manually activate the RTS line (based on the findings in the other discussion thread).

    I have googled for "arduino serial hardware flow control" but that didn't bring much insight. Seems as if Arduino natively doesn't support hardware flow control, but some add-on libraries do so. And I don't have a Seeduino XIAO at hand.

    Best regards,
    Matthias

    PS: The "serial-communications-not-working-at-all" in the URL shown in the second screenshot puzzles me, seems as if the Seeduino XIAO has a major issue with serial communication, or more likely, the creator of the that thread also run into this flow control related issue.

     

    Last edit: Maettu 2023-11-06
  • Daniel Melendrez

    Dear Maettu

    Thank you so much for your prompt help

    Give me some time to run further tests and check if there is a way around enabling RTS. As you mentioned, I too believe that there is no option for this.

    I must admit that several forums have reported issues with this particular board, however, I am facing issues ONLY with your amazing app YAT (which I deeply love <3)

    I will get back to your as soon as I can

    Cheerio

     
    • Maettu

      Maettu - 2023-11-07

      I guess many apps don't fully implement hardware flow control, meaning they simply ignore the fact CTS is inactive...

       
  • Daniel Melendrez

    Hi Maettu

    I am coming back with a recent discovery.

    Running the XIAO board on putty works fine with CTS/RTS enabled.

    I am now wondering what are the main "structural" differences between the .NET impementation of YAT and Putty's? (I believe Putty is made with pure C)

    Please note that I have tried all options without success.

    I am thinking if adding more "manual" settings for changing the CTS/RTS values could be of help (?)

    Thanks once again

    Daniel

     
    • Maettu

      Maettu - 2023-11-17

      Hi Daniel,

      The picture previously attached clearly shows that CTS is inactive, i.e. the XIAO board does not activate its RTS line. To me this indicates the board doesn't use hardware flow control, that's why I previously proposed to configure the terminal's Flow Control to None and then manually activate the RTS line (based on the findings in the other discussion thread). What happens if you do this?

      Best regards,
      Matthias

       
  • Daniel Melendrez

    Hi Maettu

    I believe the best thing for now is to close this "bug".

    These SAMD21 XIAO boards are reportedly flawed on this aspect. It seems the Arduino implementation does not consider full native controll of the UART port. Some people have proposed some weird trickery by modifying the SAMD21 Arduino core and I believe this is pointless.

    I just wanted to use one of these fun little boards on a project, however, I might do what others have done: toss the bin the bin (of usless parts) and move to better and surely more robust options

    Thanks for your help in any case

    Daniel

     
  • Maettu

    Maettu - 2023-11-18
    • status: pending --> closed-rejected
     

Log in to post a comment.