Fixes compatibility with the Arduino bootloader reset mechanism when using `west flash` on Darwin hosts. stty is used to set the serial port in the bossac runner to 1200 baud on Arduino ATSAMD21 bootloaders. The `-F` argument to stty is a GNU coreutils addition, and thus it is missing from Darwin's BSD stty, so change the flag to `-f` when we're not running on Linux. On Darwin, set DEFAULT_BOSSAC_PORT to None and ask the user to select one from a list of IOCalloutDevices reported by ioreg, modelled on the get_board_snr from the nrfjprog runner. This is because serial port TTYs are generated by the device driver, and therefore there is no safe default. Tested with an Arduino Nano 33 IoT board. Signed-off-by: George White <me@galexite.uk> |
||
|---|---|---|
| .. | ||
| completion | ||
| runners | ||
| tests | ||
| zspdx | ||
| boards.py | ||
| build_helpers.py | ||
| build.py | ||
| completion.py | ||
| debug.py | ||
| export.py | ||
| flash.py | ||
| mypy.ini | ||
| README.txt | ||
| run_common.py | ||
| run_tests.py | ||
| sign.py | ||
| spdx.py | ||
| zcmake.py | ||
| zephyr_ext_common.py | ||
This directory contains implementations for west commands which are tightly coupled to the zephyr tree. This includes the build, flash, and debug commands. Before adding more here, consider whether you might want to put new extensions in upstream west. For example, any commands which operate on the multi-repo need to be in upstream west, not here. Try to limit what goes in here to Zephyr-specific features. When extending this code, please keep the unit tests (in tests/) up to date. The mypy static type checker is also run on the runners package. To run these tests locally on Windows, run: py -3 run_tests.py On macOS and Linux: ./run_tests.py Note that these tests are run as part of Zephyr's CI when submitting an upstream pull request, and pull requests which break the tests cannot be merged. Thanks!