Name | lenz-flashtool JSON |
Version |
0.1.3
JSON |
| download |
home_page | None |
Summary | FlashTool library for BiSS C Firmware Update and Calibration by LENZ Encoders |
upload_time | 2025-08-26 16:13:40 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.8 |
license | MIT License
Copyright (c) 2020-2025 Design Bureau fo Robotic Systems, llc.
LENZ ENCODERS is Trademark of Design Bureau fo Robotic Systems, llc.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE. |
keywords |
angle
automation
biss
biss encoder
biss-c
calibration
embedded systems
encoder
firmware
flashtool
hardware
lenz
motion control
serial communication
servomotor
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# lenz-flashtool
[](https://pypi.org/project/lenz-flashtool/)
FlashTool library for BiSS C Firmware Update and Calibration by LENZ Encoders.
This is the source repository for the `lenz-flashtool` Python package, designed to interface with LENZ BiSS C encoders for firmware updates, calibration, and data reading. It provides a `FlashTool` class and utility functions for working with encoder hardware, including hex file manipulation and color formatting utilities.
[**📚 Full Documentation: flashtool.lenzencoders.com**](https://flashtool.lenzencoders.com)
## Features
- Control LENZ BiSS C encoders via serial communication.
- Upload firmware and calibration data.
- Read encoder status, serial numbers, and error flags.
- Utilities for CRC calculation, hex data generation, and colored logging output.
## Installation
### From PyPI (Recommended)
```bash
pip install lenz-flashtool
```
### From local folder
```bash
pip install .
```
### From GitHub
```bash
pip install git+https://github.com/lenzencoders/lenz-flashtool-lib.git
```
## Requirements
- Python 3.8 or higher
- `pyserial>=3.5` (for serial communication)
- `numpy>=1.21.0` (for data handling)
## Usage
### Basic Example
```python
from lenz_flashtool import FlashTool, init_logging
# Set up logging
#
# Level Integer Value
# logging.CRITICAL 50
# logging.ERROR 40
# logging.WARNING 30
# logging.INFO 20
# logging.DEBUG 10
# logging.NOTSET 0
init_logging(logfilename="flashtool.log", stdout_level=20, file_level=10)
# Initialize FlashTool
with FlashTool(port_description_prefixes=('XR21V')) as lenz:
# Power cycle the encoder
lenz.encoder_power_cycle()
# Read serial number
bootloader_ver, serial_num, mfg_date, program_ver = lenz.biss_read_snum()
print(f"Encoder Serial Number: {serial_num}")
# The connection is automatically closed when exiting the 'with' block
```
### Note on Naming
The package is installed as `lenz-flashtool` (with a hyphen), but imported in Python as `lenz_flashtool` (with an underscore) due to Python’s naming conventions.
## Documentation
For detailed API documentation, examples, and usage instructions, visit the [LENZ FlashTool Documentation](https://flashtool.lenzencoders.com).
## Development
### Install Locally
```bash
git clone https://github.com/lenzencoders/lenz-flashtool-lib.git
cd lenz-flashtool-lib
pip install .
```
### Run Tests
```bash
pip install pytest
pytest tests/
```
## Contributing
Contributions are welcome! Please:
1. Fork the repository.
2. Create a feature branch (`git checkout -b feature/my-feature`).
3. Commit your changes (`git commit -m "Add my feature"`).
4. Push to the branch (`git push origin feature/my-feature`).
5. Open a pull request.
Report issues at [github.com/lenzencoders/lenz-flashtool-lib/issues](https://github.com/lenzencoders/lenz-flashtool-lib/issues).
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Contact
For support or inquiries, contact LENZ ENCODERS at [info@lenzencoders.com](mailto:devs@lenzencoders.com).
Raw data
{
"_id": null,
"home_page": null,
"name": "lenz-flashtool",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "angle, automation, biss, biss encoder, biss-c, calibration, embedded systems, encoder, firmware, flashtool, hardware, lenz, motion control, serial communication, servomotor",
"author": null,
"author_email": "LENZ ENCODERS <devs@lenzencoders.com>",
"download_url": "https://files.pythonhosted.org/packages/16/93/93f418fc360220078c8a1c6df44db71b1d54b1dbfc0d956f8cf91613bc55/lenz_flashtool-0.1.3.tar.gz",
"platform": null,
"description": "# lenz-flashtool\n[](https://pypi.org/project/lenz-flashtool/)\n\nFlashTool library for BiSS C Firmware Update and Calibration by LENZ Encoders.\n\nThis is the source repository for the `lenz-flashtool` Python package, designed to interface with LENZ BiSS C encoders for firmware updates, calibration, and data reading. It provides a `FlashTool` class and utility functions for working with encoder hardware, including hex file manipulation and color formatting utilities.\n\n[**\ud83d\udcda Full Documentation: flashtool.lenzencoders.com**](https://flashtool.lenzencoders.com)\n\n## Features\n\n- Control LENZ BiSS C encoders via serial communication.\n- Upload firmware and calibration data.\n- Read encoder status, serial numbers, and error flags.\n- Utilities for CRC calculation, hex data generation, and colored logging output.\n\n## Installation\n\n### From PyPI (Recommended)\n```bash\npip install lenz-flashtool\n```\n\n### From local folder\n```bash\npip install .\n```\n\n### From GitHub\n```bash\npip install git+https://github.com/lenzencoders/lenz-flashtool-lib.git\n```\n\n## Requirements\n\n- Python 3.8 or higher\n- `pyserial>=3.5` (for serial communication)\n- `numpy>=1.21.0` (for data handling)\n\n## Usage\n\n### Basic Example\n```python\nfrom lenz_flashtool import FlashTool, init_logging\n\n# Set up logging\n#\n# Level\t Integer Value\n# logging.CRITICAL 50\n# logging.ERROR 40\n# logging.WARNING 30\n# logging.INFO 20\n# logging.DEBUG 10\n# logging.NOTSET 0\ninit_logging(logfilename=\"flashtool.log\", stdout_level=20, file_level=10)\n\n# Initialize FlashTool\nwith FlashTool(port_description_prefixes=('XR21V')) as lenz:\n # Power cycle the encoder\n lenz.encoder_power_cycle()\n\n # Read serial number\n bootloader_ver, serial_num, mfg_date, program_ver = lenz.biss_read_snum()\n print(f\"Encoder Serial Number: {serial_num}\")\n# The connection is automatically closed when exiting the 'with' block\n```\n### Note on Naming\nThe package is installed as `lenz-flashtool` (with a hyphen), but imported in Python as `lenz_flashtool` (with an underscore) due to Python\u2019s naming conventions.\n\n## Documentation\n\nFor detailed API documentation, examples, and usage instructions, visit the [LENZ FlashTool Documentation](https://flashtool.lenzencoders.com).\n\n## Development\n\n### Install Locally\n```bash\ngit clone https://github.com/lenzencoders/lenz-flashtool-lib.git\ncd lenz-flashtool-lib\npip install .\n```\n\n### Run Tests\n```bash\npip install pytest\npytest tests/\n```\n\n## Contributing\n\nContributions are welcome! Please:\n1. Fork the repository.\n2. Create a feature branch (`git checkout -b feature/my-feature`).\n3. Commit your changes (`git commit -m \"Add my feature\"`).\n4. Push to the branch (`git push origin feature/my-feature`).\n5. Open a pull request.\n\nReport issues at [github.com/lenzencoders/lenz-flashtool-lib/issues](https://github.com/lenzencoders/lenz-flashtool-lib/issues).\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Contact\n\nFor support or inquiries, contact LENZ ENCODERS at [info@lenzencoders.com](mailto:devs@lenzencoders.com).\n",
"bugtrack_url": null,
"license": "MIT License\n \n Copyright (c) 2020-2025 Design Bureau fo Robotic Systems, llc.\n LENZ ENCODERS is Trademark of Design Bureau fo Robotic Systems, llc.\n \n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n \n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n \n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.",
"summary": "FlashTool library for BiSS C Firmware Update and Calibration by LENZ Encoders",
"version": "0.1.3",
"project_urls": {
"Documentation": "https://flashtool.lenzencoders.com",
"Homepage": "https://github.com/lenzencoders/lenz-flashtool-lib",
"Source": "https://github.com/lenzencoders/lenz-flashtool-lib"
},
"split_keywords": [
"angle",
" automation",
" biss",
" biss encoder",
" biss-c",
" calibration",
" embedded systems",
" encoder",
" firmware",
" flashtool",
" hardware",
" lenz",
" motion control",
" serial communication",
" servomotor"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "fe4576976f9b76de1e7a7d403149379fd23a9ff2f0e2e9b89a398c7acc9d18bb",
"md5": "17270b3f8ea4ec2132a9b45d3d507d8f",
"sha256": "93eeaccc0e115bfca152adcfd06d9f55c89dae62975f37b69aeb6704fa857a07"
},
"downloads": -1,
"filename": "lenz_flashtool-0.1.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "17270b3f8ea4ec2132a9b45d3d507d8f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 79428,
"upload_time": "2025-08-26T16:13:38",
"upload_time_iso_8601": "2025-08-26T16:13:38.695124Z",
"url": "https://files.pythonhosted.org/packages/fe/45/76976f9b76de1e7a7d403149379fd23a9ff2f0e2e9b89a398c7acc9d18bb/lenz_flashtool-0.1.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "169393f418fc360220078c8a1c6df44db71b1d54b1dbfc0d956f8cf91613bc55",
"md5": "e55360a00fcf7fbe939809fab9ed9916",
"sha256": "54c156ed1dcccafa8bc169de6ca22b4d7ae1607eaf0d7a5ea9082ede334362bf"
},
"downloads": -1,
"filename": "lenz_flashtool-0.1.3.tar.gz",
"has_sig": false,
"md5_digest": "e55360a00fcf7fbe939809fab9ed9916",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 66958,
"upload_time": "2025-08-26T16:13:40",
"upload_time_iso_8601": "2025-08-26T16:13:40.690963Z",
"url": "https://files.pythonhosted.org/packages/16/93/93f418fc360220078c8a1c6df44db71b1d54b1dbfc0d956f8cf91613bc55/lenz_flashtool-0.1.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-26 16:13:40",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "lenzencoders",
"github_project": "lenz-flashtool-lib",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "lenz-flashtool"
}