IoT Show: An Arduino library to connect devices to Azure IoT

Поделиться
HTML-код
  • Опубликовано: 2 дек 2024

Комментарии •

  • @juanjosepardopalomino5398
    @juanjosepardopalomino5398 Год назад +1

    Somebody can help me? I can't find the Azure IoT Hub library

  • @juancarlosrobledo355
    @juancarlosrobledo355 Год назад

    Gracias por el Video y la Entrevista. Muy educativa.

  • @postpiet1252
    @postpiet1252 Год назад

    It works great with Wifi. But I have a lot of trouble to connect my ESP32 with IOT central through an Sim7600 (LTE Network) AT commands. Are there resources that can help me? The ones I find don't work.

  • @perjarles
    @perjarles Год назад

    You mention that Arduino Uno will not be able to connect. Since this video is quite old, there is a new version of Arduino Uno available.
    Arduino Uno R4 Wifi
    Will this board be able to connect?

  • @ranveersaini9806
    @ranveersaini9806 2 года назад

    Hi sir can you tell me esp8266 used board and Azure IoT central Hub light on off Switches just like blink app

  • @justasg.4457
    @justasg.4457 2 года назад +1

    Can this be adapted to non esp32 boards. For example Nano 33 IoT?

    • @ewertonscaboro
      @ewertonscaboro 2 года назад +2

      It can be adapted to any board with a wifi stack.

  • @ekanbadverma6876
    @ekanbadverma6876 2 года назад

    how leds controlled ?? I could not find pinMode and digitalWrite commands to on/off led in this code.. please explain..

    • @olivierbloch1256
      @olivierbloch1256 2 года назад

      AFAIK the samples are pretty basic and only send fake telemetry up to the cloud. If you want to start playing with LEDs, you will have to add some code to interact with the GPIOs of the board. Depending on the chip and board you are using you will need to figure out which GPIO Pin is controlling the LEDs you want to control, then use an Arduino library to control them from your code

  • @KP-fy8fm
    @KP-fy8fm Год назад

    I'm quite new to this - would you be able to suggest the most minimal set of devices do I need to get started?

    • @olivierbloch1256
      @olivierbloch1256 Год назад

      Hi. It's a hard question to answer as it really depends on where you are at in terms of programming, experience and what you want to build. I always suggest to think about a concrete (yet simple) project to get started rather than blinky projects. There are great IoT bundles out there for many fun projects such as the ones from Pimoroni that can be a good starting point. Then you can scavenge Hackster.io for projects ideas as well

  • @FeedtheSearch
    @FeedtheSearch 2 года назад +1

    Is there a model for G3 instead of WiFi

    • @wduraes
      @wduraes 2 года назад +3

      Hi there, we don't have samples showing cellular connectivity. Soon we should have samples showing how to leverage cellular modem with the middleware for FreeRTOS, but not specifically for the Arduino Library.

  • @mosesscott7092
    @mosesscott7092 2 года назад

    Im using windows 10 and arduino IDE . Whenever I try to upload the sketch to the board i get the following error: fatal error: bits/c++config.h: No such file or directory #include
    Anyone have any advice?
    I am using the Azure IOT Central ESPRESSIF ESP32 Board.
    I have installed the dependencies and libraries.
    I have input my device and wifi information.
    Thanks for your help.

    • @wduraes
      @wduraes 2 года назад

      Seems this was already solved via GitHub issues. It was just a matter of selecting the correct board on Arduino IDE and problem solved.

  • @Kimideluxxe
    @Kimideluxxe 2 года назад

    Hey there, i just completed the Azure IoT Central ESPRESSIF ESP32 - Guide.
    So far so good, the simulated telemetry data is shown in IoT Central, since im not using the ESP32 Azure to IoT Kit, which has sensors connected to it (i am using the DOIT ESP32 DEVKIT V1). If i want to connect the Adafruit DHT11 temperature and humidity sensor to the ESP32 board and display actual temperature and humidity data in the IoT Central, where in the provided code do i have to paste the part of code for that?
    Thanks in advance!

    • @wduraes
      @wduraes 2 года назад +2

      Search for temperature in the Azure_IoT_PnP_Template.cpp file. You should see a function call to the ESP dev kit to get the temperature and assign that value to a float variable. Just replace that by a call to the DHT library.

    • @Kimideluxxe
      @Kimideluxxe 2 года назад

      @@wduraes Thank you very much! You just made my day!

  • @ZuhaBuba
    @ZuhaBuba Год назад

    Nice to see this video, its very helpfull

  • @snympi
    @snympi 2 года назад +1

    Hi Guys
    Great video and good to see support for Arduino to connect to Azure IoT. I use IoT Hub as my preferred platform and the included example is a good start. My previous Arduino library for IoT Hub was also developed by a Microsoft team in China, and included Device Twins and Direct Methods in the examples. This was crucial during my earlier work, and specifically Direct Methods were used to enable OTA updates.
    Can you PLEASE extend the ESP32 IoT Hub example to include Direct Methods (and secondly Device Twins) to show their use using the new SDK/Arduino lib?

    • @olivierbloch1256
      @olivierbloch1256 2 года назад

      Have you checked if an issue was filed for this? Note that issues for the Arduino library must be filed in the azure-sdk-for-c repo as per the contribution guide in the Arduino lib repo. I have not found one while rapidly scanning, so you should definitively feel free to go file an issue there as the team is tracking requests there and contributors can pick from the issues list if they want to as well

    • @snympi
      @snympi 2 года назад

      @@olivierbloch1256 can't remember if I had a look, but managed to cobble the functionality together by combining a couple of different examples that most do what I wanted. This is not an issue per se, but a suggested enhancement of the sdk.

    • @olivierbloch1256
      @olivierbloch1256 2 года назад +1

      @@snympi the feature suggestions are tracked using issues on the repo, so definitively feel free to file this as an issue, and it will be treated as a feature request

    • @snympi
      @snympi 2 года назад

      @@olivierbloch1256 will do that thanks. Appreciate the follow-up

  • @marcelovillalba1549
    @marcelovillalba1549 2 года назад

    can this library work with mkr1400 gsm board?

    • @wduraes
      @wduraes 2 года назад

      same response I gave you on the other video: The existing samples won't work out of the box with GSM-based board, as they normally offload TLS and Socket layers. That said, nothing prevents you from leveraging the sample code if you bring the external modem, it is just a little more work to get it running.

  • @sushildhote8680
    @sushildhote8680 2 года назад

    Can you please help me, how to embedded my sensor data in Azure SDK for C IotHub Arduino Sample example for esp32 file name (Azure_IoT_Hub_ESP32.ino) in telemetry_payload[128] variable , i tried multiple thing but not sure how to insert my data in that variable to send to IoThub

    • @ewertonscaboro
      @ewertonscaboro 2 года назад +2

      I Sushil, the telemetry should be in a json format (which would follow the data format of most services within Azure).
      The telemetry in that sample gets generated within `static void getTelemetryPayload(az_span payload, az_span* out_payload)`.
      az_span is just a buffer with a pointer and a size.
      If you generate your telemetry payload using String, for example, you can then wrap it with a az_span like this:
      ```
      // Make sure this variable does not loose scope (meaning, make it global)
      String myTelemetry = "{}";
      static void getTelemetryPayload(az_span payload, az_span* out_payload)
      {
      // You can generate the json using any lib you want. Here it's hardcoded for simplicity.
      myTelemetry = "{ \"roomTemperature\": 70 }";
      *out_payload = az_span_create((uint8_t*)myTelemetry.c_str(), myTelemetry.length());
      }
      ```

    • @sushildhote8680
      @sushildhote8680 2 года назад +1

      @@ewertonscaboro Thank you so much ., this look more understandable ....will definitely try this and let u know

    • @moosasheikh2909
      @moosasheikh2909 2 года назад

      @@sushildhote8680 did it work?

    • @sushildhote8680
      @sushildhote8680 2 года назад +1

      @@moosasheikh2909 yes it is work 👍👍😊

    • @moosasheikh2909
      @moosasheikh2909 2 года назад

      ​@@sushildhote8680 it works for me too. But can you tell me how it works for real time data. What kind of json format you have used to read the analog data.

  • @lalomx2000
    @lalomx2000 2 года назад

    Hi,is it possible to enable azure blob storage?

    • @olivierbloch1256
      @olivierbloch1256 2 года назад

      If you are asking if it's possible to send the device's data to Azure Blob Storage in the Cloud, then the recommended way would be to export data from IoT Hub (or Central) to your Blob Storage account. So Device -> IoT Hub -> Blob Storage
      If you are asking if it's possible to add a Blob Storage client on the device, there is a C++ library that exists but I am not sure it's been tested on Arduino devices and don't know of any sample or project showing how to do this. I wouldn't recommend this anyways as it is always better to have a single socket to and from the device and the connection to Azure IoT is designed for device telemetry ingestion and control messages.

    • @jameszahary
      @jameszahary 2 года назад

      @@olivierbloch1256 There is an example at github esp32-ai-cam of upload to blob that sends jpegs to azure blob storage. It seemed to be part of the library in the past, but was removed, and as of Nov 2021, it seemed to be added back, but did not make it into azure-sdk-for-c-arduino which was released after that esp32-ai-cam project. Plenty of info at that esp32-ai-cam github.

    • @olivierbloch1256
      @olivierbloch1256 2 года назад

      @@jameszahary There seem to be plenty of interesting information in that repo by jameszah indeed. The main reason why such samples have not been brought over to the new Arduino library is because the team wanted it to be more generic and allow the community to extend it with samples such as the ones in the repo you point to. Nothing should prevent you from using that code from that repo along with the new Arduino library

    • @jameszahary
      @jameszahary 2 года назад

      @@olivierbloch1256 yes, i was reading more about it, and upload-to-blob seems to be in the "cpp" version, but not the "c", and there is a PR in the "c" version to add it. I assume changes to the "c" version will be carried over to the "c-arduino" version.

    • @olivierbloch1256
      @olivierbloch1256 2 года назад

      @@jameszahary Definitively something to track. Ping me here is you don't see things moving 🙂

  • @YannickGenesi
    @YannickGenesi 2 года назад

    Hey guys,
    thank you for your great job! Was a pleasure to watch this video and start with Azure IoT and my ESP8266! I'm having a big issue right now. I can't connect to the Azure Broker. I receive the message from my serial monitor "MQTT connecting...failed, status code =-2. Try again in 5 seconds"... I googled so much but couldn't find some helpful tips... Do you guys have an idea and could help me? Thank you very much!

    • @wduraes
      @wduraes 2 года назад +1

      Hi Yannick, this error means that you're not able to connect to IoT Hub. Please make sure you're using the correct credentials (lines 9, 10 and 11 on the iot_configs.h file). One good way to check is to create a new device on your IoT Hub and use the credentials of this new device to test.

    • @YannickGenesi
      @YannickGenesi 2 года назад

      @@wduraes thank you for your response. I already checked everything twice but I can’t connect anyway. Are there more things that I could try to get a connection to the IoT hub? Thanks in advance

    • @akshaygondkar4985
      @akshaygondkar4985 2 года назад

      hope your problem is solve if yes please provide the solution. I am facing same but error code= 5

  • @jeand1286
    @jeand1286 2 года назад

    It's as usual, it doesn't work. When choosing to add a device and asking for symmetric keys, there is no place to enter the primary key and the secondary key.

    • @obloch
      @obloch 2 года назад +1

      Hi Jean. If you are asking about device keys, then I assume you are trying to connect your device to Azure IoT Hub (not IoT Central), right? If that's the case you should find the fields to complete in the iot_configs.h file of the project. You will need to enter the wifi info, as well as the IoT Hub name, Device ID and only one of the 2 symmetric keys.
      If you are looking at the IoT Central sample, then the authentication is done through the DPS service and you will need to fill in iot_configs.h with DPS_ID_Scope, Device ID and the symetric key. This is all well descrived in the readme docs of the project.
      If this didn't help you, please share some more details so we can help you get sorted out

  • @everlyneotieno281
    @everlyneotieno281 2 года назад

    Could you kindly take me through the same procedure but using ATMega 1284 microntroller board please. Thank you

    • @ewertonscaboro
      @ewertonscaboro 2 года назад

      Hi Everlyne, is this the board you are referring to? ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42718-ATmega1284_Datasheet.pdf
      If so, it does not look like this board supports wifi (or ip stack), so it is not suitable for connecting it to Azure IoT.
      At this time we do not have recommendations other than the ESP32 samples provided with the Azure SDK for C Arduino library.
      Thanks.

  • @claudiomarques8514
    @claudiomarques8514 2 года назад +1

    Hi, first of all great job, congrats. I need help. I am using Azure_IoT_Hub_ESP32. My task is publishing variables and I am not the owner of account Azure IoT Hub. But who has it gave me a feedback that he is receiving data. But some errors I could not solve: "MQTT_EVENT_ERROR" and "MQTT_EVENT_DISCONNECTED" appear sometime after 4 or 5 messages "Sending telemetry ..." and "Message published sucessfully". Can you help me? A second issue is it, that I am sending for the beginning only temperature and so I did in function "static void getTelemetryPayload(az_span payload, az_span* out_pauload)" ->
    //*out_payload = az_span_slice(original_payload, 0, az_span_size(original_payload) - az_span_size(payload) - 1);
    txt = sprintf(json, "{\"%s\":{\"value\":%02.02f}", VARIABLE_LABEL_TEMPERATURE, temperature);
    *out_payload = az_span_create((uint8_t*)txt.c_str(), txt.length());
    Everythingelse I kept as original. String txt, const char *VARIABLE_LABEL_TEMPERATURE = "temperature", float temperature are global variables. Is it right this way? Last question: how should I handle if I need to publish temperature and humidity what I very sonn have to try!!! Thanks a lot in advance and again really fantastic job you have done.

    • @wduraes
      @wduraes 2 года назад +1

      Hi Claudio, can you please open an issue in our repo? (aka.ms/embeddedcsdk) It is super hard to do troubleshooting over comments on RUclips 🙂

    • @claudiomarques8514
      @claudiomarques8514 2 года назад +2

      @@wduraes Hi Wellington, sorry and I will open an issue in your repo. Thanks for giving me this way and I hope we may discuss deeper to sove my question. Thanks in advance.