Skip to content

Commit

Permalink
Merge pull request #929 from ArmDeveloperEcosystem/main
Browse files Browse the repository at this point in the history
Merge to production
  • Loading branch information
pareenaverma committed May 21, 2024
2 parents 694ea1c + bb01aff commit 8e56631
Show file tree
Hide file tree
Showing 117 changed files with 2,309 additions and 117 deletions.
1 change: 1 addition & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ jobs:
- name: Build
run: |
hugo --minify
cp learn-image-sitemap.xml public/learn-image-sitemap.xml
bin/pagefind --site "public"
# Copy SSH Key
Expand Down
51 changes: 49 additions & 2 deletions .wordlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,6 @@ MPT
MSBuild
MSVC
MVAPICH
MacOS
Manjaro
Multipass
NIC
Expand Down Expand Up @@ -2653,4 +2652,52 @@ nlp
eval
datascience
chatbot
Guid
Guid
CoreLink
Kinesis
MQQT
PublishRetain
SensorReadings
WeatherEmulator
WeatherStation
WeatherStationEmulator
ats
awsConnectionInfo
basicPubSub
caPath
certPath
clientId
deasserts
deviceId
getRandomValue
isTelemetryActive
keyPath
msDelayTime
randomSensorReadings
rootCertDir
telemetryIntervalHandle
topicSensorReadings
topicTelemetryControl
topicfilter
uzbanvsz
DistilBERT
distilbert
BertTokenizer
tokenized
GEMM
MMLA
pareenaverma
changelog
OtherServices
amazondynamodb
dynamodb
DynamoDBv
cshtml
sampleapp
tagname
dawidborycki
lp
abetlen
ee
pkgx
mprof
Binary file added content/install-guides/_images/sandbox_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added content/install-guides/_images/sandbox_virt_0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added content/install-guides/_images/sandbox_virt_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 8 additions & 6 deletions content/install-guides/armds.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,24 +56,26 @@ It is easiest to simply double-click the installation wizard (`armds-<version>.e

To install silently from the command line, use similar to the following:
```command
msiexec /i DS000-BN-00000-r23p1-00rel0\data\armds-2023.1.msi EULA=1 SKIP_DRIVERS=1 /qn
msiexec /i DS000-BN-00000-r23p1-00rel0\data\armds-2024.0.msi EULA=1 SKIP_DRIVERS=1 /qn
```
{{% notice Drivers%}}
This command does not install the debug probe USB drivers. If these are needed, remove `SKIP_DRIVERS=1` from the above. This requires manual interaction. They can also be installed manually later (`<install_dir>\sw\driver_files\driver_install.bat`) if necessary.
{{% /notice %}}

Full installation instructions are provided in the Windows section of the [Arm Development Studio Getting Started Guide](https://developer.arm.com/documentation/101469/latest/Installing-and-configuring-Arm-Development-Studio/Installing-on-Windows).
Full installation instructions are provided in the [Arm Development Studio Getting Started Guide](https://developer.arm.com/documentation/101469/).
* [Install Arm Development Studio on Windows using the command line](https://developer.arm.com/documentation/101469/2024-0/Installing-and-configuring-Arm-Development-Studio/Install-Arm-Development-Studio-on-Windows-using-the-command-line)
* [Install Arm Development Studio on Windows using the installation wizard](https://developer.arm.com/documentation/101469/latest/Installing-and-configuring-Arm-Development-Studio/Install-Arm-Development-Studio-on-Windows-using-the-installation-wizard)

### Linux

Extract the downloaded package:
```command
tar -xf DS000-BN-00001-r23p1-00rel0.tgz
cd DS000-BN-00001-r23p1-00rel0
tar -xf DS000-BN-00001-r24p0-00rel0.tgz
cd DS000-BN-00001-r24p0-00rel0
```
To install silently from the command line, use similar to the following.
```command
sudo ./armds-2023.1.sh --i-agree-to-the-contained-eula --no-interactive -f -q
sudo ./armds-2024.0.sh --i-agree-to-the-contained-eula --no-interactive -f -q
```
{{% notice Libraries%}}
The install may report that additional [libraries](https://developer.arm.com/documentation/101469/latest/Installing-and-configuring-Arm-Development-Studio/Additional-Linux-libraries) are needed to be installed.
Expand Down Expand Up @@ -101,7 +103,7 @@ By default, only the supplied `Arm Compiler for Embedded 6` is installed with Ar

Navigate to `bin` directory of your install, for example:
```command
cd /opt/arm/developmentstudio-2023.1/bin
cd /opt/arm/developmentstudio-2024.0/bin
```
Use `suite_exec` to start an appropriate command prompt, for example:
```command
Expand Down
2 changes: 1 addition & 1 deletion content/install-guides/cmsis-toolbox.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ It is also used for the creation and maintenance of such packs.

`CMSIS-Toolbox` is part of the [Open-CMSIS-Pack project](https://www.open-cmsis-pack.org).

Windows, Linux, and MacOS host platforms are supported.
Windows, Linux, and macOS host platforms are supported.

The below assumes Ubuntu Linux on an Arm based host. Instructions are similar for other platforms.

Expand Down
2 changes: 1 addition & 1 deletion content/install-guides/forge.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ To install to the default directory, non-interactively:
linaro-forge-23.0-linux-aarch64/textinstall.sh --accept-license /home/ubuntu/linaro/forge/23.0
```

### Install on MacOS (remote client only)
### Install on macOS (remote client only)

Drag and drop the client application bundle icon into the Applications directory.

Expand Down
4 changes: 2 additions & 2 deletions content/install-guides/fvps-on-macos.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
### Title the install tools article with the name of the tool to be installed
### Include vendor name where appropriate
title: AVH FVPs on MacOS
title: AVH FVPs on macOS

### Optional additional search terms (one per line) to assist in finding the article
additional_search_terms:
Expand All @@ -26,7 +26,7 @@ multi_install: false # Set to true if first page of multi-page articl
multitool_install_part: false # Set to true if a sub-page of a multi-page article, else false
layout: installtoolsall # DO NOT MODIFY. Always true for tool install articles
---
This guide is intended to get you up and running with the [Arm Virtual Hardware (AVH) Fixed Virtual Platforms (FVPs)](https://www.arm.com/products/development-tools/simulation/virtual-hardware) on MacOS. For a thorough review of all options, refer to the offical documentation.
This guide is intended to get you up and running with the [Arm Virtual Hardware (AVH) Fixed Virtual Platforms (FVPs)](https://www.arm.com/products/development-tools/simulation/virtual-hardware) on macOS. For a thorough review of all options, refer to the official documentation.

## Prerequisites

Expand Down
2 changes: 1 addition & 1 deletion content/install-guides/streamline.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ Download the appropriate package from the [Product Download Hub](https://develop
- [Arm Performance Studio](https://developer.arm.com/downloads/view/MOBST-PRO0)
- [Arm Development Studio](https://developer.arm.com/downloads/view/DEVST-GLD0)

Arm Performance Studio supports Windows, Linux, and MacOS hosts.
Arm Performance Studio supports Windows, Linux, and macOS hosts.

Arm Development Studio supports Windows and Linux hosts.

Expand Down
102 changes: 102 additions & 0 deletions content/install-guides/windows-sandbox-woa.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
---
### Title the install tools article with the name of the tool to be installed
### Include vendor name where appropriate
title: Windows Sandbox for Windows on Arm

### Optional additional search terms (one per line) to assist in finding the article
additional_search_terms:
- sandbox
- windows
- woa
- windows on arm

### Estimated completion time in minutes (please use integer multiple of 5)
minutes_to_complete: 15

### Link to official documentation
official_docs: https://learn.microsoft.com/en-us/windows/security/application-security/application-isolation/windows-sandbox/windows-sandbox-overview

author_primary: Pareena Verma

### PAGE SETUP
weight: 1 # Defines page ordering. Must be 1 for first (or only) page.
tool_install: true # Set to true to be listed in main selection page, else false
multi_install: false # Set to true if first page of multi-page article, else false
multitool_install_part: false # Set to true if a sub-page of a multi-page article, else false
layout: installtoolsall # DO NOT MODIFY. Always true for tool install articles
---

Windows Sandbox is a lightweight, desktop environment from Microsoft that enables you to safely run and test applications in isolation. Software installed in Windows Sandbox is completely isolated from the host machine. When the sandbox is closed, your installed software is deleted. You can create a new sandbox and start your testing again.

You can install Windows Sandbox on an Arm device running Windows 11, version 22H2, and later.

A number of developer-ready [Windows on Arm devices](../../learning-paths/laptops-and-desktops/intro/find-hardware/) are available.

## Enable Virtualization

To run Windows Sandbox, you need to make sure that virtualization is enabled on your device.

On a physical machine, virtualization is enabled in the BIOS.

Use the following steps to check the virtualization settings:

* Right-click on the Windows Start Menu and select Terminal(Admin)

* Enter `systeminfo.exe` and press Enter

Details about your system are printed on the terminal.

Check the `Hyper-V requirements` section at the bottom of the Window.

If you see:

`Virtualization Enabled in Firmware: Yes`

as shown in the picture below, then you are ready to use Windows Sandbox.

![Virtualization 1](/install-guides/_images/sandbox_virt_0.png)

If you see:

`A hypervisor has been detected. Features required for Hyper-V will not be displayed.`

as shown in the picture below, it also means you are ready to use Windows Sandbox.

![Virtualization 2 #center](/install-guides/_images/sandbox_virt_1.png)

{{% notice Note %}} If you don't see any messages about Hyper-V Requirements or you see:

`Virtualization Enabled in Firmware: No`

then you need to enable virtualization in your BIOS.

The BIOS settings for Virtualization vary depending on your device, but are generally found under Advanced settings.
{{% /notice %}}

With virtualization now enabled, you can install Windows Sandbox.

## Install Windows Sandbox

{{% notice Note %}}
You must enable Windows Sandbox on a physical Windows on Arm device. It cannot be enabled on a virtual machine such as an Azure Arm instance running Windows 11.
{{% /notice %}}

On the Windows search bar type "turn windows features on or off" and open the Control panel.

From the Windows Features list, select Windows Sandbox and then click OK.

![Install #center](/install-guides/_images/sandbox_1.png)

If prompted, Restart your computer.

After your computer restarts, click on the Start menu and select Windows Sandbox.

It will take a few minutes for Windows Sandbox to launch.

You are now ready to use Windows Sandbox on your computer.

You can install software and perform any other testing activities in the temporary sandbox.

When you exit Windows Sandbox, the software you installed and any changes you made in the sandbox are gone.

More information is available about the [Windows Sandbox architecture](https://learn.microsoft.com/en-us/windows/security/application-security/application-isolation/windows-sandbox/windows-sandbox-architecture).
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@ minutes_to_complete: 60
who_is_this_for: This topic is for content creators and software developers who want to share Arm related information as a step-by-step guide called a Learning Path.

learning_objectives:
- Understand what type of content belongs in a Learning Path
- Setup the required tools for Learning Path creation
- Write and format your own Learning Path using markdown
- Contribute your Learning Path for publication
- Understand what type of content belongs in a Learning Path.
- Set up the required tools for Learning Path creation.
- Write and format your own Learning Path using markdown.
- Contribute your Learning Path for publication.

prerequisites:
- A [GitHub](https://github.com/) account
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@ weight: 2 # 1 is first, 2 is second, etc.
layout: "learningpathall"
---

Learning Paths are community created how-to articles about software development for the Arm architecture.
Learning Paths are community-created how-to articles about software development for the Arm architecture.

All content is covered by the [Creative Commons Attribution-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-sa/4.0/).

## What is a Learning Path?

A Learning Path is a concise tutorial with detailed steps to learn how to complete a specific task.
A Learning Path is a concise tutorial with detailed steps to enable you to learn how to complete a specific task.

A Learning Path is not:
- product documentation
Expand All @@ -40,7 +40,7 @@ Arm has a number of content channels where you can access Arm technical content

Learning Paths are maintained in [GitHub](https://github.com/ArmDeveloperEcosystem/arm-learning-paths). The content is written in markdown. [Hugo](https://gohugo.io/) is used to generate a static website from the markdown files.

The next section explains how you can setup a computer to create a new Learning Path or modify existing content.
The next section explains how you can set up a computer to create a new Learning Path, or modify existing content.

## Who can write a Learning Path?

Expand All @@ -52,25 +52,25 @@ This Learning Path provides the information you need to create your own Learning

## What topics are appropriate for Learning Paths?

Learning Paths are about software development on Arm. Content is segmented into 5 categories and each Learning Path is related to the category. Each category covers different kinds of computer hardware, and each Learning Path is about software development on Arm hardware. All types of software are welcome.
Learning Paths are about software development on Arm. Content is segmented into 5 categories and each Learning Path is related to the category. Each category covers different kinds of computer hardware, and each Learning Path is about software development on Arm hardware. Content about all types of software is welcome.

## Are there things which are not suitable for Learning Paths?

Learning Paths include only public information. Do not include confidential information, trade secrets, unannounced products, or any other information which should not be on a public website.

No AI tool can be used to generate either content or code when creating a learning path or install guide.
Do not use an AI tool to generate either content or code when creating a Learning Path or install guide.

## Is there a way to ask about my Learning Path idea?

You can use [GitHub Discussions](https://github.com/ArmDeveloperEcosystem/arm-learning-paths/discussions) to ask questions about your Learning Path idea. You may want to do this if you are unsure about the usefulness of your concept or think it might already be covered by other content. You can also use it to determine the best category for your Learning Path. It is possible to have a Learning Path appear in multiple categories, so use GitHub discussions to ask.
You can use [GitHub Discussions](https://github.com/ArmDeveloperEcosystem/arm-learning-paths/discussions) to ask questions about your Learning Path idea. You may want to do this if you are unsure about the usefulness of your concept or think it might already be covered by other content. You can also use it to determine the best category for your Learning Path. It is possible that a Learning Path belongs to multiple categories, so use GitHub discussions to ask.

## What is an install guide?

Install guides provide a concise summary of how to install tools and software or do a common task. Install guides make it easy to reference repeated actions from multiple Learning Paths. Use [GitHub discussions](https://github.com/ArmDeveloperEcosystem/arm-learning-paths/discussions) to ask if your content idea should be a Learning Path or an install guide.
Install guides provide a concise summary of how to install tools and software or perform a common task. Install guides make it easy to reference repeated actions from multiple Learning Paths. Use [GitHub discussions](https://github.com/ArmDeveloperEcosystem/arm-learning-paths/discussions) to ask if your content idea should be a Learning Path or an install guide.

## What if I have an idea for a Learning Path but cannot write it?

Use the [GitHub Ideas](https://github.com/ArmDeveloperEcosystem/arm-learning-paths/discussions/categories/ideas) to share topics you think would make a good Learning Path or install guide. Even if you cannot write the content it's possible somebody else can do it.
Use the [GitHub Ideas](https://github.com/ArmDeveloperEcosystem/arm-learning-paths/discussions/categories/ideas) to share topics you think would make a good Learning Path or install guide. Even if you cannot write the content, it's possible somebody else can do it.

## When are Learning Paths reviewed and published?

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ Specifies the operating systems this Learning Path can run on. Select from this
|---------------|
| Linux |
| Windows |
| MacOS |
| macOS |
| ChromeOS |
| iOS |
| Android |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ You will need a second computer with SSH configured. This computer is called the
#### Device Package

If the target device only needs to receive connections, you should install the device package. This is the smallest footprint package which is suitable for embedded devices with limited storage and resources. [Install Device Package](/learning-paths/cross-platform/remoteit/device-package)
This does not support Windows or MacOS devices. Install the CLI or Desktop Application for these systems.
This does not support Windows or macOS devices. Install the CLI or Desktop Application for these systems.

#### CLI

Expand Down
2 changes: 1 addition & 1 deletion content/learning-paths/embedded-systems/_index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
differentiating_info:
- Linux IoT
- Linux and Windows IoT
- Automotive
- Storage
key_ip:
Expand Down
38 changes: 38 additions & 0 deletions content/learning-paths/embedded-systems/llama-python-cpu/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
title: Run a local LLM chatbot on a Raspberry Pi 5

minutes_to_complete: 30

who_is_this_for: This is an introductory topic for anyone interested in running a local Large Language Model on a Raspberry Pi 5.

learning_objectives:
- Install the Python version of llama.cpp on your Raspberry Pi 5.
- Download an LLM from Hugging Face.
- Assess LLM memory size and performance.
- Run the LLM on your Raspberry Pi 5 using Python bindings for llama.cpp.

prerequisites:
- A Raspberry Pi 5 running Raspberry Pi OS.

author_primary: Jason Andrews

### Tags
skilllevels: Introductory
subjects: ML
armips:
- Cortex-A
operatingsystems:
- Linux
tools_software_languages:
- LLM
- GenAI
- Raspberry Pi
- Python


### FIXED, DO NOT MODIFY
# ================================================================================
weight: 1 # _index.md always has weight of 1 to order correctly
layout: "learningpathall" # All files under learning paths have this same wrapper
learning_path_main_page: "yes" # This should be surfaced when looking for related content. Only set for _index.md of learning path content.
---
Loading

0 comments on commit 8e56631

Please sign in to comment.