Select the version of your OS from the tabs below. If you don't know the version you are using, run the command cat /etc/os-release
or cat /etc/issue
on the board.
Remember that you can always refer to the Torizon Documentation, there you can find a lot of relevant articles that might help you in the application development.
Toradex offers integration between the VS Code Extension for Torizon and TorizonCore Builder, allowing the user to create Torizon/TorizonCore Builder Image Customization projects that handle the tcbuild.yaml
configuration file and provide IntelliSense, validation between other customization files and integration with the TorizonCore Builder commands.
Read the article Visual Studio Code Extension for Torizon
Have one of the OS below:
Windows 10 Pro / Enterprise / Education or more recent
Linux (it was validated using Debian based distros)
Toradex Hardware with TorizonCore installed.
YAML Language Support by Red Hat extension installed.
Press F1
or CTRL+SHIFT+P
to access the command pallet and then type TorizonCore Builder
:
Select the command Torizon/TorizonCore Builder: Create Torizon Image customization project
. After the selection a new input will be shown to type a name for the project:
Warning: This name will be used to create a folder, so it must be a valid folder name.
After the input of the project name, select a folder on the system to store the project files:
Warning: This will be the path where the extension will create the folder with the project name.
After the folder selection, select the Toradex hardware platform that will be the base for the customization image:
Warning: All Toradex platforms that support Torizon will be listed and can be selected. The platforms listed with a plug icon ????
are the platforms from devices connected to the extension, facilitating for the user to choose a device under test.
After the platform selection, select the TorizonCore base image for the customization project:
Warning: All base images that support the previously selected platform will be listed and can be selected. The base images listed from a device connected to the extension are marked with a plug icon ????
, facilitating for the user to choose the same TorizonCore version from a device under test and use it as a base image.
After this setup the project will be created and opened, with the following folder organization:
.vscode
: folder with the VS Code configurations for Torizon/TorizonCore Builder Image Customization projects;
appconfig_0
: folder with the configuration for the moses
backend;
customLogo.png
: the project template comes with this custom logo image that is linked on the TorizonCore Builder configuration file, so the user can perform a quick "hello world" customization to check the sanity of the environment.
tcbuild.yaml
: "hello world" TorizonCore Builder configuration file, filled with the data from the base image in the input
section, the custom logo in the customization
section, and the output directory in the output
section;
The TorizonCore Builder Configuration ile is a file in YAML format that follows an expected schema. To make editing the TorizonCore Builder configuration file easier, the VS Code integration offers autocompletion hints for it:
In addition to autocompletion with the expected values and properties in the schema, the integration offers extra autocompletion and validation in the context of the project workspace directory for the following properties:
input
:
easy-installer
:
toradex-feed
:
version
: autocomplete with the possible TorizonCore versions depending on the machine
, distro
, variant
and release
selected;
release
: autocomplete with nightly
, monthly
or quarterly
;
machine
: autocomplete with the supported Toradex hardware platforms;
distro
: autocomplete with torizon
, torizon-rt
, torizon-upstream
or torizon-upstream-rt
;
variant
: autocomplete with torizon-core-docker
or torizon-core-podman
;
build-number
: autocomplete with the possible TorizonCore build numbers depending on the machine
, release
, version
, build-date
selected;
build-date
: autocomplete with the possible TorizonCore build dates depending on the machine
, release
, version
selected;
customization
:
splash-screen
: autocomplete with the .png
files from the workspace directory;
device-tree
:
overlays
:
add
: autocomplete with the device-trees/overlays/**/*.dts
files from the workspace directory;custom
: autocomplete with the *.dts
or *.dtsi
files from the workspace directory;
include-dirs
: autocomplete with all the valid folders from the workspace directory;
filesystem
: autocomplete with all the valid folders from the workspace directory;
kernel
:
modules
:
source-dir
: autocomplete with all valid folders from the workspace directory;To quickly generate a customized image, based on the TorizonCore Builder configuration file, and deploy it to a device under test, press F5
and select the target device:
After the target device selection, input the target device login password:
Warning: TorizonCore Builder uses ssh
connection to deploy an image to the target device. The username is the same used from the connection on the VS Code Add Device
This will run the following TorizonCore Builder commands in sequence Build -> Unpack -> Deploy
. A progress notification will be presented:
Wait until the tasks finish executing. After they finish the progress notification will be automatically closed and the output panel will have the following success messages:
In addition to press F5
in a Torizon/TorizonCore Builder Image Customization project, the user can also run the automated sequence Build -> Unpack -> Deploy
through the command palette (pressing F1
or CTRL+SHIFT+P
):
Or when the TorizonCore Builder configuration file is in focus on the editor, through the respective context button:
The user can also run commands individually. The Build command can be executed through the command palette:
Or through the respective context button, when the TorizonCore Builder configuration file is in focus on the editor:
After selecting, or clicking on the button, to execute the command, wait for the end of execution (a progress notification will be present):
Upon successful completion of the execution, the progress notification will be closed automatically and something like the following messages will be displayed in the output panel:
The Images Unpack command can be executed through the command palette:
Or through the respective context button, when the TorizonCore Builder configuration file is in focus on the editor:
After selecting, or clicking on the button, to execute the command, wait for the end of execution (a progress notification will be present):
Upon successful completion of the execution, the progress notification will be closed automatically and something like the following messages will be displayed in the output panel:
The Deploy command can be executed through the command palette:
Or through the respective context button, when the TorizonCore Builder configuration file is in focus on the editor:
After selecting, or clicking on the button, to execute the command, select the target device to deploy the image:
After the target device selection, input the target device login password:
Warning: TorizonCore Builder uses ssh
connection to deploy an image to the target device. The username is the same used from the connection on the VS Code Add Device
After selecting, or clicking on the button, to execute the command, wait for the end of execution (a progress notification will be present). Upon successful completion of the execution, the progress notification will be closed automatically and something like the following messages will be displayed in the output panel:
The Push command can be executed through the command palette:
Or through the respective context button, when the TorizonCore Builder configuration file is in focus on the editor:
Warning: This command uses the credentials.zip
file to perform a secure upload for the user account. The user must download the file from their Torizon Platform account section and copy it to the Torizon/TorizonCore Builder Image Customization project workspace.
After selecting, or clicking on the button, to execute the command, wait for the end of execution (a progress notification will be present). Upon successful completion of the execution, the progress notification will be closed automatically and something like the following messages will be displayed in the output panel:
The dt checkout command can be executed through the command palette:
Wait for the end of the command execution (a progress notification will be present). Upon successful completion of the execution, the progress notification will be closed automatically and there will be a new folder called device-trees
in the project workspace:
When an exception occurs during a TorizonCore Builder command execution, a generic error HTTP request failed
is presented:
To verify the root cause of the problem, open the Output
panel and select the Torizon
channel to check the logs:
The following error message is displayed when the user tries to execute the Build
command and there are validation errors in the TorizonCore Builder configuration file:
TorizonCore Builder configuration file has errors, impossible to build. Solve the problems and try again.
Check the problems listed and the tips to solve them in the Problems
panel.
First of all, make sure to have the YAML Language Support by Red Hat extension installed:
Open the Output
panel and select the Torizon
channel to check the logs. There should be the following messages:
if you don't have these messages in the output some issue has occurred and it could be a bug. Please report the logs in the Toradex Developer Community.
The following error message is displayed when the user tries to execute the Push to OTA
command and there is no credentials.zip
file in the workspace:
There is no "credentials.zip" in your workspace. Please download the "credentials.zip" from https://app.torizon.io/#/account in your workspace.
The Push to OTA
command uses the credentials.zip
file to perform a secure upload for the user account. The user must download the file from their Torizon Platform account section and copy it to the Torizon/TorizonCore Builder Image Customization project workspace.