--- id: pyserial-asyncio-fast version: "0.16" license: BSD-3-Clause license_treatment: permissive maintenance: aging --- # pyserial-asyncio-fast — Python Serial Port Extension - Asynchronous I/O support License: permissive · Maintenance: aging · Downloads: 173.1K/mo ## What it is and what it does pyserial-asyncio-fast is an asyncio wrapper for pySerial that enables non-blocking serial port I/O in async Python applications. It implements eager writes—a technique that reduces overhead by avoiding frequent addition and removal of the asyncio writer. This makes it suitable for applications that need to communicate with serial devices without blocking the event loop. The package targets Python 3.9 and later on POSIX systems (Linux, BSD, macOS). It is a thin layer over pySerial, so you still depend on that library's serial port handling; the main value is the async integration. Development status is marked Production/Stable, though the last release was 505 days ago, suggesting the package may be feature-complete rather than actively developed. Use it for: - Reading sensor data from a microcontroller over USB serial while handling other async tasks in the same event loop. - Building a home automation daemon that communicates with multiple serial devices concurrently without blocking. - Implementing a command-line tool that sends commands to a serial device and processes responses asynchronously. - Logging or monitoring serial port data streams in real-time alongside other async I/O operations. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Provides async I/O support for serial port communication in Python, wrapping pySerial with asyncio-compatible read and write operations optimized for reduced overhead. Yes, if you need async serial port I/O in Python 3.9+. The package is stable, permissively licensed, has low install friction, and solves a real problem. The aging maintenance status is not a blocker—the code appears complete and unarchived—but verify that the release gap does not mask unresolved issues for your use case. ## Install pip install pyserial-asyncio-fast uv add pyserial-asyncio-fast poetry add pyserial-asyncio-fast ## Installing pyserial-asyncio-fast Before you install: Low install friction with a single pure-Python dependency (pyserial). Maintenance status is aging—last commit was 2025-03-27 and no release for 505 days—but the repository remains active and unarchived, suggesting continued use rather than abandonment. License in practice: BSD-3-Clause is permissive; you may use, modify, and distribute this package with minimal restrictions, provided you retain the license notice. Quickstart: pip install pyserial-asyncio-fast import asyncio from pyserial_asyncio_fast import open_serial_connection async def main(): reader, writer = await open_serial_connection(url='/dev/ttyUSB0') data = await reader.read() writer.close() asyncio.run(main()) Requires Python 3.9 or later and a working serial port device. Verify before relying: - Whether the eager writes optimization measurably improves latency or throughput for typical use cases. - Current compatibility with Python 3.13 beyond the classifier claim. - Whether the 505-day release gap indicates the package is feature-complete or under-maintained. ## Package facts - License: BSD-3-Clause (permissive) - Python support: supports_current - Install friction: low - Maintenance: aging - Downloads: 173.1K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags async serial port communication, pyserial asyncio wrapper, serial port async I/O, asyncio serial device, non-blocking serial read write, async serial port python, async-io, serial-communication [View on SkillFed](https://skillfed.io/packages/pyserial-asyncio-fast) · [View on PyPI](https://pypi.org/project/pyserial-asyncio-fast/)