Difference between revisions of "Zephyr toolchain"
(create new NN page to capture Zephyr toolchain set up and maintenance notes) |
m (minor formatting) |
||
(6 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
<center> | <center> | ||
+ | Zephyr Toolchain Notes<br /> | ||
2023-07-11<br /> | 2023-07-11<br /> | ||
− | |||
</center> | </center> | ||
− | <!- odne komentar --> | + | <!-- odne komentar --> |
This page dedicated to capture installation and maintenance steps for Zephyr RTOS toolchain. Main Zephyr toolchain and SDK install steps outlined at: | This page dedicated to capture installation and maintenance steps for Zephyr RTOS toolchain. Main Zephyr toolchain and SDK install steps outlined at: | ||
Line 16: | Line 16: | ||
$ pip3 install --upgrade pyocd | $ pip3 install --upgrade pyocd | ||
− | <!- odne komentar --> | + | <!-- odne komentar --> |
+ | |||
+ | When programming flash of a dual core NXP processor, it may be necessary to program each core separately with `pyocd` invocations like the following: | ||
+ | |||
+ | $ west flash --runner=pyocd -d /home/ted/projects-sandbox/workspace-for-app1/app1/build/cpu0 | ||
+ | | ||
+ | $ west flash --runner=pyocd -d /home/ted/projects-sandbox/workspace-for-app1/app1/build/cpu1 | ||
+ | |||
+ | There seem to be some dual-core Zephyr based app builds which, when flashed to the target MCU result in an error giving the following messages from pyocd: | ||
+ | |||
+ | <pre> | ||
+ | ted@localhost1:~/projects-sandbox/workspace-for-app1/app1$ ./scripts/flash | ||
+ | -- west flash: rebuilding | ||
+ | ninja: no work to do. | ||
+ | -- west flash: using runner pyocd | ||
+ | -- runners.pyocd: Flashing file: /home/ted/projects-sandbox/workspace-for-app1/app1/build/cpu0/zephyr/zephyr.hex | ||
+ | 0001471 E Not supported by current CPU + target interface combination. [jlink] | ||
+ | 0001480 C Invalid error code: -2 [__main__] | ||
+ | FATAL ERROR: command exited with status 1: pyocd flash -e sector -a 0x10000000 -t lpc55s69 /home/ted/projects-sandbox/workspace-for-app1/app1/build/cpu0/zephyr/zephyr.hex | ||
+ | </pre> | ||
+ | |||
+ | and | ||
+ | |||
+ | <code> | ||
+ | -- west flash: rebuilding | ||
+ | ninja: no work to do. | ||
+ | -- west flash: using runner pyocd | ||
+ | -- runners.pyocd: Flashing file: /home/ted/projects-sandbox/workspace-for-app1/app1/build/cpu1/zephyr/zephyr.hex | ||
+ | 0001373 E Not supported by current CPU + target interface combination. [jlink] | ||
+ | 0001387 C Invalid error code: -2 [__main__] | ||
+ | FATAL ERROR: command exited with status 1: pyocd flash -e sector -a 0x3a000 -t lpc55s69 /home/ted/projects-sandbox/workspace-for-app1/app1/build/cpu1/zephyr/zephyr.hex | ||
+ | </code> | ||
+ | |||
+ | See this page's References section and the link to an article about `pyocd` and pitaya-link development environment. Material in this article helps explain what's going on in the `pyocd` command invocation captured a few lines above, line beginning with text "FATAL ERROR". | ||
+ | |||
+ | <!-- odne komentar --> | ||
+ | |||
+ | == [[#top|^]] References == | ||
+ | |||
+ | Some pyocd basics described in context of Pitaya link programmer or development environment: | ||
+ | * https://wiki.makerdiary.com/pitaya-link/pyocd/ | ||
+ | |||
+ | |||
+ | <!-- odne komentar --> |
Latest revision as of 23:00, 27 September 2023
Zephyr Toolchain Notes
2023-07-11
This page dedicated to capture installation and maintenance steps for Zephyr RTOS toolchain. Main Zephyr toolchain and SDK install steps outlined at:
When flashing targeted hardware with Python3 based `pyocd`, install this tool via pip3 command:
$ pip3 install --upgrade pyocd
When programming flash of a dual core NXP processor, it may be necessary to program each core separately with `pyocd` invocations like the following:
$ west flash --runner=pyocd -d /home/ted/projects-sandbox/workspace-for-app1/app1/build/cpu0 $ west flash --runner=pyocd -d /home/ted/projects-sandbox/workspace-for-app1/app1/build/cpu1
There seem to be some dual-core Zephyr based app builds which, when flashed to the target MCU result in an error giving the following messages from pyocd:
ted@localhost1:~/projects-sandbox/workspace-for-app1/app1$ ./scripts/flash -- west flash: rebuilding ninja: no work to do. -- west flash: using runner pyocd -- runners.pyocd: Flashing file: /home/ted/projects-sandbox/workspace-for-app1/app1/build/cpu0/zephyr/zephyr.hex 0001471 E Not supported by current CPU + target interface combination. [jlink] 0001480 C Invalid error code: -2 [__main__] FATAL ERROR: command exited with status 1: pyocd flash -e sector -a 0x10000000 -t lpc55s69 /home/ted/projects-sandbox/workspace-for-app1/app1/build/cpu0/zephyr/zephyr.hex
and
-- west flash: rebuilding ninja: no work to do. -- west flash: using runner pyocd -- runners.pyocd: Flashing file: /home/ted/projects-sandbox/workspace-for-app1/app1/build/cpu1/zephyr/zephyr.hex 0001373 E Not supported by current CPU + target interface combination. [jlink] 0001387 C Invalid error code: -2 [__main__] FATAL ERROR: command exited with status 1: pyocd flash -e sector -a 0x3a000 -t lpc55s69 /home/ted/projects-sandbox/workspace-for-app1/app1/build/cpu1/zephyr/zephyr.hex
See this page's References section and the link to an article about `pyocd` and pitaya-link development environment. Material in this article helps explain what's going on in the `pyocd` command invocation captured a few lines above, line beginning with text "FATAL ERROR".
^ References
Some pyocd basics described in context of Pitaya link programmer or development environment: