

py script in this repository, which will plot the data from an OTDR file. otdrs -help shows the available options.Ī post-processing example is shown in the demo. Its output is a single JSON or CBOR blob which contains the information within the SOR file flags are used to set the output path (default is stdout) or the format to output. Otdrs takes one positional argument, the path to a SOR file. serde is used for serialisation for output. Rust was chosen for its robustness, type-safety, and the excellent nom parser library. Generated files open without issue in several professional applications, and proprietary data is preserved losslessly. Writing of files is performed with as much care as possible and the optional checksum block is computed. Where the parser cannot reliably extract information it is omitted in this sense, otdrs is a best-effort parser. Wherever possible, translation preserves the input format otdrs does not try to fix peculiarities of particular test equipment or post-processing software or work around quirks in their input, except where they would break parsing of the format. It also provides Rust primitives for OTDR files and a writer to allow files to be loaded, modified, and written back. Otdrs is intended as a minimal but valid and robust parser implementation to enable a translation from the closed binary format to open, self-documenting formats, to permit easy development of analysis tools without having to deal with the complexities of managing a binary format that is broadly undocumented and difficult to parse. OTDR testing involves firing short pulses of light down fibres under test, and measuring the intensity of returned light over time. SOR is formally known as the Bellcore OTDR interchange format, specified in Telcordia SR-4731, a proprietary standard. SOR files are used as a storage format for optical time-domain reflectometry (OTDR) tests, which are commonly used to characterise and validate the proper construction of fibre optic networks. Otdrs is a Rust implementation of a SOR file parser and generator.
