A GitHub account is also required.
GitHub requires that a
Personal Access Token
be set. If you do not have this on your account already, navigate to
Developer Settings >
Personal Access Tokens, click on
Generate new token, and save the token locally.
Ensure you have enabled the token to
Update GitHub Action workflows.
You may wish to create a local scratch pad text file containing the below details (which will be unique to you), so that you can easily copy and paste from.
git config --global user.name "YOUR_GITHUB_USERNAME"
git config --global user.email YOUR_EMAIL_ADDRESS
Open your browser, and navigate to Arm Virtual Hardware dashboard:
Raspberry Pi 4 from the list of available devices.
Raspberry Pi OS lite from the example firmware packages.
Name the device
chip-tool (though the naming is arbitrary
chip-tool is used later in the session) and create device.
While this is being created, click
Devices and repeat steps to create a second instance (suggest
lighting-app as name).
Open each instance in its own browser pane.
When your instances are created, select the
Console tab, and log into each Raspberry Pi 4 instance.
Repeat for the other instance.
It is also possible to log in via the CLCD window view. However it is easier to copy and paste (
Shift+Insert) to the Console view.
Console view within the browser will suffice to complete this Learning Path.
If you wish to connect via
SSH (rather than
Console), it is easiest to follow the SSH tunnel connection instructions specified in the
As an alternative, you can also download and install the appropriate
version for your host. Click on
DOWNLOAD OVPN FILE within the
Connect via VPN section.
OpenVPN GUI, select
Import file... and browse to the downloaded
OVPN file. Click
On your host, open terminal(s), and connect to the virtual hardware instance(s) with the command shown in the
Connect tab, or use your preferred terminal application.
You shall build the Matter examples on the virtual Raspberry Pi 4 instances. To prepare for this, install the necessary dependencies on each instance. This can be done in parallel on both instances.
sudo apt-get update
sudo apt-get install -y git gcc g++ pkg-config libssl-dev libdbus-1-dev libglib2.0-dev libavahi-client-dev ninja-build python3-venv python3-dev python3-pip unzip libgirepository1.0-dev libcairo2-dev libreadline-dev libpango1.0-dev
We shall also build ZAP from source on our instances. ZAP is generally installed as a third-party tool via CIPD during the build environment bootstrap but zap packages are currently NOT available for arm64.
git clone https://github.com/project-chip/zap.git ~/zap
curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs
This will also verify that your instances are working correctly.