Wednesday, November 25, 2015

Windows 10 IoT Core: Sample Camera applications – An update (Using DragonBoard 410c)

A couple of month before I have evaluated the USB camera with Raspberry Pi 2 on Windows 10 IoT Core and got the unacceptable results on camera preview rendering performance. Here is the blog post Windows 10 IoT Core – Sample Camera applications. Even though the performance is poor, I was talking about the advantage of UWP application on Windows 10 IoT Core.

Recently Microsoft added DragonBoard 410c in the list of hardware supported for Windows 10 IoT Core. Good news is, the binary released for this board support driver for its inbuilt WiFi module and a Direct X driver for its GPU. I was very curious to check the graphics performance of the DirectX driver using the same USB Camera (e-cam51_USB) and UWP application. Yes. It is fantastic, able to see the camera preview rendering at 30 fps for 640x480 resolution frame, scaled up to the full HD monitor. Also able to perform the video encoding with MP4 with the reasonable performance.

PS: DragonBoard 410c requires a self-powered USB hub to connect the USB camera. Looks like it is a hardware limitation.

Friday, October 9, 2015

Windows 10 IoT Core – A good choice for building IoT Gateway Device

Recently Insider preview for Windows 10 IoT Core is released, which shows that Microsoft Windows 10 IoT Core team is continuously working to bring a new OS for a specific purpose and providing a series of releases with useful updates. This version of Windows 10 supports x86/x64 and ARM based SOCs thereby providing low cost and small foot print IoT devices. As an Embedded/IoT enthusiastic/ professional, I was curious to know the special features of this version of Windows claimed with a suffix “IoT”. Interestingly I went through an Intel Gateway fact sheet where Windows 10 IoT Core is mentioned as an OS for their gateways.  So I thought to evaluate the OS from this aspect. I share my findings here.

A basic functionality of the IoT Gateway includes devices/sensors connectivity, device management, cloud connectivity, Edge or local computing and data security in various levels. 

Thursday, August 13, 2015

Windows 10 IoT Core – Sample Camera applications

Public release of Windows 10 IoT Core is announced for Raspberry Pi 2 and Minnow board Max recently. It supported UVC stack and media foundation class in the release. As I am working on a company (e-con systems) which is expert in design and manufacture the industrial camera modules, I would like to evaluate Windows 10 IoT Core on Raspberry Pi 2 with few of our USB cameras modules.

As you know Microsoft introduced the Universal Windows Platform(UWP) from Windows 10, Which means application developed using UWP can run on Windows 10 PC, mobile and IOT core devices. So I searched for camera sample applications for windows 10 and found the following list of sample UWP applications for camera from the Github.

I am able to build and deploy successfully all these application on Raspberry Pi 2. Now I realised the advantage of UWP applications and the one core windows 10. The Earlier Windows Embedded Compact OS are unique versions which are not common to other versions of Windows. You can find the similarity of the OS features but not exactly the same and it should be subset of the PC windows OS. You have to port the PC application to Windows Embedded Compact OS and it is not a simple build like the UWP applications.

Unfortunately due to the performance bottleneck of Raspberry Pi 2 USB 2.0 port and unavailability of DirectX drivers, preview frame rate is dropped down and just got 5 to 10 FPS even in lower resolutions such as 640x480. But actually the USB camera module is capable of sending 30 fps in this resolution. Hope we can get a better performance on Minnow board Max but I don’t have it to test it.