pyserial-asyncio icon indicating copy to clipboard operation
pyserial-asyncio copied to clipboard

Use `loop.create_connection` instead of pyserial's `protocol_socket` for TCP

Open puddly opened this issue 3 years ago • 0 comments

This change speeds up serial communication over pyserial's select()-based socket:// handler by 2-5× in real-world scenarios (33KB of packets in ~3000 RX/TX operations now takes 12s instead of 25s).

I've patched the returned transport to be API-compatible with SerialTransport, including get_extra_info("socket").


To get master to actually run, I've included the commit from https://github.com/pyserial/pyserial-asyncio/pull/83. If you'd like to merge that PR separately, I'll rebase against master instead.

puddly avatar Aug 24 '22 23:08 puddly