Windows 10 IoT
In my previous blog Windows 10 (including IoT) USB HID device identification was covered in detail. This included an app that takes the relevant IDs for an HID device and checks whether it is present on the system. Two of the IDs could be looked up via a menu as they come an HID Usage table. The menu data was loaded from a JSON (text) file and translated using Linq to a list that is the Xaml data source binding for the menu. This blog demonstrates the mechanism for loading JSON data from a text file into an Xaml ComboBox.
Read the rest of entry »
Human Interface Devices (HID) are supported in the “headful/headed” (viz. headless) version of Windows 10 IoT. Anything that takes users input for an app is an HID device, and can include devices such as screens that provide feedback to the user. Traditional HID devices are the mouse and keyboard, whereas gaming devices such as joystick, XBox controller and steering wheel are also HID devices. A barcode scanner or credit scanner are also be HID devices, A system with just a few push buttons to control it has those pushbuttons as a trivial HID. Technically the HID protocol was developed as a protocol for the USB-HID class such that devices that conform to that class do not need a specific driver.
This blog discusses a UWP (Universal) app that enumerates the drivers on a Windows 10 system (including IoT). Its like the Windows Device Manager app. Full source code is available.
Whilst the Raspberry Pi 2 has extensibility through GPIO, I2C, SPI and Single wire, the main interface for adding off-the-shelf peripherals is via USB. Unlike the desktop, there is though only a limited set of USB peripherals that can be used on the RPI2 running Windows 10 IoT in the first release. This series of articles looks at what is available and what the overarching issues are. The first Article is “Connected Devices”
Peripheral devices can be connected to the Raspberry PI 2 via the four USB host ports. The connected devices can be examined in a number of ways. This blog examines these methods.
The following is an identification of the changed project files for an RC version of a Universal App with the RTM version of the project.
Windows 10 now on MSDN ...
A truly Universal App will run on all Windows 10 targets, with only a targeted CPU change and rebuild required. This second part of this blog series sets up a UAP/UWP project to make use of the file base SQLite database engine. This part creates the project, gathers the required bits and sets up the user interface. Parts three covers the functional code.
A Windows 10 UWP app can be built upon the Remote-Wiring library such that the app can interact with an Arduino device running Firmata. An app, similar to the Windows Remote Arduino “Blinky” example, but with feature additions, is developed. It performs GPIO (output AND input) as well as some analog IO. . This app is functionally the same as Windows 8.1 version in the previous blog in this series. This blog works through the same material (ie repeats much of it) as the previous blog but from the Universal Windows Platform (UWP) context rather Windows 8.1 Universal App context. The target for the app is Win 10 desktop, Win 10 phone and Raspberry PI2 (running Win 10 IoT). The latter target is a "work-in-progress though".This blog can be read without reference to the previous blog.
A Windows 8.1 Universal app can be built upon the Remote-Wiring library such that the app can interact with an Arduino device running Firmata. An app similar to the Windows Remote Arduino “Blinky” example, but with feature additions, is developed. It performs GPIO (output AND input) as well as some analog IO. The app runs on a Win 8.1 desktop, phone and RT Surface. The UI has some extra XAML “bells and whistles”.