I am looking for a way to integrate the IOT with Blockchain. I need to record the device data (IOT device) into the blockchain. I am successfully able to send data from the device to the IOT Hub.How can I record this data in a block chain created using Azure Ethereum Consortium?
Blockchain and IoT are a marriage made in heaven. Blockchain can enable and augment a variety of application scenarios and usecases for the IoT. No longer are such possibilities too futuristic – as we will discuss in this post.
IoT Meets Blockchain...
Blockchain and Internet Of Things (IoT) are easily the two biggest buzzwords in technology at the moment. The IoT encompasses the world of sensors,moving objects like vehicles and really any device that has embedded electronics to communicate with the outside world – typically over an IP protocol.
Combine that with Blockchain – a distributed ledger architecture (DLT) pattern. Combining the two can facilitate the entire lifecycle of IoT devices and applications and prove to be the glue for business processes to act on these events. Consider the following scenario – a private blockchain for a driverless connected car that will enable secure and realtime interactions from the car starting with car startup, driver authentication, smart contracts to exchange insurance and maintenance service information and realtime location info to track safety.
You can learn more about IBM BlockChain and develop your own BlockChain # https://www.ibm.com/developerworks/cloud/library/cl-ibm-blockchain-101-quick-start-guide-for-developers-bluemix-trs/index.html
Related
I have a system with IoT Hub to ingests events from devices and Device Provisioning Service to provision devices. IoT Hub C# SDKs are used for the management of device tags and desired properties (IoT Hub device twins), and to invoke direct methods or schedule jobs.
Recently I've been experimenting with Azure IoT Central. While I don't plan to use it, I've found Digital Twins (that are being used on Azure IoT Central) to offer a very good way of managing IoT devices and I would like to emulate the same kind of functionality and capabilities on my IoT system.
The high-level architecture of IoT Central does not seem to indicate the services or logic used to manage Digital Twins.
As far as I understand, there are two ways you can start using Digital Twins:
Plug and Play Digital Twins
Azure Digital Twins service
Question - is Azure IoT Central purely based on Plug and Play Digital Twins and/or does it also use Azure Digital Twins service?
Yes, IOT Central is purely based on plug and play Digital Twins
plug and play Digital Twins enables solution builders to integrate IoT devices with their solutions without any manual configuration.
Azure Digital Twins can be used to design a digital twin architecture that represents actual IoT devices in a wider cloud solution, and which connects to IoT Hub device twins to send and receive live data.
Reference link: https://learn.microsoft.com/en-us/azure/iot-develop/overview-iot-plug-and-play
https://learn.microsoft.com/en-us/azure/digital-twins/overview#:~:text=What%20is%20Azure%20Digital%20Twins%3F%201%20Azure%20Digital,solution.%203%20Service%20limits.%20...%204%20Terminology.
IoT Central and Azure Digital Twin (ADT) are different, one is an aPaaS or application platform service while other is PaaS offering. IoT Central does not use ADT but the service can be integrated via the extensibility features of IoT Central, similar to PowerBI or custom web pages.
What is common to both is the use of open standard device modeling language called DTDL (https://github.com/Azure/opendigitaltwins-dtdl/blob/master/DTDL/v2/dtdlv2.md). It is based on Json-ld format and can be used in any IoT solution, not just Azure. This is what allows IoT Central application to understand device capabilities and automatically render related charts and control options (PnP)
ADT on other hand allows modeling and creating instances of large physical environments including but not limited to IoT devices and their relationships. The relationships between entities allows rich contextualization which is not possible with device centric view in IoT.
I am not understanding when Azure IoT Hub can be preferred over Azure IoT Central. From the readings done so far, IoT central seems better over all the aspects.
Anybody can explain me where are the situations where IoT hub is better than IoT Central?
Thanks
There is no definitive answer to that question, neither are "better", but most of the times one will fit your use case more than the other.
If you want a complete, managed way of connecting devices to the cloud and create dashboards (within the product's limits), a Software as a Service solution like Azure IoT Central can be a match. Think about the requirements of the project you're looking to do, and if it's all supported by IoT Central, go for it! If there are some features you can build by leveraging data export from IoT Central, it might still be a great fit.
If you want to build bi-directional communication and device registration for IoT devices into your own cloud platform, IoT Hub comes into play. Maybe you need better control of the data, or maybe the data insights you need aren't supported by IoT Central. There are a lot of cases where it might not be the best choice. IoT Hub gives you a lot more flexibility that you can use to create almost any IoT scenario.
Both are not directly comparable, there are specific advantages of IoT Central which you may need to consider.
IoT Hub is a PaaS service which can be used with other services to create an IoT solution while IoT Central is IoT Application platform which can be used as-is or extended via companion application. Even addressing basic functionality in IoT Central you will need over dozen other services and you own responsibility to design, manage and administer the orchestration yourself.
IoT Central internally uses multiple IoT Hubs (HA/DR) and bunch of services to bring the functionality that you see in the application. This includes App Service to host the UX, Rules Engine, Fast Storage, API layer, Data Export, RBAC, in-app Multi-tenancy , etc. etc. The key advantages you get -
Full featured IoT solution with high availability, security, scalability that is available in < 10 secs under 99.9% SLA
Simplification, easy to connect any device or simulate basic capabilities using the built-in plug-n-play support. Just select any device from the pnp catalog and try it out even before purchasing the devices.
Create user or app level dashboards with device specific views. Device specific view can be auto-generated with PnP devices.
Rule creation, alerting and integration with other applications via Logic Apps, Functions
Data Export functionality to Event Hub, Service Bus, Blob Storage or Web hooks
Rich Job's interface allowing updating device configurations or firmware
RBAC in combination with Organizations allow giving specific permissions to user.
The big advantage is all this is available with a very simpler per device per month pricing that starts as low as 8 cents per device per month ($2 a year) + additional messages https://azure.microsoft.com/en-us/pricing/details/iot-central/
In general unless you already have UX, Storage, Rules engine, etc. elements required for IoT Solution and need to add IoT Hub to ingest and manage IoT devices it will make more sense to start with IoT Central and build with it. It will save time, efforts and you can focus on specific differentiation than build the underlying plumbing and owning the management and sustenance. It is difficult to come to that price point given the high cost of cloud engineers required to support and maintain it.
It is recommended that all customers begin their IoT journey with our aPaaS offering Azure IoT Central. IoT Central is a ready-made environment for IoT solution development. As an aPaaS offering it is built to simplify and accelerate IoT solution assembly and operations, by preassembling PaaS services from the IoT Platform (including IoT Hub and the IoT Hub Device Provisioning Service) and across Azure. A customer that starts with IoT Central builds valuable expertise regardless of whether they go to production with IoT Central, or later build a custom solution to meet complex business needs using PaaS services. To learn more about onboarding to Azure IoT check out this documentation: https://aka.ms/azureiotarch and stay tuned for a session at Microsoft Ignite Nov3-4th Entitled Onboarding to Azure IoT
I need to know how can apply smart contract in a peer-to-peer network in which blockchain has not been utilized.
think two entities are interacting together in a peer-to-peer network and they have obligated pay some cost for some service that provide together ,but in this case they don't use blockchain and they should pay inside the network,can they use smart contract in this case? smart contract without blockchain? is any solution or any sample for that?
So far smart contracts have only been implemented in blockchain networks (and other distributed ledgers such as Hashgraph). Without such a platform you need some intermediary to fill the role of a smart contract.
For P2P networks, Bitcoin (and it's successors) were the first to create virtual currency in a decentralized fashion - so no, it is not possible to use digital currency without blockchain or a trusted third party.
I have a doubt.
Let us consider a scenario. A Large OEM and Few Large Vendors and Many Small Vendors are participating in a blockchain network. The small vendors may not be able to afford to set-up separate infrastructure / a dedicated Node to participate in the network. In that case,
Will we be able to enable the OEM or any Large Vendors to
provide access to the small vendors to participate in the blockchain
network, via their own node (i.e. infrastructure as a service), for a
small subscription fee?
Will we be able to create
private channels to those small vendors, providing the privacy from
the large vendor whose infrastructure is been used?
Will they be put as sub-organisations (logically in Membership Service Provider, not in real world acquisition or something like that) of the large vendor, like which we can commonly see in LDAP?
If a small vendor is using infrastructure provided by a larger vendor, then unless they have the necessary permissions to allow them to generate certificates and configure peers, and the infrastructure provider does not have access to these certificates, they are implicitly trusting that vendor with their data. Since this removes one of the advantages of a blockchain solution, maybe it would be preferable for the small vendor to use their own cloud-hosted infrastructure?
This could be done with only a single VM for a small low-throughput implementation. VM templates could even be provided for popular cloud providers to make it easy for the smaller vendors to configure their peer.
Imagine following scenario:
We build an IoT solution and use Azure Service Fabric to implement the complete backend.
Messages from devices flow through the IoT Hub to the Device Actor which processes those messages.
We also have a web API as a stateless service through which people can put some data (using an SPA) in a database.
Now the Device Actor needs this data to make some decisions.
In terms of Microservices architecture Device Actor could use that stateless service to retrieve the data (avoiding integration through the database). But if we consider that the Device Actor scales to many thousands devices that stateless service would be the bottleneck unless we scale it too (only because of devices).
So my question is: what is the best approach here?