--- id: bincopy version: "20.1.1" license: MIT license_treatment: permissive maintenance: active --- # bincopy — Mangling of various file formats that conveys binary information (Motorola S-Record, Intel HEX and binary files). License: permissive · Maintenance: active · Downloads: 774.5K/mo ## What it is and what it does Bincopy is a Python library and command-line tool for reading, writing, and converting between multiple binary file formats commonly used in embedded systems and firmware development. It handles Motorola S-Record (.s19, .s28, .s37), Intel HEX (.hex), TI-TXT, Verilog VMEM, ELF, and raw binary formats, allowing you to load a file in one format and export it in another, inspect segments and address ranges, or manipulate binary data programmatically. The library provides both a Python API for scripting and standalone CLI commands: `bincopy info` displays file metadata and data ranges, `bincopy convert` transforms between formats or concatenates multiple files, `bincopy fill` closes gaps between segments, and `bincopy pretty` formats files for readability. It depends on humanfriendly, argparse_addons, and pyelftools, all lightweight utilities. Use it for: - Convert firmware images between formats for different embedded toolchains or programmers. - Inspect binary file structure and address layout before flashing to hardware. - Concatenate multiple binary or hex files into a single output for deployment. - Fill gaps in segmented binary data to create contiguous firmware images. - Parse and extract segments from ELF or hex files in build or CI/CD pipelines. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Converts between binary file formats (Motorola S-Record, Intel HEX, TI-TXT, Verilog VMEM, ELF, and raw binary) and provides command-line tools to inspect, convert, and manipulate them. Yes. Bincopy is actively maintained, has no known vulnerabilities, installs with low friction, and solves a specific and well-defined problem in embedded systems workflows. The MIT license imposes no restrictions. Install it if you work with firmware files, bootloaders, or embedded binary formats. ## Install pip install bincopy uv add bincopy poetry add bincopy ## Installing bincopy Before you install: Low friction install with three lightweight runtime dependencies (humanfriendly, argparse_addons, pyelftools). Active maintenance with recent releases; last commit 2026-05-12 and latest release 2026-02-24. License in practice: MIT license (permissive) places no restrictions on use, modification, or redistribution in commercial or private projects. Quickstart: pip install bincopy import bincopy f = bincopy.BinFile("file.hex") print(f.as_srec()) print(f.as_binary()) Requires Python 3.9 or later. Verify before relying: - Whether pyelftools dependency is optional or always required for ELF file support. - Performance characteristics when handling large binary files or many format conversions. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 774.5K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags hex file converter, motorola s-record tools, intel hex manipulation, binary format conversion, firmware file format, embedded binary tools, s19 s28 s37 conversion, firmware-tools, embedded-systems, binary-format [View on SkillFed](https://skillfed.io/packages/bincopy) · [View on PyPI](https://pypi.org/project/bincopy/)