10 posts / 0 new
Last post
gme_johannes
Offline
Last seen: 2 months 1 week ago
Joined: 2017-12-22 10:09
IoT KIT - INT1,INT2,DRDY not used?

Quick question regarding the IoT Kit, with SDK project DA1458x_IOT v5.160.1.19.

I notice that in DA14583_IoT_Sensor_Board_Schematic.pdf INT1, INT2, DRDY are connected from the Bosch sensors to the DA14583.
However in the Keil project, I can see they are defined (user_periph_setup.c, 103..107) but not used anywhere else in the project - provided I have used the search function correctly.
I assume now that if I want to port this implementation to similar hardware, the connections INT1, INT2, DRDY are not needed.

Is that correct?

Best regards,
Johannes

Device: 
PM_Dialog
Offline
Last seen: 9 hours 36 min ago
Staff
Joined: 2018-02-08 11:03
Hi gme_johannes,

Hi gme_johannes,

I am checking with the H/W group if it’s a correct implementation and I will let you know as soon as possible.

Thanks, PM_Dialog

PM_Dialog
Offline
Last seen: 9 hours 36 min ago
Staff
Joined: 2018-02-08 11:03
Hi gme_johannes,

Hi gme_johannes,

It’s safe to operate both devices (BMI160 and BMM150) without having the interrupts (INT1, INT2) or data ready (DRDY)connected. This is the polling mode.

Thanks, PM_Dialog

gme_johannes
Offline
Last seen: 2 months 1 week ago
Joined: 2017-12-22 10:09
Thank you for your answer!

Thank you for your answer!
I anticipate that with DRDY and the interrupts, some energy can be saved in the readout.
I will keep it in mind for the future.

gme_johannes
Offline
Last seen: 2 months 1 week ago
Joined: 2017-12-22 10:09
After inspecting code from v5

After inspecting code from v5.160.1.19 I see a lot of functions for setting and reacting to the interrupts, furthermore #DEFINE USE_MOTION_WAKEUP.
I must have made a mistake when I stated that they don't seem to be used in the code.

Also it is clear from the IOT sensor that the motion wakeup is indeed active and functioning (sensor will start blinking after it has rested and the LED went off).

Could you please give me some short instruction how to disable interrupt routines? Is it enough the UNDEF USE_MOTION_WAKEUP?

Best regards,
Johannes

PM_Dialog
Offline
Last seen: 9 hours 36 min ago
Staff
Joined: 2018-02-08 11:03
Hi gme_johannes,

Hi gme_johannes,

 

Could you please let me know in which project are you working on? In the SFL Project the interrupt service routine receives a BMI160 FIFO watermark’ (WM) interrupt, which signals that the FIFO level has reached a certain number of bytes. In the RAW Project the interrupt service routine receives a BMI160 DATA READY interrupt, which signals that a set of data is ready. The CPU then reads the data from the sensors and sends it to user space using a DWS_SENSOR_DATA_RDY_IND message. For more information, you can check the 7.3 General Operation paragraph of the DA14583 IoT SensorDevelopment Kit (UM-B-063) document. So, in case you want use the sensors, the interrupt routines are mandatory. If you undefined the USE_MOTION_WAKEUP, you will disable the motion wakeup procedure.  Could you please explain what you want to do by disabling interrupt routines?

 

Thanks, PM_Dialog

gme_johannes
Offline
Last seen: 2 months 1 week ago
Joined: 2017-12-22 10:09
Hi,

Hi,
I am working on a project which features Murata ZY (DA14580) and Bosch BMI160/BMM150.
For the firmware development, I will base it on the IoT SDK v5.160.1.19 (probably the SFL version, seems it provides what we need).

In my initial question I asked whether DRDY/INT pins are required for the operation with this project (as it is).
I was under the impression that they are not required (since I didn't carefully inspect the code), which you have confirmed.
However your interpretation of my question must have been whether in principal it is possible with those Bosch sensors, whereas I was asking if it is possible with the IoT firmware.

Thanks for pointing me to UM-B-063 which I didn't read to the full extend previously.
I understand now that the IoT SDK v5.160.1.19 project does not feature a polling mode but relies on the interrupts from the Bosch sensors.
Hence I will have to make quite some modifications in the code to have a polling mode, or work on a new prototype.
It is very unfortunate that the Murata ZY offers such a limited amount of GPIOs which led me to dismiss those pins.

Best regards
Johannes

PM_Dialog
Offline
Last seen: 9 hours 36 min ago
Staff
Joined: 2018-02-08 11:03
Hi gme_johannes,

Hi gme_johannes,

 

I am sorry for the confusion, but I misunderstood you question. I thought that you want to port the IoT implementation to a custom hardware, that’s why I mentioned that you can use the sensors in polling mode. Regarding he IoT firmware, the polling mode is not supported.

 

Thanks, PM_Dialog

gme_johannes
Offline
Last seen: 2 months 1 week ago
Joined: 2017-12-22 10:09
Thanks for clarification.

Thanks for clarification.
I have now found the following:

(1) Only INT1 output of BMI160 is used in RAW as well as SFL mode (both the watermark interrupt as well as the data ready interrupt are served through this pin).
Reason:
-In the code I have found "WKUPCT_PIN_SELECT" only for the pin connected to INT1 of BMI160
-It is my understanding from UM-B-063 7.3

(2) for BMM150, neither INT nor DRDY are used in the project.
Reason:
-USE_MAG_DRDY_INTR is not defined in the project
-WKUPCT_PIN_SELECT is not used
-UM-B-063 7.3 states that the magnetometer works in "forced" mode

(3) On startup of BMI160, INT1 is disabled as output (I assume it will be High-Z) according to BMI160 datasheet section 2.11.20
Hence I could share the GPIO with SDWIO/SWCLK, if I make sure to set SYS_CTRL_REG[DEBUGGER_ENABLE] accordingly before activating the interrupt output with BMI160_RETURN_FUNCTION_TYPE bmi160_set_intr_1_output_enable(u8 v_output_enable_u8).

Could you please confirm?

Best regards
Johannes

PM_Dialog
Offline
Last seen: 9 hours 36 min ago
Staff
Joined: 2018-02-08 11:03
 

 

Hi gme_johannes,

 

Yes, I confirm the (1) and (2). According to UM-B-063 document your conclusion is correct. Regarding the (3), if am able to understand correctly, you want to replace the INT1 (P0_6) to one of the SWDIO/SWCLK pins of the 583? In case you want to do something like that, you should activate and deactivate the INT1 under conditions, because you will have two signal in one line, so you should manage it. Otherwise, you will have an interference between these signal and the sensor will toggle unexpectedly.

 

Thanks PM_dialog