Tech-Trends

IoT Hub vs Event Hub–A quick comparison

December 11, 2016 Azure, Cloud Computing, Cloud to Device, Communication Protocols, Connectivity, Contrained Networks/Devices, Data Hubs, Device Shadow, Device to Cloud, Device Twin, Emerging Technologies, Event Hubs, HTTP2, Identity of Things (IDoT), Intelligent Cloud, Internet of Things, Interoperability, IoT, IoT Hub, IoT Privacy, IoT Security, Messaging, Microsoft, Performance, Protocols, Reliability, Scalability, Tech-Trends No comments

With this article I am trying to provide you a birds eye view comparison of IoT Hub and Azure Event Hub, so that some of you may stop feeling that there is nothing new in IoT Hub.

For the interest of this article, I put together a table with side-by-side comparison of some important features/desired features from an IoT Hub like platform.

Feature IoT Hub Event Hub
Communication Supports both device-to-cloud and cloud-to-device bidirectional communication Supports only device-to-cloud communication
State Management Can maintain device state using Device Twins and query them whenever needed. Not Supported
Protocol Support AMQP 1.1, AMQP over Web Sockets, MQTT 3.2, MQTT over Web Sockets, HTTP 1.1, Web Sockets. AMQP 1.1, AMQP over Web Sockets, HTTP 11 , Web Sockets only
Protocol Extensions Provides IoT protocol gateway a customizable implementation for industrial protocol channelling. Not Supported
Security Provides identity to each device and easily revocable through IoT Hub Device Management portal. Shared access policies with limited revocation capabilities are provided.
Monitoring/ Operations Provides a rich set of features through Device Management capability. Includes individually enable/disable or provision new device. Change security keys as needed. View/identify individual device problems easily. Does not provide individual performance metrics. Can provide only a high level aggregated metrics only.
Scalability Scalable to thousands/millions of simultaneous devices Limited number of simultaneous connections up to 5000 connections per Azure Service Bus Quotas. Event Hub provides a capability to partition your message to channel it in to associated Service Bus quotas.
SDK Support/ Developer Support Provides very good Integration SDK and developer support. Both Azure IoT  Device SDK and IoT Gateway SDK are the most essential kits provided for almost all devices/OS platforms. It also support all the latest programming languages such as C#, Node.js, Java and Python.
Also provides  direct MQTT, AMQP and REST based HTTP APIs.
Very detail oriented documentation provided.
.NET, Java and C apart from protocols such as AMQP, HTTP API interfaces.
Files/Images Upload Capability Supports IoT devices/solutions to upload files/images/snapshots to cloud and define a workflow for processing them. Not Available
Message Routing Very decent message routing capability is available out of the box. Up to 10 end points can be defined and Advanced Rules can be defined on how routing should occur. Requires additional programming and hosting to support as per the need.

From this comparison table, you can analyse that IoTHub is the right candidate for your IoT solution needs, as Event Hub lacking certain capabilities that are essential for an IoT Ingestion point. If you are only requiring to send messages to cloud and doesn’t require any fancy stuff as IoTHub provides, you can choose Event Hub.

Remember with more power comes more responsibility, that’s what IotHub intend to provide to you.

Hope this overview was helpful. Please feel free to comment or initiate a discussion any time. Please share your feedbacks on this article as well.

Azure IoT Hub Device Management–Released to Public

November 17, 2016 .NET, Azure, Azure IoT Suite, Cloud Services, Cloud to Device, Connectivity, Device Shadow, Device to Cloud, Device Twin, Internet Appliance, Internet of Things, IoT, IoT Hub, machine-to-machine (M2M), Microsoft, Tech-Trends No comments ,

Today Microsoft has announced general availability of Azure IoT Hub Device Management. With this release Azure IoT Hub subscribers/customers will be able to get access to following features and functionalities:

  • Device twin. Use a digital representation of your physical devices to synchronize device conditions and operator configuration between the cloud and device.
  • Direct methods. Apply a direct, performant action on a connected device through the cloud.
  • Jobs. Broadcast and schedule device twin changes and methods to scale management operations across millions of devices.
  • Queries. Create real-time, dynamic reports across device twins and jobs to attest status and health for entire device collections, whether your devices are online or offline.

Useful References:

Microsoft Developer Program for IoT & Windows 10 IoT Core Insider Preview

May 3, 2015 .NET, .NET Framework, C#.NET, Cloud Computing, Embedded, Internet of Things, IoT, Microsoft, Tech-Trends, Virtualization, VisualStudio, VS2015, Windows, Windows 10, Windows 8.1 No comments

Microsoft has introduced a new developer program to enable the developers working on Internet of Things(IoT) based implementations.  As part of this program developers would be able to try out – Windows 10 IoT Core Insider Preview.

If you are an enthusiast working on IoT, you can signup @ https://www.windowsondevices.com/signup.aspx allows you to be early adopters of Windows on  Devices program.

Following Devices are currently supported by Windows 10 IoT Core Insider Preview.

<code>  &lt;p&gt;&lt;a href="http://go.microsoft.com/fwlink/p/?linkID=532948"&gt;Learn more about Windows IoT devices&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="github.io/content/GetStarted.htm" target="_blank"&gt;Microsoft Github repository&lt;/a&gt; for IoT, where you can find lots of samples and documentation. &lt;a title="http://ms-iot.github.io/content/GetStarted.htm" href="http://ms-iot.github.io/content/GetStarted.htm"&gt;http://ms-iot.&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;What is Internet of Things?&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.nitrix-reloaded.com/wp-content/uploads/2015/05/theinternetofthings.jpg"&gt;&lt;img title="Print" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="Print" src="http://www.nitrix-reloaded.com/wp-content/uploads/2015/05/theinternetofthings_thumb.jpg" width="386" height="235"/&gt;&lt;/a&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;Part of the &lt;a href="/wp-content/uploads/2015/05/Cloud-computing"&gt;Cloud computing&lt;/a&gt; glossary: 
</code>

The Internet of Things (IoT) is a scenario in which objects, animals or people are provided with unique identifiers and the ability to transfer data over a network without requiring human-to-human or human-to-computer interaction. IoT has evolved from the convergence of wireless technologies, micro-electromechanical systems (MEMS) and the Internet.

Below is a high level technology roadmap as per Wikipedia:

Kinect for Windows – Commercial Release

February 1, 2012 .NET, .NET Framework, All, DirectX, Hardware&Peripherals, Kinect SDK, Microsoft, Microsoft SDKs, VisualStudio, VS2010, Windows, Windows 7, Windows 8, XBOX, XBox, XBox Development, XBOX Development No comments

Microsoft has today released a commercial version of Kinect for Windows.

Kinect for Windows is a specific version of Kinect released only for interfacing Microsoft Kinect with your laptop or desktop with Windows 7. Kinect for Windows is available as a bundle package through Amazon and Microsoft Store for 249$.

Why Microsoft has released another Kinect edition?

Kinect for XBOX 360 are built specifically to interface with XBOX and it has been tweaked to work with XBOX programming API’s. What we realized when we used Kinect Controller for XBOX 360 on a PC, there is little performance difference in it. So Microsoft has made some tweaks to Microsoft Kinect for performance optimization in Windows, and this version of Kinect has been available as Kinect for Windows.

Not only that Microsoft has opt for a Hardware only Business model with Kinect for Windows. We have to get commercial hardware license for Kinect to use it in a commercial environment, but the software to use with it (Kinect SDK for Windows) is been released as FREE.

So you only will have to spend  for Buying hardware (Kinect for Windows), and Software license(Kinect SDK for Windows) is free.

 

The newly released Kinect for Windows hardware is optimized for use with computers and devices running Windows 7, Windows 8 developer preview (desktop applications only), and Windows Embedded-based devices.

Is it confusing for you, the terminologies? Don’t worry I will make it clear.

1. Kinect for Windows – a commercial version of Kinect sensor hardware for using with Windows

2. Kinect SDK for Windows – software for Kinect for Windows( which includes Kinect for Windows Drivers, API’s and Samples etc).

The Bundle and Availability

Kinect for Windows sensor is available as a bundle through amazon and Microsoft Store for Purchase.

The Bundle consists of

  • Kinect for Windows sensor
  • Manual
  • USB/power supply cable
  • and 1 year support and software updates

The Kinect for Windows sensor is available in the United States, for a suggested retail price of US $249. You will also be able to purchase Kinect for Window sensors in Australia, Canada, France, Germany, Italy, Ireland, Japan, Mexico, New Zealand, Spain, and the United Kingdom. More countries will be added soon.

Note: The sensor unit does not ship with any software, and will only operate with an application developed for Kinect for Windows.

 

The Kinect of Windows sensor is intended to be used with the Kinect for Windows SDK and applications developed using the Kinect for Windows SDK and associated runtime software.

The SDK includes drivers, APIs, sample code and more.

Features of Kinect for Windows hardware and SDK

1. Commercial Ready – ready to use for commercial uses

2. Enhanced Sensor  – The Kinect for Windows sensor expands the possibilities for innovation with features like Near Mode, which enables the depth camera to see objects as close as 40 centimeters in front of the sensor. In addition, up to 4 Kinect sensors can now be plugged into the same computer.

3. Software Improvements

One of the many improvements to the Kinect for Windows SDK is improved skeletal tracking, which lets developers control which user is being tracked by the sensor. In addition, the latest Microsoft Speech components, along with an improved acoustic model significantly improve speech recognition accuracy.

4. Advanced Speech and audio capabilities

Provide the latest Microsoft Speech components and an updated English Language Pack for improved language recognition accuracy. In addition, the appropriate runtime components are now automatically installed with the runtime installer exe.

5. API Improvements

Enhances consistency and ease of development. New developers should have a much easier time learning how to develop with Kinect for Windows, and all developers will be more productive.

6. Shortening USB cable and small dongle

Ensure reliability across a broad range of computers and improves coexistence with other USB peripherals.

7. Support and software updates

The Kinect for Windows hardware includes a one-year warranty, support, and access to software updates for both speech and human tracking.

 

Software & Hardware Requirements

Hardware : 

  • 32-bit (x86) or 64-bit (x64) processor
  • Dual-core 2.66 GHz or faster processor
  • Dedicated USB 2.0 bus
  • 2 GB RAM

Software :

  • Requires operating system is Windows 7 or Windows Embedded Standard 7

Small Update info on Kinect SDK for Windows BETA

The Kinect for Windows SDK beta can only be used with the Kinect for Xbox 360 hardware. Applications built with this hardware and software are for non-commercial development only. To accommodate existing non-commercial deployments using the SDK beta and the Kinect for Xbox 360 hardware, the beta license is being extended to June 16, 2016. Developers are encouraged to download the Kinect for Windows SDK, which was released February 1, 2012. This SDK provides additional features and updates.

 

This post is prepared based on the information available on http://www.KinectforWindows.org, if you would like to know more on Kinect for Windows please visit the Kinect for Windows website.

Where to Purchase Kinect for Windows hardware ?

Download the Kinect for Windows SDK

Resources on Kinect for Windows hardware and SDK

FAQ’s on Kinect for Windows – SDK

MUGH Developer Day–January 2012

January 25, 2012 .NET, .NET Framework, All, Dev Community, Hardware&Peripherals, HTML, HTML5, Kinect SDK, Microsoft, Microsoft SDKs, MUGH, VisualStudio, VS2010, XBOX No comments

Microsoft User Group Hyderabad invites you to the Developer Day on Sunday, January 29th 2012.

 
Register for this event for FREE @ http://mughdeveloperday01.eventbrite.com

Here is the agenda:

Timing

Topic

Speaker

09:30 to 10:00

Registration

10:00 to 11:00

Coding for Fun with Kinect

Abhijit Jana, Microsoft

11:00 to 12:00

I Love HTML5

Shravan Kumar, Thomson Reuters

12:00 to 12:10

Break

12:10 to 01:10

Secure web messaging using HTML5

Krishna Chaitanya, Infosys

Venue:
Microsoft Campus, Building 3 MPR Halls
Gachibowli, Hyderabad
Andhra Pradesh, India

jQuery Mobile: Touch-Optimized Web Framework for Smartphones & Tablets

August 22, 2010 All, HTML5, jQuery, JQuery Mobile, Mobile Frameworks, Mobile SDK, Smart Phones No comments

jQuery Mobile: Touch-Optimized Web Framework for Smartphones & Tablets

A unified user interface system across all popular mobile device platforms, built on the rock-solid jQuery and jQuery UI foundation. Its lightweight code is built with progressive enhancement, and has a flexible, easily themeable design…

A light weight, with power of jQuery, cross platform- framework for Mobile Devices.. Cool!!!! Wait a second.. It’s just announced not ready yet, but in near future, some time at the end of  2010.

You can stay tune and get updates from the jQuery Mobile Web Site .. If you have time you could check the current “Mobile Support Grid” and also read about  jQuery mobile project  strategy..

Hope this was informative..

Have Fun!!!!  Happy Learning !!!!