Установка Windows 10 IoT Core на Raspberry Pi 2
Windows 10 IoT Core – особая операционная система Microsoft, оптимизированная для мини-компьютеров с ограниченным набором системных ресурсов, разрабатываемая в рамках концепции IoT (Internet of Things, «Интернет Вещей»). Предназначена для различных миниатюрных, встраиваемых решений и устройств «умного дома». В частности, минимальные требования для Core — архитектура x86/ARM , 256 Мб ОЗУ и 2 Гб емкости на диске/флешке. На данный момент гарантированно работает на платах Raspberry Pi 2 (ARM), Intel Minnowboard MAX (x86) и DragonBoard 410c. Windows 10 IoT Core является бесплатной платформой.
В этой статье мы рассмотрим, как установить Windows 10 IoT Core для Raspberry Pi 2 на SD карту, загрузить с нее систему и удаленной управлять платформой с Windows-компьютера при помощи PowerShell.
Нам понадобятся:
- Собственно плата Raspberry Pi 2 (стоимость 25$)
- MicroSD карта емкостью 8 или 16 Гб (класса 10 или выше)
- HDMI-кабель для подключения к внешнему монитору / ТВ
- Ethernet кабель для подключения к сети
- МикроUSB кабель в качестве питающего кабеля (5V)
- Компьютер с Windows 10 (для создания загрузочной SD карты обязательно должен быть физическим устройством, а не виртуальной машиной, т.к. требуется прямой доступ к SD карте)
- Образ Windows 10 IoT Core для Raspberry Pi 2 (можно скачать по ссылке на странице https://developer.microsoft.com/en-us/windows/iot/downloads
- USB клавиатуру/ USB мышь для управления Raspberry Pi (опционально)
Качаем образ Windows 10 IoT Core для Raspberry Pi 2 (10586.0.151029-1700.TH2_Release_IOTCoreRPi_armFRE.iso) и монтируем его в виртуальный CD привод. Устанавливаем Windows_10_IoT_Core_RPi2.msi.
Запись образа Windows 10 IoT Core на SD карту можно выполнить с помощью графической утилиты или из командной строки.
Для запуска графической утилиты запустите программу IoTCoreImageHelper.exe. Затем в окне мастера выберите вашу SD карту и укажите путь к файлу с образом системы flash.ffu (по умолчанию устанавливается в ”C:\Program Files (x86)\Microsoft IoT\FFU\RaspberryPi2”) и запишите образ на SD диск, нажав на кнопку Flash.
Чтобы вручную записать образ, для удобства скопируем файл flash.ffu в каталог C:\WindowsIoT. Затем вставим SD карту в компьютер и с помощью PowerShell выведем список дисков в системе:
Get-Disk | ft -AutoSize
Определяем номер диска нашей SD карты (в данном примере ее номер 1). Переходим в каталог, в котором хранится файл flash.ffu:
С помощью следующей команды скопируем образ Windows 10 IoT на SD карту (PhysicalDrive1 нужно заменить на номер SD карты в вашей системе):
dism.exe /Apply-Image /ImageFile:flash.ffu /ApplyDrive:\\.\PhysicalDrive1 /SkipPlatformCheck
Безопасно извлеките SD карту.
Подключаем к плате Raspberry Pi 2 сетевой кабель, монитор через HDMI, записанную на предыдущем этапе SD карту с образом системы, USB кабель и загружаемся. Первая загрузка будет продолжительной, т.к. будет выполнение начальная настройка системы, после чего система перезагрузиться в нормальном режиме.
На дисплее должны отобразиться имя системы (по-умолчанию minwinpc), полученный IP адрес (если в сети имеется DHCP сервер), список подключенных устройств.
Устройства Windows 10 IoT подразумевает возможность управления через веб интерфейс. Утилита WindowsIoTCoreWatcher.exe позволяет найти в сети ip адреса устройств с Windows 10 IoT. Затем в браузере перейдите на порт 8080 обнаруженного ip адреса устройства. Для авторизации воспользуйтесь именем administrator и паролем p@ssw0rd.
Нам более интересна возможность подключения к устройству под Windows 10 IoT Core с помощью Powershell: Для этого запустим PowerShell с правами администратора.
net start WinRM
Затем добавим адрес Pi-устройства в список доверенных:
Set-Item WSMan:\localhost\Client\TrustedHosts -Value «192.168.1.115»
Запустим новую удаленную сессию PowerShell:
Enter-PsSession -ComputerName «192.168.1.115» -Credential 192.168.1.115\Administrator
Авторизуемся с помощью дефолтного пароля p@ssw0rd.
Совет. Авторизационные данные можно сохранить в переменной, чтобы не вводить их каждый раз вручную:
$Cred = Get-Credential
Enter-PsSession -ComputerName 192.168.1.115 -Credential $Cred
Новая сессия устанавливается в речении примерно 30 секунд. После этого в консоль можно вводить команды управления.
Рассмотрим некоторые типовые команды.
Вывод списка каталогов:
set computername «newcomputername»
Изменить пароль администратора:
net user Administrator NewPa$$W0rd
Выключить устройство можно командой shutdown:
Перезагрузить устройство:
Downloads
Windows on Raspberry imager
Requirements:
- a computer with Windows 10 version 1703 or later. (Wine is not supported)
- a Raspberry Pi 2, 3 or 4. (boards with less than 1 GB of RAM were not tested, but keep in mind that Windows will quickly run out-of-memory)
- a drive that has at least 8 GB of available space (it can be a SD card or an USB device)
- a Windows 10 ARM image: WIM/ESD, ISO or FFU
Raspberry Pi 4 warnings:
- using winpatch after the installation will break USB support.
- Ethernet will not work on Windows builds older than 19041.
Getting Windows images
There is currently only one legal way of obtaining Windows 10 ARM64 images: download the UUP files directly from Microsoft servers, and build an ISO from them.
Full desktop builds of Windows 10 ARM32 are not available anywhere (except for a leak, but please read the warning below before going straight to Google).
You can get instead a version of the Windows Preinstallation Environment (WinPE) built for ARM32. A guide can be found here.
What about FFU images?
FFU images can speed up the deployment process significantly, especially on slow devices. They are not available for download due to legal reasons, but you can safely generate them yourself: How to generate FFU images?
Any other method of downloading images (such as prebuilt images, leaks, etc.) is not supported by us!
Copyright © 2018-2021 Mario Bălănică. All Rights Reserved.
This project is not affiliated with the Raspberry Pi Foundation or Microsoft Corporation.
Как на Raspberry Pi установить Windows 10
Raspberry Pi — многофункциональная платформа, способная стать основой для разнообразных проектов. Обычно программной базой для решений на RPi выбирают ОС семейства Linux или Android, но в некоторых случаях целесообразно использовать Windows. Для запуска Windows на Raspberry Pi существует специальная сборка операционной системы — Windows 10 IoT Core.
Что такое Windows 10 IoT
Если встает вопрос установки Виндовс на «малинку», выбор невелик. Win XP или 7 адаптированы под архитектуры процессоров ×86-64 и ×86, а микрокомпьютер работает под управлением CPU с архитектурой ARM. Конечно, существуют проекты запуска XP через эмулятор на Raspbian, но такие решения ничего толкового не принесут. Windows на Raspberry в данном варианте будет разделять аппаратные ресурсы с основной ОС и работать весьма медленно. Поэтому подобное имеет смысл лишь в экспериментальных целях.
Среди релизов Windows 10 компания Microsoft предлагает ветку Embedded для встраиваемых систем. Среди ее представителей есть и Windows IoT Core — ОС для устройств «умных домов» и «интернета вещей». Она способна работать на оборудовании с процессорами ARM, включая Raspberry.
Windows 10 IoT Core сильно отличается от привычной десктопной версии системы, хотя в ее основе лежит все то же ядро NT. Важно учитывать, что существуют два варианта поставки:
Первая представляет полноценную Windows Enterprise для корпоративного сектора. Ее используют в разнообразных встраиваемых устройствах. Вторая — более «легковесная», поддерживает ARM-архитектуру и не совместима с обычными Win-приложениями и оборудованием. Также она лишена графической оболочки и обладает рядом других ограничений. Главные среди них – возможность запускать лишь приложения UWP (Universal Windows Platform). При этом на единицу времени может работать только одно основное (foreground) приложение и несколько фоновых.
Кроме того, Enterprise существует в платном варианте, а Core можно загружать и использовать бесплатно. В рамках данной статьи рассматривается именно она.
«Малина» под управлением Win-систем часто встречается в промышленных контроллерах, кассовых аппаратах и прочих устройствах.
Загрузка и установка
Процесс развертывания ОС от Microsoft на Raspberry Pi 3 несколько отличается от такового у «родного» Raspbian или Андроид. Для установки понадобится:
- сам компьютер Raspberry. Для примера используем Raspberry Pi 3 b +;
- карта памяти;
- ПК с подключением к интернету;
- установленный на нем пакет Microsoft Visual Studio от 15 версии и выше;
- программное обеспечение IoT Dashboard и IoT Remote Client.
Клиент бесплатно предлагается в магазине приложений Windows. Он нужен, если RPi будет управляться по сети без монитора и клавиатуры с мышью.
Когда все скачано и установлено, приступаем к развертыванию образа на Raspberry Pi 3. Процесс состоит из нескольких шагов.
- Запуск дашборда. Открывается интерфейс программы, где следует перейти на вкладку «Set up a new device» (или «Настройка нового устройства» в русскоязычном варианте):
Важно: если необходимо включить на «малинке» работу через Wi-Fi, на ПК с запущенным дашбордом также должно быть активно беспроводное подключение. Программа автоматически внесет нужные настройки в разворачиваемый образ. На скриншоте выше подключение к Wi-Fi отсутствует, о чем утилита и сообщает. При его наличии окно будет выглядеть примерно следующим образом:
Если подключен дисплей, на нем отобразится основной экран приложения с информацией о компьютере.
Взаимодействие с Windows на Raspberry Pi 3
Управлять свежеустановленной на Raspberry Pi Windows 10 можно посредством дисплея и клавиатуры/мышки. Также по сетевому адресу или имени узла компьютера (которое было задано на этапе развертывания) доступен веб-интерфейс — Web Manager.
Следующий способ управления Windows на Raspberry — клиент удаленного доступа. Его интерфейс прост: необходимо ввести ip-адрес «малинки» или выбрать устройство в списке обнаруженных.
ПО Dashboard позволяет подключаться к компьютеру посредством удаленного PowerShell:
Для этого может понадобиться разрешить компьютеру удаленное подключение. Это делается следующей командой локального PowerShell:
Set-Item WSMan:\localhost\Client\TrustedHosts -Value «сетевое_имя_RPI или ip-адрес»
Далее можно подключаться через Dashboard. Если все сделано верно, откроется окно PS:
Оболочка также может потребовать ввода пароля администратора.
Из Dashboard доступен функционал просмотра сетевых папок, например, содержимого диска C через стандартный административный общий ресурс c$:
Зачем это нужно
IoT Core — система высокоспециализированная и в качестве замены обычной десктопной Windows работать не будет. Ее основное предназначение лежит в сфере проектов для «умных домов», и различных контроллеров, будет она интересна инженерам, разработчикам и просто энтузиастам IT. И в этой роли ОС в связке с недорогим одноплатником Pi 3 становится отличным тандемом.
Добавляет привлекательности и то, что пакет Visual Studio в последних версиях изначально поддерживает разработку под IoT Core — для этого в шаблонах проектов присутствует Windows IoT Core Background Application с возможностью загрузки готового приложения непосредственно на удаленный ПК.
Кроме того, система бесплатна.