Microsoft Touts New VS Code Extension for IoT Development

Microsoft this week published hands-on guidance for using its new Azure IoT Edge service, just launched as an extension for the Visual Studio Code editor in a public preview program.

The preview offering, first announced at the Connect(); conference last month, can be used in conjunction with another tool, the updated Azure IoT Toolkit extension, to bolster Internet of Things development.

Azure IoT Edge is a fully managed service that lets developers move "cloud intelligence" -- such as analytics, data processing and custom business logic -- to IoT devices instead of their backing cloud-based infrastructure.

To do that, it works with other services such as Azure Machine Learning, Azure Stream Analytics and Azure Functions. It lets developers incorporate artificial intelligence (AI) and other cutting-edge technologies into their IoT device development.

Azure IoT Edge is made up of three components, listed by Microsoft as:

  • IoT Edge modules are containers -- running Azure services, third-party services or custom code.-- that are deployed to IoT Edge devices for local execution on those devices.
  • The IoT Edge runtime runs on each IoT Edge device, managing the modules deployed to each device.
  • A cloud-based interface that Microsoft said enables developers to remotely monitor and manage IoT Edge devices.
Azure IoT Edge
[Click on image for larger view.] Azure IoT Edge (source: Microsoft).

Features of the IoT Edge preview, Microsoft says on the service's site, include the ability to:

  • Run artificial intelligence at the edge
  • Perform edge analytics
  • Deploy IoT solutions from cloud to edge
  • Manage devices centrally from the cloud
  • Operate with offline and intermittent connectivity
  • Enable real-time decisions
  • Connect new and legacy devices
  • Reduce bandwidth costs

Using the IoT Edge preview requires using the Docker container service and the Azure IoT Edge Runtime Control, while the installation of the Docker Support for Visual Studio Code is recommended in order to manage IoT Edge Docker images, containers and registries.

The Azure IoT Toolkit, meanwhile, helps to interact with Azure IoT Hub, IoT Device Management, IoT Edge Management and IoT Hub Code Snippets. It features a Device Explorer for device management and working with the Azure IoT Hub and Azure IoT Edge, along with code snippets for sending messages to and from the cloud, to and from devices, and other functionality.

In a blog post this week, Microsoft's Xinyi Zhang, senior engineering manager, IoT Tools and Services, walked through the process of using the tool in development, showing how to create a simulated Edge device, develop and deploy a C# IoT Edge module, and debug that C# module.

"Now you can bring the intelligence of the cloud right to the IoT Edge as well as easily create and manage business logic for your devices," he said. "The new Azure IoT Edge extension for Visual Studio Code along with the updated Azure IoT Toolkit extension will make your IoT Edge developments a real pleasure."

The Azure IoT Edge extension supports C# modules and C# Functions, with support for more languages planned. Last month, a developer asked if JavaScript could be used to build modules, and Microsoft replied that such functionality is on the road map. "We will soon open source our source code and you can start [to] track the issues there," Microsoft added in its reply to the JavaScript question on Nov. 28. The Azure IoT Edge source code for version 1 (the new public preview is referred to as the second version) is housed on GitHub now.

The Azure IoT Edge extension, listed in the Visual Studio Code Marketplace, has been installed more than 5,600 times as of this writing, earning a perfect 5.0 rating from five reviewers.

The Azure IoT Toolkit extension has been installed more than 49,000 times, earning a perfect 5.0 score from four reviewers.

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus


  • Xamarin.Forms 5 Preview Ships Ahead of .NET 6 Transition to MAUI

    Microsoft shipped a pre-release version of Xamarin.Forms 5 ahead of a planned transition to MAUI, which will take over beginning with the release of .NET 6 in November 2021.

  • ML.NET Improves Object Detection

    Microsoft improved the object detection capabilities of its ML.NET machine learning framework for .NET developers, adding the ability to train custom models with Model Builder in Visual Studio.

  • More Improvements for VS Code's New Python Language Server

    Microsoft announced more improvements for the new Python language server for Visual Studio Code, Pylance, specializing in rich type information.

  • Death of the Dev Machine?

    Here's a takeaway from this week's Ignite 2020 event: An advanced Azure cloud portends the death of the traditional, high-powered dev machine packed with computing, memory and storage components.

  • COVID-19 Is Ignite 2020's Elephant in the Room: 'Frankly, It Sucks'

    As in all things of our new reality, there was no escaping the drastic changes in routine caused by the COVID-19 pandemic during Microsoft's big Ignite 2020 developer/IT pro conference, this week shifted to an online-only event after drawing tens of thousands of in-person attendees in years past.

Upcoming Events