This repo is currently a work in progress, and some items are placeholders.
The projects in this repo are intended to be used with NXP's MCUXpresso for VS-code plugin.
To use a demo project, simply use the provided setup.sh
on the given project you want to run.
All Projects were initially tested with Zephyr v4.0.0
and Zephyr SDK 0.16.8
MacOS and Linux:
cd /path/to/nxp-appcodehub
./setup.sh dm-wolfssl-tls-hello-server-with-zephyr
Expected Output:
nxp-appcodehub % ./setup.sh dm-wolfssl-tls-hello-server-with-zephyr
Created .vscode directory in dm-wolfssl-tls-hello-server-with-zephyr.
cmake-kits.json created.
cmake-variants.json created.
launch.json created.
mcuxpresso-tools.json created.
settings.json created.
This creates the necessary base files that the plugin needs to import the project correctly.
The default board is the FRDM-MCXN947. If you want to use a different board, like the mimxrt1060_evkb
, add a second argument to the command like so:
./setup.sh dm-wolfmqtt-button-publisher-client-with-zephyr mimxrt1060_evkb
You may need to double-check the proj.conf
settings of the project to disable and/or enable drivers specific for the board.
Assuming you have the necessary software described in the README for the given
project, you simply need to go to the MCUXpresso plugin menu and select Import Project
as seen in the figure below.
Once you select Import Project
, select the path for the desired project you want to run. This will then detect the type of project. You will need to set up any repositories and SDKs through the plugin options.
In the figure below, the imported project is of the type Zephyr
, which means it needs to point to the Zephyr SDK and Repository. These can be installed via the Import Repository
and the MCUXpresso Installer
options seen in the previous menu.
Once you select the Repository
and SDK
you want to use with the imported project, hit the Import
button.
Currently, with the way the projects are set up, you will need to add wolfSSL, wolfSSH, wolfMQTT, etc., to the west.yml
file inside the Zephyr repo specified during the import of the project.
So for example the following would be added to /Users/night1rider/Documents/VS-Code/Zephyr-Main/zephyr/west.yml
and then a west update
performed inside that directory to update the repositories available to Zephyr
.
manifest:
remotes:
# <your other remotes>
- name: wolfssl
url-base: https://github.com/wolfssl
- name: wolfssh
url-base: https://github.com/wolfssl
- name: wolfmqtt
url-base: https://github.com/wolfssl
projects:
# <your other projects>
- name: wolfssl
path: modules/crypto/wolfssl
revision: v5.7.6-stable
remote: wolfssl
- name: wolfssh
path: modules/lib/wolfssh
revision: v1.4.18-stable
remote: wolfssh
- name: wolfmqtt
path: modules/lib/wolfmqtt
revision: v1.19.1
remote: wolfmqtt
For more Zephyr-specific examples, look at the following READMEs: