Windows® Windows XP®(SP3 or greater) Windows Vista® Windows 7® Windows 8® Windows 10® Works with devices running Android®,Motorola OS, or Windows Mobile® operating systems. Mac OS X® Mac OS® 10.5.8 Leopard Mac OS® 10.6 Snow Leopard Mac OS® 10.7 Lion Mac OS® 10.8 Mountain Lion Mac OS® 10.10 Yosemite Works with devices running. Whether a driver is available depends on the board and the driver. The Zephyr device model provides a consistent device model for configuring the drivers that are part of a system. The device model is responsible for initializing all the drivers configured into the system. Each type of driver (UART, SPI, I2C) is supported by a generic type API. Write speed up to 150 kByte/s on STM32F469I-disco (due to SWD clock and USB connection), up to 1 MByte/s on Nucleo-F767ZI with external STLink-V3 or Nucleo-G474RE with two W25Q256FV in dual 4-line mode or STM32H73BI-Disco in octal mode - tested with STM32L476G-disco (64MBit flash, 3-byte addr), STM32F412G-Disco, STM32F469I-Disco, STM32F746G-Disco, and STM32L476G-Disco (all 128Mbit flash, 3.
This section describes how to configure your development environment andto build Zephyr applications in a Microsoft Windows environment.
This guide was tested by building the Zephyr Hello World sampleapplication on Windows versions 7, 8.1, and 10.
Update Your Operating System¶
Before proceeding with the build, ensure that you are running yourWindows system with the latest updates installed.
Installing Requirements and Dependencies¶
There are 3 different ways of developing for Zephyr on Microsoft Windows.The first one is fully Windows native, whereas the 2 additional ones requireemulation layers that slow down build times and are not as optimal. All ofthem are presented here for completeness, but unless you have a particularrequirement for a UNIX tool that is not available on Windows, we stronglyrecommend you use the Windows Command Prompt for performance and minimaldependency set.
Option 1: Windows Command Prompt¶
The easiest way to install the dependencies natively on Microsoft Windows isto use the Chocolatey package manager (Chocolatey website).If you prefer to install those manually then simply download the requiredpackages from their respective websites.
Note
There are multiple set
statements in this tutorial. You can avoidtyping them every time by placing them inside a .cmd
file andrunning that every time you open a Command Prompt.
If you’re behind a corporate firewall, you’ll likely need to specify aproxy to get access to internet resources:
Install Chocolatey by following the instructions on theChocolatey install website.
Open a Command Prompt (cmd.exe) as an Administrator.
Optionally disable global confirmation to avoid having to add -y to allcommands:
Install CMake:
Install the rest of the tools:
Close the Command Prompt window.
Open a Command Prompt (cmd.exe) as a regular user.
Clone a copy of the Zephyr source into your home directory using Git.
Install the required Python modules:
Note
Although pip can install packages in the user’s directory by meansof the --user
flag, this makes it harder for the Command Promptto find the executables in Python modules installed by pip3
.
The build system should now be ready to work with any toolchain installed inyour system. In the next step you’ll find instructions for installingtoolchains for building both x86 and ARM applications.
Install cross compiler toolchain:
For x86, install the 2017 Windows host ISSM toolchain from the IntelDeveloper Zone: ISSM Toolchain. Use your web browser todownload the toolchain’s
tar.gz
file. You can then use 7-Zip or asimilar tool to extract it into a destination folder.Note
The ISSM toolset only supports development for Intel® Quark™Microcontrollers, for example, the Arduino 101 board. (Check out the“Zephyr Development EnvironmentSetup” in this Getting Started on Arduino 101 with ISSM document.)Additional setup is required to use the ISSM GUI for development.
For ARM, install GNU ARM Embedded from the ARM developer website:GNU ARM Embedded (install to
c:gnuarmemb
).
Within the Command Prompt, set up environment variables for the installedtools and for the Zephyr environment:
For x86:
Use the path where you extracted the ISSM toolchain.
For ARM:
To use the same toolchain in new sessions in the future you can set thevariables in the file
%userprofile%zephyrrc.cmd
.And for either, run the
zephyr-env.cmd
file in order to set theZEPHYR_BASE environment variable:
Note
In previous releases of Zephyr, the ZEPHYR_TOOLCHAIN_VARIANT
variable was called ZEPHYR_GCC_VARIANT
.
Finally, you can try building the Hello World sample to check thingsout.
To build for the Intel® Quark™ (x86-based) Arduino 101:
To build for the ARM-based Nordic nRF52 Development Kit:
This should check that all the tools and toolchain are set up correctly foryour own Zephyr development.
Option 2: MSYS2¶
Zephyr Driver Download For Windows 108
Alternatively, one can set up the Zephyr development environment withMSYS2, a modern UNIX environment for Windows. Follow the steps belowto set it up:
Download and install MSYS2. Download the appropriate (32 or64-bit) MSYS2 installer from the MSYS2 website and execute it. On thefinal installation screen, check the “Run MSYS2 now.” box to start up anMSYS2 shell when installation is complete. Follow the rest of theinstallation instructions on the MSYS2 website to update the packagedatabase and core system packages. You may be advised to “terminate MSYS2without returning to shell and check for updates again”. If so, simplyclose the
MSYS2MSYSShell
desktop app and run it again to complete the update.)Launch the
MSYS2MSYSShell
desktop app from your start menu (if it’s not still open).Note
Make sure you start
MSYS2MSYSShell
, notMSYS2MinGWShell
.Note
If you need to inherit the existing Windows environment variables intoMSYS2 you will need to create a Windows environment variable like so::
MSYS2_PATH_TYPE=inherit
.Note
There are multiple
export
statements in this tutorial. You can avoidtyping them every time by placing them at the bottom of your~/.bash_profile
file.If you’re behind a corporate firewall, you’ll likely need to specify aproxy to get access to internet resources:
Update MSYS2’s packages and install the dependencies required to buildZephyr (you may need to restart the MSYS2 shell):
Compile Ninja from source (Ninja is not available asan MSYS2 package) and install it:
From within the MSYS2 MSYS Shell, clone a copy of the Zephyr sourceinto your home directory using Git. (Some Zephyr tools requireUnix-style line endings, so we’ll configure Git for this repo tonot do the automatic Unix/Windows line ending conversion (using
--configcore.autocrlf=false
).Install pip and the required Python modules:
The build system should now be ready to work with any toolchain installed inyour system. In the next step you’ll find instructions for installingtoolchains for building both x86 and ARM applications.
Install cross compiler toolchain:
For x86, install the 2017 Windows host ISSM toolchain from the IntelDeveloper Zone: ISSM Toolchain. Use your web browser todownload the toolchain’s
tar.gz
file.You’ll need the tar application to unpack this file. In an
MSYS2MSYS
console, installtar
and use it to extract the toolchain archive:substituting the .tar.gz path name with the one you downloaded.
Note
The ISSM toolset only supports development for Intel® Quark™Microcontrollers, for example, the Arduino 101 board. (Check out the“Zephyr Development EnvironmentSetup” in this Getting Started on Arduino 101 with ISSM document.)Additional setup is required to use the ISSM GUI for development.
For ARM, install GNU ARM Embedded from the ARM developer website:GNU ARM Embedded (install to
c:gnuarmemb
).
Within the MSYS console, set up environment variables for the installedtools and for the Zephyr environment (using the provided shell script):
For x86:
Use the path where you extracted the ISSM toolchain.
For ARM:
And for either, run the provided script to set up zephyr project specificvariables:
Finally, you can try building the Hello World sample to check thingsout.
To build for the Intel® Quark™ (x86-based) Arduino 101:
Zephyr Driver Download For Windows 10 Pc
To build for the ARM-based Nordic nRF52 Development Kit:
This should check that all the tools and toolchain are set up correctly foryour own Zephyr development.
Option 3: Windows 10 WSL (Windows Subsystem for Linux)¶
Zephyr Driver Download For Windows 1000
If you are running a recent version of Windows 10 you can make use of thebuilt-in functionality to natively run Ubuntu binaries directly on a standardcommand-prompt. This allows you to install the standard Zephyr SDK and buildfor all supported architectures without the need for a Virtual Machine.
Zephyr Driver Download For Windows 10 Pro
Install Windows Subsystem for Linux (WSL) following the instructions on theofficial Microsoft website: WSL Installation
Note
For the Zephyr SDK to function properly you will need Windows 10build 15002 or greater. You can check which Windows 10 build you arerunning in the “About your PC” section of the System Settings.If you are running an older Windows 10 build you might need to installthe Creator’s Update.
Follow the instructions for Ubuntu detailed in the Zephyr Linux GettingStarted Guide which can be found here: Development Environment Setup on Linux