NWaves leader bridge
Drives the NWaves SO-101 simulation with the leader arm plugged into your own computer, for browsers that cannot open USB devices themselves (Firefox, Safari). Chrome and Edge connect over USB directly from the session page and do not need it.
Install and run (the session page shows the same one-liners):
macOS / Linux: curl -fsSL https://<academy host>/nwaves-leader.sh | sh
Windows: irm https://<academy host>/nwaves-leader.ps1 | iex
any: python3 -m pip install nwaves-leader then nwaves-leader
Then press "Connect through the NWaves leader bridge" in the session page.
The bridge listens on 127.0.0.1:8765 only, accepts connections from nwaves.ai pages only, and sends nothing but the six servo positions to the page in your browser. The page does the calibration and forwards the positions to your simulation.
What the academy hosts and how to rebuild it (from the repo root): sh tools/nwaves-leader/build.sh
nwaves-leader.pyz: the self-contained app the installers download (pyserial is vendored, BSD licence kept inside), runs with any Python 3.8+ aspython3 nwaves-leader.pyznwaves_leader-<version>-py3-none-any.whl: forpip installand for PyPInwaves-leader.py: the single-file version (needs pyserial)
Publishing to PyPI (name nwaves-leader was free on 2026-10-17): create the NWaves account on pypi.org with
2FA, make an API token, then python3 -m pip install build twine && python3 -m build && twine upload dist/*
with TWINE_USERNAME=__token__ TWINE_PASSWORD=<token>. Bump version in pyproject.toml and setup.py first.
Metadata
Release files for nwaves-leader 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nwaves_leader-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / nwaves_leader-0.1.0-py3-none-any.whl
| Download URL | nwaves_leader-0.1.0-py3-none-any.whl |
|---|---|
| Size | 6.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
03fbd98378c5d9388b02a961da63adb006e37f02e1fb9bf8a7d30d5c997464d4
|
|
BLAKE2b-256 checksum How to use checksums |
a17a56ed3567ce1503d716cbe8e55074779a9548f35e746f1e6e1067a4bff683
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.12
|