Tool for decoding Silvair UART protocol.
Project description
Silvair UART Decoder
About The Repository
Silvair UART Decoder is a python library for parsing Silvair UART protocol messages. It also includes two applications that could be used for message parsing:
- HLA Extension for
Saleae Logic 2
. - Python script for parsing .csv file with serial values for
Saleae Logic 1
.
Recommended way is to use Logic 2 and HLA extension. Python script could be unstable in future versions.
Built With
UART Decoder is using construct python library to parse all UART messages. Also, it validates CRC value using Crcmod package. All used packages can be obtained from setup.py file.
Getting Started
How to start with HLA Extension?
Tested on Ubuntu 20.04 with Python 3.8 and Windows 11 with Python 3.10
- Make sure, you have
Python
with at least 3.6 version and installed pip. - Install UART-Decoder using pip:
pip install silvair-uart-decoder
. WARNING: IfThe script is installed in directory, which is not PATH
will appear during installation, add this directory to PATH environment variable. - In terminal, call
generate_uart_decoder_extension <PATH>
executable, wherePATH
is directory when you want to install HLA Extension. Example:generate_uart_decoder_extension .
to install in current directory.SilvairUARTDecoder
folder should be generated in passed path. - Open Logic 2, click "Extensions" icon on right side.
- In upper-right corner should be three dots with "Load existing extensions" option. Click it.
- Load
extension.json
located in previously generatedSilvairUARTDecoder
directory. - Click "Analyzers" icon on right side.
- Load
Async Serial
analyzer for appropriate channel, and then loadSilvair UART Decoder
. - Hooray, Silvair UART messages should be described above waveforms! :)
Screenshots
How to start with Python script?
- Make sure, you have
Python
with at least 3.6 version and installed pip. - Install UART-Decoder using pip:
pip install silvair-uart-decoder
. WARNING: IfThe script is installed in directory, which is not PATH
will appear during installation, add this directory to PATH environment variable. - Run application using command:
silvair-uart-decoder
Pass -h
parameter to show help with instruction how to use script.
Parameters:
-f
or--format-converter
: input format converter (optional)-O
or--output-file
: output file path (result will be saved in this file) (optional)- input csv file (required)
Supported input format converters
Currently two input format decoders are available:
default
- data must be in format:<timestamp>,<label>,<uart_command_frame>
saleae
- data must be in format:<timestamp>,<label>,<byte>
(default Saleae export format).
Example
Parse logs stored in example.csv
from Logic 1, and save it to example.txt
. example.csv
is in saleae Logic 1 format:
silvair-uart-decoder -f saleae -O example.txt example.csv
How to export data from Logic 1?
- Open Logic 1 with measurements
- Add
Async Serial
analyzers for appropriate channels - Click on gear circle near
Decoded Protocols
- Click
Export search results
Screenshots
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
File details
Details for the file silvair-uart-decoder-0.1.3.tar.gz
.
File metadata
- Download URL: silvair-uart-decoder-0.1.3.tar.gz
- Upload date:
- Size: 18.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | abb30b4d405ba58ed5984d22e75948d6b0f2224184886e60ba0c2891fc5957bf |
|
MD5 | ae7f15629aa18b6332e5f34b27f021be |
|
BLAKE2b-256 | 07f7fa8fa6d5afe63925e865e0004bfbde3a143a334b8939123826336999fe1a |