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

Vipul Rahane updated MYNEWT-744:
--------------------------------
    Component/s: Sensor Framework
                 Drivers

> SensorAPI: improvements
> -----------------------
>
>                 Key: MYNEWT-744
>                 URL: https://issues.apache.org/jira/browse/MYNEWT-744
>             Project: Mynewt
>          Issue Type: Improvement
>      Security Level: Public(Viewable by anyone) 
>          Components: Drivers, Sensor Framework
>            Reporter: Vipul Rahane
>            Assignee: Vipul Rahane
>             Fix For: v1_1_0_rel
>
>
> - Change data structure to SLIST instead of TAILQ so that it can get 
> initialized statically. This is needed so that sysinit could be used for 
> initializing the sensors.
> - Remove dummy functions in the bsp and add the sensor device initialization 
> functions instead.
> - Adding syscfg based configuration for onboard Vs offboard sensors
> - Adding sensor creator package for creating external sensor devices if they 
> are not on the board itself. This is just for convenience sake. The right way 
> to do this would be from the bsp. As a result, removed sensor device creation 
> from nrf52dk and nrf52840pdk bsps.
> - Add sensor interface struct so that it can get used by the individual 
> drivers so that we can talk to multiple sensors using the same driver using 
> same or different interfaces.
> - For TSL2561, apart from the above changes, various fixes were made:
>     1. Making a few changes to this driver along with sensor_itf changes
>     2. Gain, integration time and enabled flag was a global instead of 
> reading every time gain is set or integration time is set. Changing it so 
> that we read the timing register before setting either gain or integration 
> time.
>     3. Also changing a few functions in the driver to handle errors more 
> gracefully. Changing shell to work with new functions.
>     4. Making changes so that it goes in synch with the drivers.
>     5. Removing delays from the read function. the poller should be set 
> according to the other config values being set so that the sensor is read at 
> the correct interval.
> - Add a mask field to the sensor structure so that differentiating between 
> supported Vs configured sensors is possible
> - Change the sensor_mgr_match_bytype() function to check w.r.t mask and make 
> it a public API.
> - Adding config variable for mask for different drivers in their respective 
> structures.
> - Adding an API to set the sensor types based on the mask.
> - Moving config_sensor() out of the app into the creator package and the bsp. 
> Objective is to show how a developer would initialize and configure the 
> sensor in the bsp which is normally the practice.
> - Changing sensor_shell command "list" to show only configured types.
> - sensor_shell cmd "type" shows supported types set by the driver.
> - In the sensor_oic source file changing code to check type only while 
> allocating resources.
> - Changing device name in the sensors_test app to be "sensy" instead of "pi"
> - For the LSM303DLHC driver the address field in the "sensor_itf" structure 
> is not enough since it talks to the sensor using two addresses: one for 
> accelerometer and one for magnetometer. The best way to deal with this is to 
> make the addresses config variables in the sensor driver structure. For any 
> such sensor devices which have multiple addresses, a similar approach should 
> be followed.
> - Have changed the drivers to work with all the fixes mentioned above.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to