# ezFlashCLI
[![Build Status](https://travis-ci.org/ezflash/ezFlashCLI.svg?branch=main)](https://travis-ci.org/ezflash/ezFlashCLI)
[![Documentation Status](https://readthedocs.org/projects/ezflashcli/badge/?version=latest)](https://ezflashcli.readthedocs.io/en/latest/?badge=latest)
Command line tools to manage flash devices connected to the Dialog Smartbond™ device family.
The tool relies on Segger J-Link™ library to control the Smartbond SWD interface. The J-Link probe is available on all Smartbond development kits.
## Supported platforms
* macOS
* Windows 10
* Linux (tested on ubuntu 20.04LTS 64 bits)
## Supported devices
### DA145XX
* DA14531
* DA14585
Known flash devices:
* MX25R2035F
### DA1459x, DA1468X and DA1469X
* DA1459x:
* DA14592
* DA1468x:
* DA14680
* DA14681
* DA14682
* DA14683
* DA1469x:
* DA14691
* DA14695
* DA14697
* DA14699
* DA1470x:
* DA14701
* DA14705
* DA14706
* DA14708
Known flash devices:
* AT25FF081A
* AT25FF161A
* AT25FF321A
* AT25SL321
* AT25XE021A
* EN25S16B
* EN25S20A
* GD25LE16
* GD25LE32
* IS25WP032
* MX25R2035F
* MX25U3235F
* MX25U6432
* MX66LM1G45G
* P25Q11U
* P25Q32LE
* P25Q80H
* W25Q128JW
* W25Q32JW
* W25Q64JWIM
* W25Q80EW
* W25X10CL
* W25X20CL
* W25X40CL
## Installation
```
> pip install ezFlashCLI
```
**Windows**: It often happens during python installation that the Script folder is **not** added in the environment PATH. If ezFLashCLI is not found in your terminal, add *\<Python install dir\>/Scripts* to your path.
## Usage
### List JLink probes
```
> ezFlashCLI list
INFO:root:ezFlashCLI v1.0.x
INFO:root:By using the program you accept the SEGGER J-link™ license
INFO:root:JLink devices:
INFO:root: - 483345692
INFO:root: - 480698727
```
### Probe attached flash
```
> ezFlashCLI probe
INFO:root:ezFlashCLI v1.0.X
INFO:root:By using the program you accept the SEGGER J-link™ license
INFO:root:Smartbond chip: DA14585/DA14586
INFO:root:Flash information:
INFO:root: - Device Id: MX25R2035F
```
### Multiple devices
```
> ezFlashCLI list
INFO:root:ezFlashCLI v1.0.X
INFO:root:By using the program you accept the SEGGER J-link™ license
INFO:root:JLink devices:
INFO:root: - 483245871
INFO:root: - 483124587
> ezFlashCLI -j 483245871 probe
INFO:root:ezFlashCLI v1.0.X
INFO:root:By using the program you accept the SEGGER J-link™ license
INFO:root:Smartbond chip: DA1469x
INFO:root:Flash information:
INFO:root: - Device Id: MX25U3235F
> ezFlashCLI -j 483245871 probe
INFO:root:ezFlashCLI v1.0.X
INFO:root:By using the program you accept the SEGGER J-link™ license
INFO:root:Smartbond chip: DA14682/DA14683
INFO:root:Flash information:
INFO:root: - Device Id: W25Q80EW
```
### erase Flash
```
> ezFlashCLI erase_flash
INFO:root:ezFlashCLI v1.0.X
INFO:root:By using the program you accept the SEGGER J-link™ license
INFO:root:Flash erase success
```
### Read Flash
```
> ezFlashCLI read_flash 0x0 128
INFO:root:ezFlashCLI v1.0.X
INFO:root:By using the program you accept the SEGGER J-link™ license
INFO:root:00000000: 50 70 00 20 00 00 00 20 00 00 eb 00 a5 a8 66 00
INFO:root:00000010: 00 00 aa 11 03 00 01 40 07 c8 4e ff ff ff ff ff
```
### Program Flash
```
> ezFlashCLI image_flash <path to bin file>
INFO:root:ezFlashCLI v1.0.X
INFO:root:By using the program you accept the SEGGER J-link™ license
INFO:root:[DA1469x] Program image
INFO:root:[DA1469x] Program success
```
The tool will automatically make the input file bootable if needed
### Program Flash and add secondary bootloader
To use SUOTA a secondary bootloader is required. This command adds a precompiled version to the image and writes it all to flash.
```
> ezFlashCLI image_bootloader_flash <path to bin file>
INFO:root:ezFlashCLI v1.0.X
INFO:root:By using the program you accept the SEGGER J-link™ license
INFO:root:[DA14531] Program image
INFO:root:[DA14531] Program success
```
Raw data
{
"_id": null,
"home_page": "https://github.com/ezflash/ezFlashCLI.git",
"name": "ezFlashCLI",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "flash, programmer",
"author": "ezflash",
"author_email": "info@ezflash.org",
"download_url": null,
"platform": null,
"description": "# ezFlashCLI\n\n[![Build Status](https://travis-ci.org/ezflash/ezFlashCLI.svg?branch=main)](https://travis-ci.org/ezflash/ezFlashCLI)\n[![Documentation Status](https://readthedocs.org/projects/ezflashcli/badge/?version=latest)](https://ezflashcli.readthedocs.io/en/latest/?badge=latest)\n\nCommand line tools to manage flash devices connected to the Dialog Smartbond\u2122 device family.\n\nThe tool relies on Segger J-Link\u2122 library to control the Smartbond SWD interface. The J-Link probe is available on all Smartbond development kits.\n\n## Supported platforms\n\n* macOS\n* Windows 10\n* Linux (tested on ubuntu 20.04LTS 64 bits)\n\n## Supported devices\n\n### DA145XX\n\n* DA14531\n* DA14585\n\nKnown flash devices:\n\n* MX25R2035F\n\n### DA1459x, DA1468X and DA1469X\n\n* DA1459x:\n * DA14592\n\n* DA1468x:\n * DA14680\n * DA14681\n * DA14682\n * DA14683\n\n* DA1469x:\n * DA14691\n * DA14695\n * DA14697\n * DA14699\n\n* DA1470x:\n * DA14701\n * DA14705\n * DA14706\n * DA14708\n\nKnown flash devices:\n\n* AT25FF081A\n* AT25FF161A\n* AT25FF321A\n* AT25SL321\n* AT25XE021A\n* EN25S16B\n* EN25S20A\n* GD25LE16\n* GD25LE32\n* IS25WP032\n* MX25R2035F\n* MX25U3235F\n* MX25U6432\n* MX66LM1G45G\n* P25Q11U\n* P25Q32LE\n* P25Q80H\n* W25Q128JW\n* W25Q32JW\n* W25Q64JWIM\n* W25Q80EW\n* W25X10CL\n* W25X20CL\n* W25X40CL\n\n## Installation\n\n```\n> pip install ezFlashCLI\n```\n\n**Windows**: It often happens during python installation that the Script folder is **not** added in the environment PATH. If ezFLashCLI is not found in your terminal, add *\\<Python install dir\\>/Scripts* to your path.\n\n## Usage\n\n### List JLink probes\n\n```\n> ezFlashCLI list\n\nINFO:root:ezFlashCLI v1.0.x\nINFO:root:By using the program you accept the SEGGER J-link\u2122 license\nINFO:root:JLink devices:\nINFO:root: - 483345692\nINFO:root: - 480698727\n```\n\n### Probe attached flash\n\n```\n> ezFlashCLI probe\n\nINFO:root:ezFlashCLI v1.0.X\nINFO:root:By using the program you accept the SEGGER J-link\u2122 license\nINFO:root:Smartbond chip: DA14585/DA14586\nINFO:root:Flash information:\nINFO:root: - Device Id: MX25R2035F\n```\n\n### Multiple devices\n\n```\n> ezFlashCLI list\n\nINFO:root:ezFlashCLI v1.0.X\nINFO:root:By using the program you accept the SEGGER J-link\u2122 license\nINFO:root:JLink devices:\nINFO:root: - 483245871\nINFO:root: - 483124587\n\n> ezFlashCLI -j 483245871 probe\n\nINFO:root:ezFlashCLI v1.0.X\nINFO:root:By using the program you accept the SEGGER J-link\u2122 license\nINFO:root:Smartbond chip: DA1469x\nINFO:root:Flash information:\nINFO:root: - Device Id: MX25U3235F\n\n> ezFlashCLI -j 483245871 probe\n\nINFO:root:ezFlashCLI v1.0.X\nINFO:root:By using the program you accept the SEGGER J-link\u2122 license\nINFO:root:Smartbond chip: DA14682/DA14683\nINFO:root:Flash information:\nINFO:root: - Device Id: W25Q80EW\n```\n\n### erase Flash\n\n```\n> ezFlashCLI erase_flash\n\nINFO:root:ezFlashCLI v1.0.X\nINFO:root:By using the program you accept the SEGGER J-link\u2122 license\nINFO:root:Flash erase success\n```\n\n### Read Flash\n\n```\n> ezFlashCLI read_flash 0x0 128\n\nINFO:root:ezFlashCLI v1.0.X\nINFO:root:By using the program you accept the SEGGER J-link\u2122 license\nINFO:root:00000000: 50 70 00 20 00 00 00 20 00 00 eb 00 a5 a8 66 00\nINFO:root:00000010: 00 00 aa 11 03 00 01 40 07 c8 4e ff ff ff ff ff\n```\n\n### Program Flash\n\n```\n> ezFlashCLI image_flash <path to bin file>\n\nINFO:root:ezFlashCLI v1.0.X\nINFO:root:By using the program you accept the SEGGER J-link\u2122 license\nINFO:root:[DA1469x] Program image\nINFO:root:[DA1469x] Program success\n```\n\nThe tool will automatically make the input file bootable if needed\n\n### Program Flash and add secondary bootloader\n\nTo use SUOTA a secondary bootloader is required. This command adds a precompiled version to the image and writes it all to flash.\n\n```\n> ezFlashCLI image_bootloader_flash <path to bin file>\n\nINFO:root:ezFlashCLI v1.0.X\nINFO:root:By using the program you accept the SEGGER J-link\u2122 license\nINFO:root:[DA14531] Program image\nINFO:root:[DA14531] Program success\n```\n",
"bugtrack_url": null,
"license": "MIT license",
"summary": "Command line tool to manipulate microcontroller flash",
"version": "1.0.28",
"project_urls": {
"Homepage": "https://github.com/ezflash/ezFlashCLI.git"
},
"split_keywords": [
"flash",
" programmer"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "0b31e02964091afd895e05cb044c9b2e2aa5602d8a24bc0702d6c9000f6335b1",
"md5": "b41da55749f21b06d7d25fbedc590bdd",
"sha256": "61d8ab90c2f792b50d4ae7cce57447595a600bca030fbad3fd975c73a08df232"
},
"downloads": -1,
"filename": "ezFlashCLI-1.0.28-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b41da55749f21b06d7d25fbedc590bdd",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 81469675,
"upload_time": "2024-09-24T09:58:22",
"upload_time_iso_8601": "2024-09-24T09:58:22.158844Z",
"url": "https://files.pythonhosted.org/packages/0b/31/e02964091afd895e05cb044c9b2e2aa5602d8a24bc0702d6c9000f6335b1/ezFlashCLI-1.0.28-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-24 09:58:22",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ezflash",
"github_project": "ezFlashCLI",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "ezflashcli"
}