SkillAgentSearch skills...

Grabserial

Grabserial - python-based serial dump and timing program - good for embedded Linux development

Install / Use

/learn @tbird20d/Grabserial
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

grabserial

Grabserial - python-based serial dump and timing program - good for embedded Linux development

See http://elinux.org/Grabserial for documentation and examples.

For help with command line options, use: grabserial -h

Installation

If you have the python 'serial' module, you can just place grabserial in a directory on your path, or add the directory containing grabserial to your path, or just invoke grabserial directly.

This should work:

$ sudo cp grabserial /usr/local/bin
$ grabserial

You can also install this as a python module with: 'python setup.py install' (Some users have reported problems with this - let me know if it doesn't work for you.)

Examples

$ grabserial -d /dev/ttyUSB0 -e 30 -t -m "^Linux version.*"

Grab serial input for 30 seconds (-e 30), displaying the time for each line (-t), and re-setting the base time when the line starting with "Linux version" is seen.

$ grabserial -d COM4 -T -b 115200 -e 3600 -Q -o "%" -a

Log serial data from COM4, with system timestamp (-T) with settings 115200:8N1:xonxoff=0:rtscts=0 (-b 115200) to the output file "2017-06-13T22:45:08" (-o "%"), for 1 hour (-e 3600) and then restart (-a) to create new log.

$ grabserial -d /dev/ttyUSB2 -C -q "nsh>" -c free

Send the 'free' command to the serial port (-c free), and show output until a prompt of "nsh>" is seen (-q "nsh>"). Suppress the command echo and shell prompt (-C).

$ grabserial -v -d COM10 -B 9600 -T -R 1h -o "c:\log\%Y-%m-%dT%H-%M-%S.txt"

Start a continous recording with timestamps for each line (-T) (eg: [09:07:47.330944 0.007000]) and create a new file with timestamp %Y-%m-%dT%H-%M-%S at the specified location every hour (-R).

Notice - New Default ‘-o’ Behavior

Using the '-o' option, as in the second example above, with a generic '%' or a specific pattern that includes a '%d' (date) reference will now close the output file and open a new one if the system date changes while the program is running.

If the command from the second example above is started at 11:30pm (system time), the program will capture data for one hour but will produce two output files; one with the date and time it was started and another with the date and time that the program first outputs data after the system time passes midnight.

View on GitHub
GitHub Stars215
CategoryDevelopment
Updated1mo ago
Forks81

Languages

Python

Security Score

95/100

Audited on Feb 26, 2026

No findings