ser2sock
A single-threaded, multi serial line to TCP bridge server.
Can run under python 2.6 up to 3.x (tested 3.8).
Installation
From within your favorite python environment:
pip install ser2sock
Usage
ser2net -c <configuration file>
Configuration
In order to provide flexibility, configuration is written in python.
The only requirement is to have a bridges member which consists of a
sequence of bridges. A bridge is a dictionary with mandatory keys serial
and tcp.
Example:
bridges = [
{
'serial': {'address': '/dev/ttyS0'},
'tcp': {'address': ("0", 18500)}
},
{
'serial': {'address': '/dev/ttyS1', 'baudrate': 19200},
'tcp': {'address': ("0", 18501), 'no_delay': False}
}
]
serial:addressmandatory. Supports any keyword supported byserial.serial_for_url(orserial.Serialifserial_for_urldoes not existtcp:addressmandatory (must be a pair bind host and port).reuse_addr: (default: True) TCP reuse addressno_delay: (default: True) disable Nagle's algorithmtos: (default:0x10, meaning low delay) type of service.
tcp and serial helpers are automatically loaded to the config namespace.
Here is the equivalent above config using helpers:
bridges = [
[serial(address="/dev/ttyS0"), tcp(address=("0", 18500))],
[serial(address="/dev/ttyS1", baudrate=19200),
tcp(address=("0", 18501), no_delay=False)],
]
You are free to put any code in your python configuration file. Here is an example setting up logging:
import logging
logging.basicConfig(
level=logging.DEBUG,
format='%(asctime)s %(levelname)s %(message)s'
)
bridges = [
[serial(address="/dev/ttyS0"), tcp(address=("0", 18500))],
[serial(address="/dev/ttyS1", baudrate=19200),
tcp(address=("0", 18501), no_delay=False)],
]
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ser2sock-3.0.0.tar.gz.
File metadata
- Download URL: ser2sock-3.0.0.tar.gz
- Upload date:
- Size: 3.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/2.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.0.post20200616 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ca07ed6ad913d0fae873dd83cd808928a5c4a23c4d5ace177e9f5d9f758f8eb
|
|
| MD5 |
0d1a3dd6ca5b834a3060d059b752b5d1
|
|
| BLAKE2b-256 |
696151fca4d8c38d8e82543f47fca96f376b0c112c79eb7c7299f6dfd7788f3c
|