SW Service/IoTCore

From ESS-WIKI
Jump to: navigation, search

Windows 10 IoT Core is a version of Windows 10 that is optimized for smaller devices with or without a display. For more detail information about IoT Core, refer to Learn about Windows 10 IoT Core.

Hardware Reqirement

Component Reqirement
Processor 400 MHz or faster

(x86 requires PAE, NX and SSE2 support)

RAM 256 MB or more for Headless mode

512 MB or more for Headed mode

(More RAM may be required depending on resolution and video implementation)

Storage 2 GB or more

BIOS settings for Advantech devices

To be able to boot into Windows IoT Core on Advantech devices, make sure the settings of the BIOS is correct. Following settings are neccesary for booting up.

Advanced
Boot option filter [UEFI and Legacy]
Video [UEFI]
Boot
Boot option #1 [Windows Boot Manager]
Boot option #2 [Your disk]

Development Environment

To start the developement for IoT Core, there are some operations to do in advance:

  1. Install the latest version of Windows 10.
  2. Enable developer mode of your PC.
  3. Install the latest version of kits and tools that are needed;
    refer to the table below.
Task What kits and tools you will need
Flashing IoT Core image

Windows 10 IoT Core for MinnowBoard Max [link]
(This is a package that include flashing and control tools)

Controling IoT Core system

Windows 10 IoT Core for MinnowBoard Max [link]
(This is a package that include flashing and control tools)

Developing apps

Windows SDK [link]
Visual Studio 2015 Update 1 [link]
IoT Core Project Templates [link]

Developing drivers

Windows WDK [link]
Visual Studio 2015 Update 1 [link]

Developing IoT Core

Windows ADK [link]
Windows WDK [link]
Windows 10 IoT Core OS Packages [link]

Flash image

You can flash the IoT Core image into harddisk, USB disk or SD card.

For how to do this,
Use diskpart to get the index number of the desired disk.
Use diskpart to get the index number of the desired disk.
  1. Launch command prompt with Administrtor permission.
  2. Use diskpart to know which index number is the desired disk to flash image into. Beware that do not mistaken the index number!
  3. Execute command:

"C:\Program Files (x86)\Microsoft IoT\dism\dism.exe" /Apply-Image /ImageFile:"{PATH_OF_IMAGE_FILE}" /ApplyDrive:\\.\PHYSICALDRIVE{INDEX_NUMBER_OF_DISK} /SkipPlatformCheck

* Note that {PATH_OF_IMAGE_FILE} is the path of the image file (*.ffu), and {INDEX_NUMBER_OF_DISK} is the index number of the disk that get in step 2.

App/Driver developement

App

UWP app sample
Hello World(C#)
Other
Console app sample
Memory Status(C++)
Deploying an App via Visual Studio

Driver

Driver sample
GPIO universal driver for MBM(C++)

App installation

There are 2 ways to do this, your device must have accessibility of network.
Method(b): Use web management tool to install an app.
Method(b): Use web management tool to install an app.
Method(a) 
Use scripts to run installation process for an app. The scripts will be run at next boot up, i.e. the app will be installed at next boot up: see here for detail
Method(b) 
Use web management tool to install an app, the app will be installed right away:
1. Connect to Windows Device Portal through your browser
2. Switch to the Apps page
3. Select the following files to deploy
appx or appxbundle files to App package
cer files to Certificate
The files under the Dependencies folder, and other dependence to Dependency
4. The message at the bottom of the page will show the installing status; when it shows "Done", you should be able to find the app in the list of installed app.

Headed/Headless mode

Windows IoT Core can be configured for either headed or headless mode. For more information, and how to switch between the modes, refer to Headed/Headless mode.

headed mode
UI stack is available for fully interactive apps.
headless mode
The UI stack is disabled and apps are not interactive. This reduces the amount of system resources used. Devices that don’t need UI functionality can be set to headless mode.

System Management

This section introduces the ways to remotely connect and configure a device running Windows IoT Core.

PowerShell Connection

Refer to Micorsoft's website for the details.

SSH Connection

You can use a SSH client, like PuTTy, to control and configure Windows IoT Core. Refer to Micorsoft's website for the details.

Web management

Microsoft provides a Device Portal that allows users to do basic configuration and device management. Refer to Micorsoft's website for the details.

File Access

To transfer/access files between IoT Core devices and your local machine, using Windows file sharing technique. The file sharing server on the Windows IoT Core device starts automatically on boot by default. To connect to it, you will need the IP address of your device. Refer to Microsoft's website to more details.

Common command line utils

Refer to Microsoft Windows 10 IoT Core Command Line Utils for more information.

Sample code

Refer to Microsoft Docs and Samples for more sample codes.

UWP app

  • Hello, World! (C#)
  • IoT Core Default App (C#)
  • IoT Browser Sample (C#)
  • Digital Signage Sample (C#)
  • AllJoyn Connectivity(C#/Javascript)

Console app

Driver

  • GPIO universal driver for MBM (C++)