Skip to main content

ser2sock

Pypi version

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: address mandatory. Supports any keyword supported by serial.serial_for_url (or serial.Serial if serial_for_url does not exist
  • tcp: address mandatory (must be a pair bind host and port).
    • reuse_addr: (default: True) TCP reuse address
    • no_delay: (default: True) disable Nagle's algorithm
    • tos: (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

ser2sock-3.0.0.tar.gz (3.0 kB view details)

Uploaded Source

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

Hashes for ser2sock-3.0.0.tar.gz
Algorithm Hash digest
SHA256 6ca07ed6ad913d0fae873dd83cd808928a5c4a23c4d5ace177e9f5d9f758f8eb
MD5 0d1a3dd6ca5b834a3060d059b752b5d1
BLAKE2b-256 696151fca4d8c38d8e82543f47fca96f376b0c112c79eb7c7299f6dfd7788f3c

See more details on using hashes here.

Release history Release notifications | RSS feed

4.1.2

1 file

4.1.1

1 file

4.1.0

1 file

This release

3.0.0 This release

1 file

2.0.0

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page