dmr_utils/README.rst

51 lines
2.2 KiB
ReStructuredText
Raw Normal View History

2016-12-03 16:16:21 -05:00
dmr_utils
_________
2016-12-03 16:21:18 -05:00
Utilities for working with Digital Moble Radio (DMR) in python. Includes routines for assembling and disasembling packets and encoding/removing FEC/ECC routines. The utilities are intended primarily for processing on the "network" side of DMR, not the air interface -- such as for building network linking tools, and as such, routines mostly remove FEC/ECC rather than appy repeairs, which should be done at the air interface first.
**Files in this repository and what they do**
const.py
some stuff
utils.py
some stuff
encode.py
some stuff
decode.py
some stuff
btpc.py
2016-12-03 16:28:08 -05:00
Contains block product turbo code generators, extractors and related routines
2016-12-03 16:45:48 -05:00
- *decode_full_lc(_data):* Extracts the useful FULL LC data without checking for errors. Accepts one argument of type bitarray and returns one item of type bitarray.
2016-12-03 16:43:34 -05:00
2016-12-03 16:45:48 -05:00
- **interleave_19696(_data):** Accepts one argument of type bitarray and returns a bitarray interlieaved.
2016-12-03 16:43:34 -05:00
2016-12-03 16:45:48 -05:00
- **encode_19696(_data):** Accepts an LC as a 12-byte string (LC and RS1293 FEC) encodes it into a 196bit bitarray and builds the proper row and column structure with hamming codes and returns a type bitarray
2016-12-03 16:43:34 -05:00
2016-12-03 16:45:48 -05:00
- **encode_header_lc(_lc):** Accpets LC data as a bitarray, applies the header mask and appends RS1293 FEC, encodes BPTC19696, interleaves for transmition. Returns a type bitarray that is the full DMR LC header packet.
2016-12-03 16:43:34 -05:00
2016-12-03 16:45:48 -05:00
- **encode_terminator_ls(_lc):** Accepts LC data as a bitarray, applies the terminator mask and appends RS1293 FEC, encodes BPTC19696, interleaves for transmition. Returns a type bitarray that is the full DMR LC terminator packet.
2016-12-03 16:43:34 -05:00
2016-12-03 16:45:48 -05:00
- **decode_emblc(_elc):** Extracts the useful EMBEDDED LC data without checking for errors. Accepts a type bitarray and returns type string.
2016-12-03 16:43:34 -05:00
2016-12-03 16:45:48 -05:00
- **encode_emblc(_lc):** Accepts 12 byte LC as a string, adds 5-byte checksum, adds row hamming bits, column partiy bits and arranges the matrix for transmission. Returns a type dict with 4 key/value pairs. Keys 1-4 are DMR bursts b-e respectively, such that burst "B" is key 1's associated value and so on.
2016-12-03 16:21:18 -05:00
crc.py
some stuff
rs129.py
some stuff
golay.py
some stuff
hamming.py
some stuff
qr.py
some stuff