Commit graph

219 commits

Author SHA1 Message Date
Peter Collingbourne
a81c43a01a Match user input against config section names if pattern matching was unsuccessful.
This allows for better config file ergonomics if the user has a diverse
set of serial devices as the name does not need to be specified in
the config file twice.
2022-04-20 15:31:41 -07:00
Martin Lund
45c32f78a8 Update socket interface documentaton 2022-04-20 12:08:55 +02:00
Peter Collingbourne
fb453160ef Add support for external control via a Unix domain socket.
This feature allows an external program to inject output into and
listen to input from a serial port via a Unix domain socket (path
specified via the -S/--socket command line flag, or the socket
config file option) while tio is running. This is useful for ad-hoc
scripting of serial port interactions while still permitting manual
control. Since many serial devices (at least on Linux) get confused
when opened by multiple processes, and most commands do not know
how to correctly open a serial device, this allows a more convenient
usage model than directly writing to the device node from an external
program.

Any input from clients connected to the socket is sent on the serial
port as if entered at the terminal where tio is running (except that
ctrl-t sequences are not recognized), and any input from the serial
port is multiplexed to the terminal and all connected clients.

Sockets remain open while the serial port is disconnected, and writes
will block.

Example usage 1 (issue a command):

  echo command | nc -UN /path/to/socket > /dev/null

Example usage 2 (use the expect command to script an interaction):

  #!/usr/bin/expect -f

  set timeout -1
  log_user 0

  spawn nc -UN /path/to/socket
  set uart $spawn_id

  send -i $uart "command1\n"
  expect -i $uart "prompt> "
  send -i $uart "command2\n"
  expect -i $uart "prompt> "
2022-04-18 14:06:33 -07:00
Martin Lund
28c880cdab Remove verbose option
Remove the command-line verbose option but let the ctrl-t c feature
print some of the verbose information (active config path/section).
2022-04-13 16:28:30 +02:00
Sylvain LAFRASSE
c95226cb46 Update verbosity documentation. 2022-03-31 13:59:02 +02:00
Sylvain LAFRASSE
ac77f2dbb9 Add documentation of verbose mode. 2022-03-30 18:11:36 +02:00
Martin Lund
f229ee2f96 Update man page 2022-03-24 22:52:11 +01:00
Martin Lund
ed97a8dc21 Update man page 2022-03-12 11:20:03 +01:00
Martin Lund
e81e76473a Add color configuration support 2022-03-11 16:09:21 +01:00
Martin Lund
745244df06 Update man page 2022-03-11 14:34:33 +01:00
Liam Beguin
25123fefea document configuration file options
Signed-off-by: Liam Beguin <liambeguin@gmail.com>
2022-03-10 10:34:52 -05:00
Martin Lund
b23397caa0 Fix text 2022-02-25 07:16:14 +01:00
Martin Lund
8f63f755da Cleanup color option 2022-02-19 09:45:02 +01:00
Martin Lund
45210bc741 Add support for automatically generated log filename
Automatically generate log filename if none is provided.

The auto generated file name is on the form:
"tio_DEVICE_YYYY-MM-DDTHH:MM:SS.log"
2022-02-19 09:29:33 +01:00
Martin Lund
d8a822a3fb Add support for configurable timestamp format
Also changes default timestamp format from ISO8601 to classic 24-hour
format as this is assumed to be the format that most users would prefer.

And reintroduces strict but optional ISO8601 format.

This feature allows to easily add more timestamp formats in the future.
2022-02-19 02:26:10 +01:00
Martin Lund
0e62995e6e Only apply color formatting when using color option
To help the color blind who may use custom terminal foreground /
background colors.
2022-02-15 00:48:10 +01:00
Martin Lund
274cb63197 Add '-c, --color' option
Allow user to select which ANSI color code to use to colorize the tio
text. To successfully set the color the color code must be in the range
0..255.

If color code is negative tio will print all available ANSI colors.

The default color is changed to bold white to make tio defaults usable
for most users, including color blind users.
2022-02-14 22:25:29 +01:00
Martin Lund
d4c3751405 Meson cleanup 2022-02-13 11:07:51 +01:00
Martin Lund
137b2823af Update headers 2022-02-13 06:35:03 +01:00
Martin Lund
16836de0e5 Update text 2022-02-12 04:27:09 +01:00
Martin Lund
bb300293cc Rename option -i to -L 2022-02-10 15:07:14 +01:00
Martin Lund
e9208d693e Replace autotools with meson
To introduce much simpler build configuration which is also easier to
maintain.
2022-02-10 05:09:32 +01:00
Martin Lund
c01152bb38 Fix man page 2022-02-09 19:49:02 +01:00
Martin Lund
7a2a18232d Add list serial devices feature
For convenience, add a --list-devices option which lists the available
serial devices.
2022-02-08 23:13:34 +01:00
Martin Lund
6310f28d2c Shorten timestamp description 2022-02-08 21:47:55 +01:00
Sylvain LAFRASSE
c6d996550a
Add description for time stamping. 2022-02-07 17:48:32 +01:00
George Stark
04d92740f5 add serial lines manual control 2019-09-19 15:13:38 +03:00
Martin Lund
39a8f63640 Add command to show version
The key sequence ctrl-t v will now show the version of tio.
2018-11-27 23:56:34 +01:00
Martin Lund
7245cdf240 Update date 2018-06-26 18:58:20 +02:00
Henner Zeller
dabd2130a9 Provide local-echo option.
Can be switched on with -e on the command line.
Can be toggled with Ctrl t e while program is running.
2018-06-23 12:37:40 -07:00
Martin Lund
b7cdbec8e2 Update man page and bash completion 2018-04-18 20:48:04 +02:00
Martin Lund
77c19ff152 Add mapping flags INLCRNL and ODELBS
The following new mapping flags are added:

INLCRNL: Map NL to CR-NL on input.
ODELBS: Map DEL to BS on output.

Flags requested and tested by Jan Ciger (janoc).
2017-12-29 14:54:40 +01:00
Martin Lund
641b7d87ca Update man page 2017-11-13 21:02:14 +01:00
Martin Lund
23bab24890 Update man page 2017-11-11 15:48:19 +01:00
Martin Lund
b2aafd696b Add special character map feature
Add a --map option which allows to map special characters, in particular CR and
NL characters which are used in various combinations on varios platforms.
2017-11-05 23:10:12 +01:00
Martin Lund
b0f7d507d4 Mention website 2017-10-27 14:56:37 +02:00
Martin Lund
d3c637c30e Update man page 2017-10-27 14:38:54 +02:00
Jakub Wilk
f09f85d0d2 Add missing commas in conditional sentences 2017-09-29 19:29:38 +02:00
Jakub Wilk
45bab702f4 Fix typos 2017-09-28 17:13:15 +02:00
Martin Lund
7bb64e4ad4 Update man page date 2017-09-24 22:40:58 +02:00
Martin Lund
b95df7712b Update README and man page 2017-09-24 01:08:35 +02:00
Martin Lund
3457446a04 Add support for hexidecimal mode
A new key command 'ctrl-t h' is introduced which toggles between
hexidecial mode and normal mode. When in hexidecimal mode data received
will be printed in hexidecimal.
2017-09-19 12:19:17 +02:00
Adam Borowski
74a543b263 'ctrl-t b' to send serial break. 2017-04-10 01:05:40 +02:00
Martin Lund
a64d1a493b Rearranged key commands
Rearranged the key commands:

ctrl-c (clear screen) is now
ctrl-l which is similar to the well known shell ctrl-l

ctrl-i (show settings information) is now
ctrl-c (show configuration)

Updated man page accordingly.
2016-06-04 21:56:53 +02:00
Martin Lund
b9a2f4a1be Added "ctrl-t c" key command to clear screen 2016-06-02 00:35:19 +02:00
Martin Lund
663022c381 Updated man page 2016-05-29 08:44:13 +02:00
Martin Lund
ad56bd1750 Updated man page 2016-05-24 21:01:34 +02:00
Martin Lund
59a537f7dd Added 'ctrl-t ?' to list available commands 2016-05-20 20:10:12 +02:00
Martin Lund
ffe87bc566 Added key command for showing session settings
A new key command "ctrl-t i" is added to allow the user to display the
various session settings information (baudrate, databits, log file, etc.).

This is usefull in case you have a running session but have forgotten
what the settings are.
2016-05-18 15:29:09 +02:00
Martin Lund
a8103b8983 Added simple tx/rx statistics command (ctrl-t s)
To display the total number of bytes transmitted/received simply perform the
'ctrl-t s' command sequence.

This feature can be useful when eg. trying to detect non-printable
characters.
2016-05-17 16:08:19 +02:00