Open upswing1 opened 3 years ago
@upswing1 can you give some info on your use case? almost nothing uses RTS/CTS anymore.
It is a requirement for the lte feather using the 9160 nordic Semiconductor chip. I believe that I can work around this requirement.. I will know more soon.
Get Outlook for Androidhttps://aka.ms/ghei36
From: bryan costanich @.> Sent: Sunday, May 9, 2021 11:09:42 PM To: WildernessLabs/Meadow_Issues @.> Cc: upswing1 @.>; Mention @.> Subject: Re: [WildernessLabs/Meadow_Issues] RTS/CTS hardware flow control missing (#149)
@upswing1https://github.com/upswing1 can you give some info on your use case? almost nothing uses RTS/CTS anymore.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/WildernessLabs/Meadow_Issues/issues/149#issuecomment-836104920, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIGJPKJDCKOQY3Q7PPLERT3TM5E7NANCNFSM426A3NIA.
Current Meadow does not support hardware flow control. If a specific use-case arrives again, we can re-investigate potentially adding support on some of the GPIOs. Closing the issue for now.
Re-opening. Another customer has requested this capability.
Connecting an RS485 transceiver directly to a meadow UART is not currently possible. For the CCM can PA15(JTDI) be optionally mapped to COM4 RTS?
Investigating the RTS/CTS I've come up with the following for the Core Compute module:
Signal | Pin | Alternate Function |
---|---|---|
UART1_CTS | PA11 (USB_D_N) | AF7 |
UART1_RTS | PA12 (USB_D_P) | AF7 |
UART4_CTS | PB0 | AF8 |
UART4_RTS | PA15/PB1 * | AF8 |
*The ST32 docs conflict here. The data sheet says PB1, but the AF map says PA15. I'm inclined to believe the latter
The table above shows that the pins are brought out on the core compute module, so physically we can support RTS/CTS on either UART (COM1 or COM4). There would be some OS work involved to set/initialize the alternate functions for those pins and to then disable them as available general purpose I/O
Great thanks for this!
I'd come to the same conclusion on PA15 for UART4. We're trying to keep USB as that's kind of important for DFU mode/update...
The F7FeatherV2 has 2 UARTs that have RTS and CTS exposed. But, only one can be used at any time because, of the exposed pins, only D12 (PB14) is available for RTS. If you need to know about one of our other stock boards, let me know which one and I'll figure it out. USART 3 RX - CIPO (PC11) USART 3 TX - SCK (PC10) USART 3 RTS - D12 (PB14) USART 3 CTS - D06 (PB13)
UART4 RX - CIPO (PC11), D00 (PI9) UART4 TX - SCK (PC10), D01 (PH13) UART4 RTS - D12 (PB14) UART4 CTS - A3 (PB0), D13 (PB15)
For the ProjLab 3.e, only UART 4 can be used. UART 4 RX - mikroBUS 2 CIPO pin (PC11) or Grove UART connector labeled D13/COM1_TX (labeling on board is wrong), it is RX though labeled TX. UART 4 TX - mikroBUS 2 SCK pin (PC10) or Grove UART connector labeled D12/COM1_RX (as above labeling is wrong). UART 4 RTS - mikroBUS 2 UART_TX pin (PB14). UART 4 CTS - mikroBUS 2 UART_AN (PB0) pin or mikroBUS 1 UART_RX pin (PB15).
Serial bus is currently a 2 wire Tx/Rx. In the do do list bucket, please add support for RTS/CTS hardware flow control.