Skip to main content

AVR programming tool for OceanScan-MST

Project description

OMST AVR-Tool

A Python tool for programming AVR microcontrollers, developed for internal use at OceanScan-MST.

Features

  • Flash AVR microcontrollers using avrdude
  • Generate setup certificates as PDF documents
  • Upload certificates to network shares
  • Support for multiple board versions and firmware releases

Installation

From PyPI

pip install omst-avrtool

Dependencies

  • Python 3.8 or higher
  • avrdude must be installed and available in your PATH
  • WeasyPrint dependencies (Cairo, Pango, GLib)
# On Ubuntu/Debian
# Install complete set of dependencies for WeasyPrint
pip install dbus-python secretstorage

Usage

# Check out firmware from repository
omst-avrtool checkout

# List available boards
omst-avrtool flash -l

# Flash a board
omst-avrtool flash -b BOARD_NAME -n INVENTORY_NUMBER -a AUTHOR_NAME

# Flash without generating report
omst-avrtool flash -b BOARD_NAME --no-report

Development

# Create virtual environment
rm -rf venv
python -m venv venv
source venv/bin/activate
# Upgrade pip
pip install --upgrade pip

# Install development dependencies
pip install -e ".[dev]"

# Build package
python -m build

# Install the built package
pip install --force-reinstall dist/omst_avrtool-*.whl

Publishing

python -m pip install --upgrade pip
pip install build twine
python -m build
twine upload dist/*

Credentials Management

When connecting to network shares, credentials are managed securely:

  1. Credentials can be provided via environment variables:

    • OMST_AVR_USERNAME: Username for network share
    • OMST_AVR_PASSWORD: Password for network share
  2. Alternatively, you can store credentials in your system's keyring:

    • First-time use will prompt for credentials
    • You'll be asked if you want to save them for future use
  3. If neither environment variables nor keyring entries are found, you'll be prompted to enter credentials interactively

License

This project is licensed under the MIT License - see the LICENSE file for details.

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

omst_avrtool-2.0.0.tar.gz (76.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

omst_avrtool-2.0.0-py3-none-any.whl (74.7 kB view details)

Uploaded Python 3

File details

Details for the file omst_avrtool-2.0.0.tar.gz.

File metadata

  • Download URL: omst_avrtool-2.0.0.tar.gz
  • Upload date:
  • Size: 76.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for omst_avrtool-2.0.0.tar.gz
Algorithm Hash digest
SHA256 bb5c294d04c5089d2c824645ead46b08c387fe8885d008307d749a7cf4a56c3e
MD5 1e5e4c8899d9983999f2977d61185e08
BLAKE2b-256 52f943b3387f0f0986db52ee0b4c80c32230e7862841d814adf2228ade9cb675

See more details on using hashes here.

File details

Details for the file omst_avrtool-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: omst_avrtool-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 74.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for omst_avrtool-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fb41f5b41d466c17be740843d8e716f2f7abfbe5bdaf5fda77caf1a795e46e08
MD5 61fe1e4785c43cd919c15c20f71d1a11
BLAKE2b-256 85655e402b3d2f9d942d39cd36c7a08dd7844389df04482a27e0e836cfeee1ae

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page