• Stars
    star
    257
  • Rank 158,140 (Top 4 %)
  • Language
    C
  • License
    GNU General Publi...
  • Created about 13 years ago
  • Updated 11 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Null modem emulator

tty0tty - linux null modem emulator v1.2

The tty0tty directory tree is divided in:

module - linux kernel module null-modem
pts - null-modem using ptys (without handshake lines)

Null modem pts (unix98):

When run connect two pseudo-ttys and show the connection names:

(/dev/pts/1) <=> (/dev/pts/2)

the connection is:

TX -> RX
RX <- TX

Module:

The module is tested in kernel 3.10.2 (debian)

When loaded, create 8 ttys interconnected:

/dev/tnt0 <=> /dev/tnt1
/dev/tnt2 <=> /dev/tnt3
/dev/tnt4 <=> /dev/tnt5
/dev/tnt6 <=> /dev/tnt7

the connection is:

TX -> RX
RX <- TX
RTS -> CTS
CTS <- RTS
DSR <- DTR
CD <- DTR
DTR -> DSR
DTR -> CD

Requirements:

For building the module kernel-headers or kernel source are necessary.

Installation:

Download the tty0tty package from one of these sources: Clone the repo https://github.com/freemed/tty0tty

git clone https://github.com/freemed/tty0tty

Build the kernel module from provided source

cd tty0tty-1.2/module
make

Install the new kernel module into the kernel modules directory

sudo make modules_install

NOTE: if module signing is enabled, in order for depmop to complete, you may need to create file certs/x509.genkey in the kernel modules include directory and generate file signing_key.pem using openssl, guides are available online.

Appropriate permissions are provided thanks to a udev rule located under:

/etc/udev/rules.d/50-tty0tty.rules

NOTE: you need to add yourself to the dialout group (and do a full relog), with:

sudo usermod -a -G dialout ${USER}

Load the module

sudo udevadm control --reload-rules
sudo depmod
sudo modprobe tty0tty

You should see new serial ports in /dev/ (ls /dev/tnt*) You can now access the serial ports as /dev/tnt0 (1,2,3,4 etc) Note that the consecutive ports are interconnected. For example, /dev/tnt0 and /dev/tnt1 are connected as if using a direct cable.

Persisting across boot:

edit the file /etc/modules (Debian) or /etc/modules.conf

nano /etc/modules

and add the following line:

tty0tty

Note that this method will not make the module persist over kernel updates so if you ever update your kernel, make sure you build tty0tty again repeat the process.

Debian package

In order to build the dkms Debian package

sudo apt-get update && sudo apt-get install -y dh-make dkms build-essential
debuild -uc -us

Contact

For e-mail suggestions : [email protected]

More Repositories

1

freemed

FreeMED Electronic Medical Record / Practice Management System
PHP
94
star
2

opendental

opendental git mirror
C#
17
star
3

mirth

git mirror of Mirth Connect ( http://www.mirthcorp.com/products/mirth-connect )
Java
13
star
4

remitt

REMITT Electronic Medical Information Translation and Transmission
Java
13
star
5

mobilecg

MobilECG hardware and software
C
10
star
6

openclinicga-old

Git clone of OpenClinic GA ( http://svn.code.sf.net/p/open-clinic/code/ )
Java
9
star
7

remitt-server

REMITT service based on a Golang/Gin stack
XSLT
6
star
8

care2x

Clone of Care2x hospital system ( http://sourceforge.net/p/care2002/ )
PHP
5
star
9

freemed-data

Medical terminology and data preparation for EMR/PM systems
Go
5
star
10

orthanc

Orthanc mirror
C++
5
star
11

freemed-server

FreeMED rewrite in Golang/Gin/etc
Go
5
star
12

freeshim

opensource multiplatform medical device interface
Java
4
star
13

freemedsoftware.org

FreeMED Software Foundation website
Makefile
3
star
14

openreact

Open drug interaction API based on FreeMedForms db
Java
3
star
15

compositepdf

composite form data onto a template PDF
Java
2
star
16

temper

Temperature sensor client
C
2
star
17

webharness

Javascript web scripting using HtmlUnit and Rhino
Java
2
star
18

datagen

Randomized patient data generator for FreeMED
2
star
19

jasperwrapper

thin JasperReports wrapper for PHP use
Java
2
star
20

opendatakit-clinic

FreeMED port of opendatakit-clinic
Java
2
star
21

freemed-0.8.x

Legacy 0.8.x code copy
PHP
1
star
22

exchangebackup

MS Exchange Server backup utility
Java
1
star
23

loadtester

Web Load Tester
Java
1
star
24

freemed-mirth

Mirth ( http://www.mirthproject.org/ ) configurations for use with FreeMED.
1
star
25

remitt.org

JavaScript
1
star
26

asterisk-reporting

Asterisk PBX reporting parts
Shell
1
star
27

remotetailer

Remote tailer for logs accessible via WebDAV
Java
1
star