AdminChipalo (Product Owner, Microsoft Azure)

My feedback

  1. 6 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    under review  ·  3 comments  ·  Azure IoT Edge » Developing custom modules  ·  Flag idea as inappropriate…  ·  Admin →
    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    Thanks for the conversation Andreas. I like the scenario you mention of integrating with an existing enterprise broker that has an existing topic structure. It almost seems like supporting the hierarchical topic structure for BrokeredEndpoints which are generic MQTT brokers, as opposed to IoT Edge modules, would make this scenario work.

    Going between IoT Edge's constrained topic structures and generic pub/sub brokers with wide open topic structures is something we're starting to see pop up in multiple places. We're starting to investigate our options here and I think your suggestion is something we should take into account when considering our options.

    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    Hi Andreas, I'm just catching up on work after getting back from vacation. I hope you enjoyed the holidays.

    Let’s try a concrete example to make sure we’re both on the same page. We have moduleFoo which sends messages to one output. A rule on Edge Hub then routes messages from moduleFoo to moduleBar; however it sends them to different input paths on moduleBar depending on some property set on the message. moduleBar then registers for all messages and takes different action based on the input path to which a message is sent.

    Routing rules would look something like:
    FROM /messages/modules/moduleFoo/* WHERE NOT IS_DEFINED(<message property>) INTO BrokeredEndpoint("/modules/moduleBar/inputs/input1")
    FROM /messages/modules/moduleFoo/* WHERE IS_DEFINED(<message property>) INTO BrokeredEndpoint("/modules/moduleBar/inputs/input2")

    moduleBar would register for all messages using SetMessageHandlerAsync. The callback registered would inspect InputName to determine if the message came in on input1 or input2 and then take action accordingly.

    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    Hi Andreas, I believe this scenario should be unblocked today; however it will require a little custom code. You can register a default message handler using SetMessageHandlerAsync. This will receive all messages, regardless of which input a message is received on. From there you can inspect the full input hierarchy which is stored in the system property InputName. With that info the generic handler can delegate to more specific handlers.

  2. 1 vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Azure IoT  ·  Flag idea as inappropriate…  ·  Admin →
    AdminChipalo (Product Owner, Microsoft Azure) shared this idea  · 
  3. 23 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    under review  ·  3 comments  ·  Azure IoT Edge » Connectivity issues  ·  Flag idea as inappropriate…  ·  Admin →
    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    Hi Anonymous, this is still a feature gap for IoT Edge.

    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    The scenario you describe is correct.

    To be explicit, the only thing that is not supported right now is C2D messages to a module in an Edge device. C2D methods to a module in an Edge device are supported. Also, both C2D messages and C2D methods to devices behind an Edge device acting as a transparent gateway are supported.

  4. 80 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    11 comments  ·  Azure IoT Edge » Developing custom modules  ·  Flag idea as inappropriate…  ·  Admin →
    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    This is still a very high priority for our team and we're trying to align all of our dependencies to deliver this. Progress has been far slower than desired as we've improved product stability and deliver fundamental features like device update, observability (the ability to collect logs and metrics from an IoT Edge device), and improved certificate management.

    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    A temporary work around is sending the connection strings in the twin of the module. The longer term approach requires integration with Device Provisioning Service. That is work in progress.

  5. 25 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    6 comments  ·  Azure IoT Edge » Connectivity issues  ·  Flag idea as inappropriate…  ·  Admin →
    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    We are making slow progress on this. The first step was fixing a bug dealing with how TLS certs are handled. There is additional feature work necessary to make this scenario work end to end.

  6. 37 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    planned  ·  7 comments  ·  Azure IoT Edge » Developing custom modules  ·  Flag idea as inappropriate…  ·  Admin →
    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 
    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    The Blob Storage team has released a module for IoT Edge devices. This is a good option for some solutions until more native support for upload to Blob Storage is built into the product.

    https://blogs.technet.microsoft.com/filecab/2018/09/24/announcing-public-preview-of-azure-blob-storage-on-iot-edge/

    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    Here's a temporary workaround that I know folks have used.

    Write a custom module with the Blob SDK for communication with Azure Blob Storage. Use the module twin to send the credentials for the blob down to the module. Use those credentials from the twin in the module to establish a connection to your storage and upload the desired data.

    The problem with this solution is that the network must expose multiple ports to your Edge device (port for communication with IoT Hub and port for communication with Blob Storage). This is not case for many locked down networks. Our long term solution will allow communication with Blob Storage to be conducted over the port used for communication with IoT Hub.

    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    Unfortunately we do not have a good timeline for you on this feature.

  7. 37 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    5 comments  ·  Azure IoT Edge » Installing IoT Edge runtime  ·  Flag idea as inappropriate…  ·  Admin →
    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    We are discussing with Canonical how IoT Edge and Ubuntu Core can work well together. There is still no ETA for resolution on this.

  8. 19 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    5 comments  ·  Azure IoT Edge » Deploying modules  ·  Flag idea as inappropriate…  ·  Admin →
    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    Hi Leon, you have a very valid scenario we refer to as identity translation (you can read more at the link below). In this setup you would have 4 modules, one for each sensor type. Each module would then span a new process for each instance of the particular type of device that connects. That new process would use a device identity to connect. This way each downstream device will have its own twin that can be used for configuration.

    That said, we also have not provided a code sample for identity translation yet. This is an item that's high on our list. You can track our progress at the User Voice request for it - https://feedback.azure.com/forums/907045-azure-iot-edge/suggestions/32497981-code-sample-for-identity-translation-pattern

    Edge device as a gateway - https://docs.microsoft.com/en-us/azure/iot-edge/iot-edge-as-gateway

  9. 8 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    need-feedback  ·  5 comments  ·  Azure IoT Edge » Connectivity issues  ·  Flag idea as inappropriate…  ·  Admin →
    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    Are you trying to achieve high availability/disaster recovery? The feature here would be making sure groups of edge devices have the same view of messages queued for the cloud?

    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    Just to make sure I understand the scenario...
    You have multiple edge devices that need to share data. This is usually done by sync it to the cloud and letting each edge device retrieve the desired data from that cloud store. You are asking for a feature that lets these edge devices share data locally only while the devices do not have a connection to the cloud.

  10. 15 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    planned  ·  8 comments  ·  Azure IoT Edge » Developing custom modules  ·  Flag idea as inappropriate…  ·  Admin →
    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    We do not have an ETA for this item.

    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    Hi Remco, we hoped to have the sample out by now; however we hit some issues around hardware access from containers. These are features that I'm sure others are hitting and need to be addressed first.

    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    1. Yes, we plan on publishing a sample for the SensorTag device which speaks BLE.

    2. Correct, use Container Create Options to elevate privilege of a container.

  11. 12 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    under review  ·  2 comments  ·  Azure IoT Edge » Deploying modules  ·  Flag idea as inappropriate…  ·  Admin →
    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    A BACnet module is something we're considering; however it is not a goal for Microsoft to provide a variety of protocol adapters. There are numerous protocols, many of which are proprietary. Folks have many years of expertise dealing in these and Microsoft is not looking to replace that.

    We've designed Azure IoT Edge to be extensible so that the community and partners can provide their expertise in the form of modules.

  12. 24 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    planned  ·  2 comments  ·  Azure IoT Edge » Deploying modules  ·  Flag idea as inappropriate…  ·  Admin →
    An error occurred while saving the comment
    AdminChipalo (Product Owner, Microsoft Azure) commented  · 

    This is definitely a feature which is on our radar. Additional dev experience improvements we're considering are tools to help you debug modules and unit test modules.

Feedback and Knowledge Base