Metadata-Version: 2.1
Name: pymdfu
Version: 1.0.1.5
Summary: Microchip Device Firmware Upgrade Application
Author-email: Microchip Technology <support@microchip.com>
License: MIT
Project-URL: Homepage, https://www.microchip.com
Keywords: Microchip
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Embedded Systems
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS
Classifier: License :: OSI Approved :: MIT License
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: pyyaml
Requires-Dist: appdirs
Requires-Dist: pyserial
Provides-Extra: dev
Requires-Dist: pylint >=2.15 ; extra == 'dev'
Provides-Extra: doc
Requires-Dist: mock ; extra == 'doc'
Requires-Dist: sphinx ; extra == 'doc'
Provides-Extra: test
Requires-Dist: mock ; extra == 'test'
Requires-Dist: pytest ; extra == 'test'

# pymdfu - Microchip Device Firmware Upgrade application
This utility requires that the input image is built in a format matching the bootloader firmware.  To build such images for Microchip 8-bit microcontrollers use the pyfwimagebuilder tool: https://pypi.org/project/pyfwimagebuilder/

![PyPI - Format](https://img.shields.io/pypi/format/pymdfu)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pymdfu)
![PyPI - License](https://img.shields.io/pypi/l/pymdfu)

## Usage

pymdfu can be used as a command-line interface or a library

### Command line help
For help, use:
```bash
pyfmdfu --help
```
### Update an image from the command-line

Example usage:
```bash
pymdfu update serial myimage.img --port COM11 --baudrate 9600
```

### Additional command-line switches
#### -v <level>,  --verbose <level>
    Logging verbosity configuration. Valid values for level are ('debug', 'info', 'warning', 'error', 'critical')
#### -V, --version
    Print pymdfu version and exit
#### -R, --release-info
    Print pymdfu release details and exit

# Changelog
## [1.0.1] - December 2023

- Support MDFU get client info command
  - Read client command timeouts
  - Read client MDFU protocol version
- Support individual command timeouts
- Decode transport and file transfer abort error causes
- Check image state command response
- Bugfixes

### Added
- PYTOOLS-156 New get client information command with version and command timeouts
- PYTOOLS-91  Decode transport and file transfer abort error causes
- PYTOOLS-90  Check "get image state" command response packet payload for image status

### Fixed
- PYTOOLS-155 PyMDFU tool usage guideline is incorrect
- PYTOOLS-84  Document link between pymdfu and pyfwimagebuilder

## [0.1.4] - October 2023

Initial public beta release.

### Initial beta release

## [0.0.1] - October 2023

- Placeholder release
