PyTool USB Serial

50+
Downloads
Content rating
Everyone
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image

About this app

PyTool USB Serial is a great tool for USB serial developing, debugging and monitoring.
It features Python script capability that gives you the greatest flexibility.

Why script capability is desirable for USB serial tool?
Electrical engineers find it handy to use a hand held device like Android phone or tablet to debug or monitor serial communication in the field, factory or lab.
But nearly every communication system got its own protocol or data format.
Searching in a sea of hex data like "02a5b4ca....ff000803" and trying to figure out what is happening is not pleasant at all.
That is where PyTool USB Serial comes to help.
With the ability to run custom Python script, PyTool USB Serial can read and parse any received data, display it in the way you want, and even reply when it is needed.

There are script examples for quick start. Just copy and paste one of them to try them out.

There is also a handy USB serial terminal for general use.

It supports main stream USB serial drivers, including:
FTDI driver
CDC ACM driver
CP210x driver
CH34x driver
PL2303 driver

Script General Guide
====================
* The Python version used in this app is 3.8.

* This app is not designed as script editor although script can be edited in the script field.
The best way is to use your favorite script editor and then copy and paste the script.

* Always use 4 spaces for indentation to avoid weird errors.

* Most of the packages in standard Python library are available to import.

* If while loop is needed, always use `app.running_script` as condition in order to stop the script properly.

* Use `app.version` to get the app version string.

* Use `app.get_output()` to get the script output field as string.

* Use `app.set_output(object)` to display `object` in the script output field as string.

* Use `app.print_text(object)` as a shortcut for `app.set_output(app.get_output() + str(object))` to append text to the script output field.

* Use `app.clear_text()` as a shortcut for `app.set_output("")` to clear the script output field.

* Use `app.send_data(bytearray)` to send `bytearray` through serial port.

* Use `app.receive_data()` to read the data from the buffer as bytearray.

* Use `app.log_file(text)` to save a log file in storage.
The log file is located here [Storage Directory]/PyToolUSBSerial/log_[UTC Timestamp].txt.
text (str): Text Content
return (str): Full File Path

Here is one script example from this app:
####################
# Display received data in hex and echo back.

from binascii import hexlify
from codecs import decode

while(app.running_script):
# Try to fetch any data received in the buffer.
data_rcv = app.receive_data()
if data_rcv:
# Data represented in hex.
data_hex = decode(hexlify(data_rcv), 'utf_8', 'ignore')
# Display received data along with old data.
app.set_output(app.get_output() + data_hex)
# Echo back.
app.send_data(data_rcv)
####################
Updated on
1 Jul 2021

Data safety

Safety starts with understanding how developers collect and share your data. Data privacy and security practices may vary based on your use, region and age. The developer provided this information and may update it over time.
No data shared with third parties
Learn more about how developers declare sharing
No data collected
Learn more about how developers declare collection

What's new

Version 0.8
Python version for the script is 3.8.
Now the script runs in Python global environment. Existing scripts should still work as before.
Terminal settings are remembered.
`app.version` is added for checking app version.