 Hello everyone, welcome to part 5 of Lorovan with STM32WL getting started series. I'm Shrikant, Field Applications Engineer at ST. In this video, we're going to learn how to integrate the sensor drivers from XQ MEMS1 package onto the Lorovan N-Node QBIDE project for STM32WL. The XNUCLEO-IKS-01A3 is a motion MEMS and environmental sensor evaluation board that lets you test the functionality of the motion MEMS accelerometer, gyroscope, magnetometer, and environmental humidity, temperature, and pressure sensors via the I2C communication bus. At the first glance, this is how the setup would look like. This will enable us to send real sensor values onto the Cayenne dashboard instead of sending dummy values as we've seen in the previous videos in the Getting Started series. This demo includes the integration of temperature, humidity, and pressure sensors, but other sensors drivers would be available for optional integration. Now before we dive into the steps, let's take a look at the hardware and software requirements. Here, on the hardware side, we will be needing a NUCLEO-WL55 microcontroller and a sensor board, IKS-01A3, to attach on top of it. On the software side, we will be needing CubeWL firmware for the microcontroller, STM32QBIDE, and STM32QBMEX for code generation. Log on to st.com and download STM32QBWL package. Now in the CubeWL firmware, navigate to the LoraVan N-Node project and open the .ioc file. You can hover over the Mandate Software Pack section and select XCubeMems1 v9.0 under the ST Microelectronics tab. After doing that, we will be selecting the components, and in our case, board extension IKS-01A3. Now we need to turn on the I2C2 interface from the Connectivity tab. We can program the GPIO pins for SCL and SDA to PA-12 and PA-11, and then enable the interface by clicking the I2C from the drop-down menu. In a similar fashion, we can enable Board Expansion IKS-01A3 and select I2C2 and found solutions. Now head over to Project Manager section and select STM32QBIDE as a toolchain, uncheck the Generate under Root option and under the Code Generator section, select Copy Only the Necessary Library Files. Click Generate Code when you are done specifying the settings. After we generate the code, we need to add a pre-processor define for a button priority. We can do that in the STM32WLXX underscore nuclear underscore conf.h file. The priority will be 15. Now head over to sys underscore conf.h file and enable the sensors and set the low power disabled to 1. Since we will be sending the data over to the Cayenne dashboard, we need to make sure we uncomment the Cayenne LPP pre-processor. Now we need to make sure we are sending the data coming from the MEMS expansion board and not the WL nuclear board. So we can make a minor change in the code in lora underscore app.c file and update the temperature and pressure variables to make sure they are taken from the sensor underscore data structure, which is a MEMS data structure. Now navigate to project properties and add x underscore nuclear underscore iks01a3 as one of the defined symbols. At this point, the project should build without any errors. Go ahead and flash it onto your microcontroller. As seen from the previous videos in this Getting Started series, here is the Cayenne dashboard where we can see the widgets to help us visualize the data. Here we can also choose to edit the widgets. For example, for temperature sensor, we can choose a gauge for better representation, choose the unit and choose a range for different colors. In order for us to add a new widget, we can hover over to the add new widget section. Here we can click on device slash widget and select a custom widget for different representations. Here, as you can see, we are using a heat gun to increase the temperature. The widgets represent the live data from the MEMS sensors onto the dashboard. Thanks for watching and please check out our other videos on STM32WL and LuraVan.