Serialenum is a simple utility to correctly enumerate all available and present serial ports on a given system. There are a number of ways to enumerate serial ports, but they are platform-specific and vary in effectiveness. Serialenum attempts to provide the best possible methods for each supported platform.
pip install serialenum
import serialenum
serialenum.enumerate()
The enumerate
method will return a list of serial ports or a blank list, if
none are found. If serial ports could not be enumerated, it will return None
.
Script called serialenum can be used from command line
serialenum
It prints out all found serial ports, one per line.
- Windows XP or later
- Recent Linux 2.6+ kernels
The Windows implementation iterates over a registry key to ensure that usb-to-serial converters and oddly-named COM ports are discovered. This should work correctly on any modern version of Windows.
The Linux implementation uses /dev/serial
to enumerate attached serialenum
port devices. This avoids the fake ttyS
devices typically present and also
accounts for usb-to-serial converters.
- Add fallback support for older Linux systems
- Add support for more operating systems (testing help needed)