Skip to main content

PipeSerial is a command-line utility to send some input from stdin to a serial device, and then collect and return the output from the device.

Project description

PipeSerial

PipeSerial is a command-line utility to send some input from stdin to a serial device and return the output on stdout.

A quick example:

[tykling@container1 ~]$ echo -ne "AT\nATI" | sudo pipeserial -c 2 /dev/ttyU0.3
AT
OK
ATI
Quectel
EC25
Revision: EC25EFAR06A06M4G

OK

[tykling@container1 ~]$

Same thing with debug enabled:

[tykling@container1 ~]$ echo -ne "AT\nATI" | sudo pipeserial -c 2 -d /dev/ttyU0.3
2020-10-31 22:49:42 +0000 pipeserial DEBUG pipeserial.main():311:  Initialising the PipeSerial class
2020-10-31 22:49:42 +0000 pipeserial DEBUG pipeserial.__init__():54:  Configuring serial port {serialport} ...
2020-10-31 22:49:42 +0000 pipeserial DEBUG pipeserial.main():329:  Payload is 6 bytes
2020-10-31 22:49:42 +0000 pipeserial DEBUG pipeserial.main():335:  Output to expect: ['\r\nOK\r\n', '\r\nERROR\r\n']
2020-10-31 22:49:42 +0000 pipeserial DEBUG pipeserial.open():75:  Opening serial port...
2020-10-31 22:49:42 +0000 pipeserial DEBUG pipeserial.open():82:  Serial port opened OK!
2020-10-31 22:49:42 +0000 pipeserial DEBUG pipeserial.run():107:  Sending payload line: AT
2020-10-31 22:49:43 +0000 pipeserial DEBUG pipeserial.run():107:  Sending payload line: ATI
2020-10-31 22:49:44 +0000 pipeserial DEBUG pipeserial.run():114:  Collecting output, looking for one of these regular expressions: ['\r\nOK\r\n', '\r\nERROR\r\n']
2020-10-31 22:49:44 +0000 pipeserial DEBUG pipeserial.run():116:  Will stop collecting after 2 matches
2020-10-31 22:49:44 +0000 pipeserial DEBUG pipeserial.run():120:  Found match: 'OK' (match number 1 of 2)
2020-10-31 22:49:44 +0000 pipeserial DEBUG pipeserial.run():120:  Found match: 'OK' (match number 2 of 2)
2020-10-31 22:49:44 +0000 pipeserial DEBUG pipeserial.run():127:  Done! Returning 64 bytes of output from serial device
2020-10-31 22:49:44 +0000 pipeserial DEBUG pipeserial.close():133:  Closing serial port...
2020-10-31 22:49:44 +0000 pipeserial DEBUG pipeserial.close():135:  Serial port closed
2020-10-31 22:49:44 +0000 pipeserial DEBUG pipeserial.main():355:  Got 9 lines of output from serial device /dev/ttyU0.3:
AT
OK
ATI
Quectel
EC25
Revision: EC25EFAR06A06M4G

OK

[tykling@container1 ~]$

Read more on ReadTheDocs at https://pipeserial.readthedocs.io/en/latest/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pipeserial-0.3.0.tar.gz (5.2 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page