You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@mynewt.apache.org by "Vipul Rahane (JIRA)" <ji...@apache.org> on 2018/02/14 02:23:00 UTC

[jira] [Updated] (MYNEWT-881) SensorAPI: LIS2DH12 set threshold callback cannot get called multiple times

     [ https://issues.apache.org/jira/browse/MYNEWT-881?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Vipul Rahane updated MYNEWT-881:
--------------------------------
    Description: 
There are two issues for calling the `lis2dh12_sensor_set_trigger_thresh()`:

1. gpio irq was not being released before doing a re-initialization
 2. srec was malloced and calling the function multiple times would have malloced additional memory without freeing it.

Solution:
 1. Release the gpio irq
 2. Remove the malloc and add a ptr for the sensor in each type trait so that a sensor read could be performed in the irq handler.

Also, `sensor_unset_thresh()` API was added to unset thresholds triggers/interrupts.

  was:
There are two issues for calling the lis2dh12_sensor_set_trigger_thresh():

1. gpio irq was not being released before doing a re-initialization
2. srec was malloced and calling the function multiple times would have malloced additional memory without freeing it. 

Solution:
1. Release the gpio irq
2. Remove the malloc and add a ptr for the sensor in each type trait so that a sensor read could be performed in the irq handler.


> SensorAPI: LIS2DH12 set threshold callback cannot get called multiple times
> ---------------------------------------------------------------------------
>
>                 Key: MYNEWT-881
>                 URL: https://issues.apache.org/jira/browse/MYNEWT-881
>             Project: Mynewt
>          Issue Type: Bug
>      Security Level: Public(Viewable by anyone) 
>          Components: Drivers, Sensor Framework
>    Affects Versions: v1_3_0_rel
>         Environment: ruuvitag-revb2
>            Reporter: Vipul Rahane
>            Assignee: Vipul Rahane
>            Priority: Major
>              Labels: core
>             Fix For: v1_4_0_rel
>
>
> There are two issues for calling the `lis2dh12_sensor_set_trigger_thresh()`:
> 1. gpio irq was not being released before doing a re-initialization
>  2. srec was malloced and calling the function multiple times would have malloced additional memory without freeing it.
> Solution:
>  1. Release the gpio irq
>  2. Remove the malloc and add a ptr for the sensor in each type trait so that a sensor read could be performed in the irq handler.
> Also, `sensor_unset_thresh()` API was added to unset thresholds triggers/interrupts.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)