axiometa-cli 1.0.2__tar.gz → 1.0.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/PKG-INFO +1 -1
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/__init__.py +9 -1
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/flash.py +11 -5
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli.egg-info/PKG-INFO +1 -1
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/pyproject.toml +1 -1
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/README.md +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/__main__.py +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/auth.py +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/chat.py +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/cli.py +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/core.py +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/detect.py +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/interactive.py +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/knowledge_client.py +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/provision.py +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/serve.py +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/setup.py +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli/ui.py +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli.egg-info/SOURCES.txt +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli.egg-info/dependency_links.txt +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli.egg-info/entry_points.txt +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli.egg-info/requires.txt +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/axiometa_cli.egg-info/top_level.txt +0 -0
- {axiometa_cli-1.0.2 → axiometa_cli-1.0.3}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: axiometa-cli
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.3
|
|
4
4
|
Summary: Prompt to hardware, in your terminal: detect a board, chat to build, deploy, watch serial.
|
|
5
5
|
Author-email: Axiometa <dr.dumcius@gmail.com>
|
|
6
6
|
Project-URL: Homepage, https://axiometa.io
|
|
@@ -16,4 +16,12 @@ Three ideas the CLI implements, all grounded in the backend registries:
|
|
|
16
16
|
- The serial CHANNEL is one contract; only its TRANSPORT changes: raw stdout in a terminal, or a
|
|
17
17
|
127.0.0.1 + token-gated localhost page (opened locally, or reached over `ssh -L`) for a surface.
|
|
18
18
|
"""
|
|
19
|
-
|
|
19
|
+
# Read the real installed version from package metadata so `--version` never goes stale again.
|
|
20
|
+
try:
|
|
21
|
+
from importlib.metadata import version as _pkg_version, PackageNotFoundError
|
|
22
|
+
try:
|
|
23
|
+
__version__ = _pkg_version("axiometa-cli")
|
|
24
|
+
except PackageNotFoundError:
|
|
25
|
+
__version__ = "0.0.0+dev"
|
|
26
|
+
except Exception:
|
|
27
|
+
__version__ = "0.0.0+dev"
|
|
@@ -57,20 +57,26 @@ def uf2_to_bin(uf2_path: Path) -> tuple[Path, int]:
|
|
|
57
57
|
|
|
58
58
|
|
|
59
59
|
def _interface_cfg(swd: dict) -> str:
|
|
60
|
-
"""An OpenOCD interface config snippet for the SWD wiring (env-overridable).
|
|
60
|
+
"""An OpenOCD interface config snippet for the SWD wiring (env-overridable).
|
|
61
|
+
|
|
62
|
+
RUN (GPIO23) is deliberately NOT given to OpenOCD as `srst`. The RP2040's SW-DP is a multidrop
|
|
63
|
+
port and RUN resets the debug port itself: asserting srst during `program ... reset` drops the DAP
|
|
64
|
+
mid-flash and floods "Too long SWD WAIT" until OpenOCD aborts (cores examine fine, then the reset
|
|
65
|
+
step fails). The program flow uses the Cortex-M software reset (SYSRESETREQ) instead, which leaves
|
|
66
|
+
the DAP alive. RUN stays wired for the runtime mpremote reset (see module docstring) — it is just
|
|
67
|
+
wrong to drive it as srst while flashing this chip.
|
|
68
|
+
"""
|
|
61
69
|
driver = os.environ.get("AXIOMETA_OPENOCD_DRIVER", "bcm2835gpio")
|
|
62
70
|
swclk = swd.get("swclk_gpio", 25)
|
|
63
71
|
swdio = swd.get("swdio_gpio", 24)
|
|
64
|
-
srst = swd.get("run_gpio", 23)
|
|
65
72
|
speed = os.environ.get("AXIOMETA_OPENOCD_SPEED", "1000")
|
|
66
73
|
lines = [
|
|
67
74
|
f"adapter driver {driver}",
|
|
68
75
|
f"adapter gpio swclk {swclk}",
|
|
69
76
|
f"adapter gpio swdio {swdio}",
|
|
77
|
+
"transport select swd",
|
|
78
|
+
f"adapter speed {speed}",
|
|
70
79
|
]
|
|
71
|
-
if srst:
|
|
72
|
-
lines += [f"adapter gpio srst {srst}", "reset_config srst_only srst_nogate"]
|
|
73
|
-
lines += ["transport select swd", f"adapter speed {speed}"]
|
|
74
80
|
return "\n".join(lines) + "\n"
|
|
75
81
|
|
|
76
82
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: axiometa-cli
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.3
|
|
4
4
|
Summary: Prompt to hardware, in your terminal: detect a board, chat to build, deploy, watch serial.
|
|
5
5
|
Author-email: Axiometa <dr.dumcius@gmail.com>
|
|
6
6
|
Project-URL: Homepage, https://axiometa.io
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|