Commit graph

60 commits

Author SHA1 Message Date
Maureen Helm
3bdc77ee09 sensor: fxos8700: Add accelerometer/magnetometer driver
Adds basic sensor driver support for the NXP FXOS8700 6-axis
accelerometer/magnetometer. Currently this driver supports
accelerometer-only, magnetometer-only, and hybrid (accelerometer +
magnetometer) modes, as well as 2g, 4g, and 8g accelerometer full scale
ranges.

This driver does not yet support any sensor triggers such as the data
ready trigger, or runtime changing of sensor attributes.

Datasheet:
http://cache.nxp.com/files/sensors/doc/data_sheet/FXOS8700CQ.pdf

Origin: Original
Jira: ZEP-721

Change-Id: Iff0f751c737196f60d5c5d3448631b57093ece34
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2016-10-27 14:36:43 +00:00
Anas Nashif
348e61dcdc sensors: tmp112: move tmp112 to own directory under drivers/sensor/
Change-Id: I85023f60ee3c5303a6c065f8ee1b238106b13e49
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 14:49:56 -04:00
Anas Nashif
623b43f5dc sensors: tmp007: move tmp007 to own directory under drivers/sensor/
Change-Id: If5fd1277ec93455ee7a1e856357dfab0930a653c
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 14:41:21 -04:00
Anas Nashif
bdfeda0a73 sensors: sx9500: move sx9500 to own directory under drivers/sensor/
Change-Id: Ifc7dfd8a28d33f140415ca178b56d35e51aff178
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 14:39:56 -04:00
Anas Nashif
b918ae8d82 sensors: sht3xd: move sht3xd to own directory under drivers/sensor/
Change-Id: I8d13f5b2461169940f24a08346f0da0c291a8fef
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:38:00 +00:00
Anas Nashif
cce03b127d sensors: mpu6050: move mpu6050 to own directory under drivers/sensor/
Change-Id: Ia0c4e81f8725da6fc5fead7a86320b613336e702
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:59 +00:00
Anas Nashif
6977cad1e2 sensors: mcp9808: move mcp9808 to own directory under drivers/sensor/
Change-Id: I8327d821b95b5bd8c13d5f24dd5ec46fa53b2d18
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:59 +00:00
Anas Nashif
77bbbb3618 sensors: max44009: move max44009 to own directory under drivers/sensor/
Change-Id: I6b063ebeb53ce6ababd027e15d8d7d94f6174a53
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:59 +00:00
Anas Nashif
109cfe5889 sensors: lsm9ds0_mfd: move lsm9ds0_mfd to own directory under drivers/sensor/
Change-Id: If07b2a73a8acad7f89f650ec304199961a629e28
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:58 +00:00
Anas Nashif
81c564a675 sensors: lsm9ds0_gyro: move lsm9ds0_gyro to own directory under drivers/sensor/
Change-Id: Ia654ab8059d656da6b4414a3fe35c81ec39654d3
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:58 +00:00
Anas Nashif
1ae2b855c1 sensors: lsm6ds0: move lsm6ds0 to own directory under drivers/sensor/
Change-Id: Ia2911f584da30fd583318e9730ad1ec147ba6f8b
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:57 +00:00
Anas Nashif
8298e9ac27 sensors: lps25hb: move lps25hb to own directory under drivers/sensor/
Change-Id: I5d9c802a8ec9d29557417b687c92b2430aca9fe1
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:57 +00:00
Anas Nashif
49f53fa3ac sensors: lis3mdl: move lis3mdl to own directory under drivers/sensor/
Change-Id: Ie3140e7eb6dcfab6008af3ba85dc9119c5dbfb50
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:56 +00:00
Anas Nashif
6f0c55600a sensors: lis3dh: move lis3dh to own directory under drivers/sensor/
Change-Id: Ie263f4400707fec685cd93077e764c5b77f4784d
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:56 +00:00
Anas Nashif
bdcf651cd1 sensors: isl29035: move isl29035 to own directory under drivers/sensor/
Change-Id: Ia0164f2891b1b2f3d19c63b8311d71e1f9abeeb5
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:56 +00:00
Anas Nashif
cc43b3017a sensors: hts221: move hts221 to own directory under drivers/sensor/
Change-Id: Id568ee3fae62090ef2711d34fbfd9de214630008
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:55 +00:00
Anas Nashif
e71a133dd7 sensors: hp206c: move hp206c to own directory under drivers/sensor/
Change-Id: Ie218228c16584384312200522f43edbd15aadf30
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:55 +00:00
Anas Nashif
4166365c00 sensors: hmc5883l: move hmc5883l to own directory under drivers/sensor/
Change-Id: I5b1126238686b239a5abb73d3ddc966e7d7150d3
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:54 +00:00
Anas Nashif
37cf07df27 sensors: hdc1008: move hdc1008 to own directory under drivers/sensor/
Change-Id: If1a7805ab2053b3588318c2a3d5b549a667cb0fb
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:54 +00:00
Anas Nashif
9078ad7982 sensors: dht: move dht to own directory under drivers/sensor/
Change-Id: Id19b4ea414347caa23730e3ccd4f79761878af01
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:53 +00:00
Anas Nashif
49a6d13849 sensors: bmi160: move bmi160 to own directory under drivers/sensor/
Change-Id: I14bfabf77b7aa64acbf25a922a94f92c559b13f7
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:53 +00:00
Anas Nashif
0005f2ff06 sensors: bmg160: move bmg160 to own directory under drivers/sensor/
Change-Id: Ifae44714f08537835c8466fba11b6853f258f148
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:53 +00:00
Anas Nashif
c445de3bbb sensors: bme280: move bme280 to own directory under drivers/sensor/
Change-Id: I53f5504773c914b0936091c459b80ab133b9e4ac
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:52 +00:00
Anas Nashif
57b13ec890 sensors: bmc150_magn: move bmc150_magn to own directory under drivers/sensor/
Change-Id: I725438747b3208ebd49f4f7d9ef6277721eaa48f
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:52 +00:00
Anas Nashif
c31bbc32d8 sensors: bma280: move bma280 to own directory under drivers/sensor/
Change-Id: I1c73d36a51ea88fbda3707c7d6630d54f8fd3545
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:51 +00:00
Anas Nashif
db04446964 sensors: ak8975: move ak8975 to own directory under drivers/sensor/
Change-Id: Ib3a8e8a74430d30843db77954737c3ce5dfdce14
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 18:37:51 +00:00
Anas Nashif
915eac4625 sensors: add TH02 temperature sensor (Grove)
Support for the Temperature&Humidity Sensor (High-Accuracy &Mini)
v1.0 sensor, see:

http://wiki.seeed.cc/Grove-TemptureAndHumidity_Sensor-High-Accuracy_AndMini-v1.0/

Change-Id: I439eafc863116f21e3b3385175d1935e60a5e9b1
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-17 00:24:33 +00:00
Anas Nashif
16c5416d70 sensors: use one single sys log config for sensors
Change-Id: I27aadd15ad0ebbaf6373591d52e63fe3f4560378
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-07 16:15:54 +00:00
Anas Nashif
6a534710c0 sensors: use one init priority config for all sensors
Sensors are end-devices and usually nothing depends on them,
so set a global priority for all sensors and use it instead of
individual values per sensor.

Change-Id: I5847411e783ef8a8517f0ab1d8234810513707b4
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-10-05 23:01:23 +00:00
Laurentiu Palcu
3ef2e059c3 sensor: add driver for HP206C sensor
This sensor is a high precision barometer, altimeter and temperature
sensor. It can also be found on the Grove Barometer module (v1.0).

Sensor datasheet:
http://www.hoperf.com/upload/sensor/HP206C_DataSheet_EN_V2.0.pdf

Grove link:
http://www.seeedstudio.com/depot/Grove-Barometer-HighAccuracy-p-1865.html

Origin: Original
Change-Id: I99986b26b6b4447e31e12a1fc17ede3e6bb4c586
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
2016-09-12 12:18:55 +00:00
Murtaza Alexandru
0c83039a67 sensor: add driver for LPS25HB
Add driver for LPS25HB pressure and temperature sensor.

Datasheet:
http://www.st.com/content/ccc/resource/technical/document/datasheet/9a/4c/aa/72/1f/45/4e/24/DM00141379.pdf/files/DM00141379.pdf/jcr:content/translations/en.DM00141379.pdf

Change-Id: I6b616e879777b52f16f4e867c330e8beacf59fd3
Signed-off-by: Murtaza Alexandru <alexandru.murtaza@intel.com>
Signed-off-by: Bogdan Davidoaia <bogdan.m.davidoaia@intel.com>
2016-07-21 16:22:03 +00:00
Baohong Liu
a3488d13e0 sensor: add driver for MAX44009 light sensor
Add device driver for MAX44009 light sensor

Datasheet:
https://datasheets.maximintegrated.com/en/ds/MAX44009.pdf

Jira: ZEP-357

Origin: Original
Change-Id: I6b5c8e0afc36c22de0a6432d01cd5b7eb2e12f1b
Signed-off-by: Baohong Liu <baohong.liu@intel.com>
2016-07-12 19:31:09 +00:00
Mariusz Ryndzionek
c8a589e06e sensor: add driver for TMP112 temperature sensor
Add device driver for the TMP112 I2C temperature sensor

Datasheet:
	http://www.ti.com/lit/ds/slos887d/slos887d.pdf

Change-Id: I08208204cd8f377dc65378aaf2b92c7cdefe8d2b
Origin: Original
Signed-off-by: Mariusz Ryndzionek <mariusz.ryndzionek@firmwave.com>
2016-06-29 05:09:11 +00:00
Bogdan Davidoaia
4f80a44b1b sensor: add driver for HMC5883L magnetometer
Add driver for the I2C-based Honeywell HMC5883L magnetometer.

Datasheet:
	https://cdn-shop.adafruit.com/datasheets/HMC5883L_3-Axis_Digital_Compass_IC.pdf

Change-Id: I9ad56a7533d8d67402aa2ae2862ba339b04d3525
Origin: Original
Signed-off-by: Bogdan Davidoaia <bogdan.m.davidoaia@intel.com>
2016-06-29 04:58:44 +00:00
Murtaza Alexandru
b3a485147f sensor: add driver for LSM6DS0
Add driver for LSM6DS0 accelerometer, gyroscope and temperature sensor.

Change-Id: Ic04fa8d0bbf935e7f04ed7981554d8095ceb5ccf
Signed-off-by: Murtaza Alexandru <alexandru.murtaza@intel.com>
2016-06-01 11:48:50 +00:00
Bogdan Davidoaia
c4c01a92f3 sensor: add driver for AK8975 magnetometer
Add driver for the AK8975 3-axis electonic compass.

Datasheet:
	http://www.akm.com/akm/en/file/datasheet/AK8975.pdf

Change-Id: I427f954396c8991a153e4447d746b855d19cb60d
Origin: Original
Signed-off-by: Bogdan Davidoaia <bogdan.m.davidoaia@intel.com>
2016-06-01 14:02:20 +03:00
Bogdan Davidoaia
01062d97aa sensor: add driver for MPU6050 sensor
Add driver to MPU6050 six-axis motion tracking device. The driver has support
for accelerometer, gyroscope and temperature channels.

Datasheet:
	http://43zrtwysvxb2gf29r5o0athu.wpengine.netdna-cdn.com/wp-content/uploads/2015/02/MPU-6000-Datasheet1.pdf

Register Map:
	http://43zrtwysvxb2gf29r5o0athu.wpengine.netdna-cdn.com/wp-content/uploads/2015/02/MPU-6000-Register-Map1.pdf

Change-Id: Id3930fc666195051093fee80c15cf2deb0eaedff
Origin: Original
Signed-off-by: Bogdan Davidoaia <bogdan.m.davidoaia@intel.com>
2016-06-01 14:02:13 +03:00
Bogdan Davidoaia
34f63de901 sensor: add driver for HTS221 sensor
Add driver for HTS221 temeprature and relative humidity sensor.

Datasheet:
	http://www.st.com/resource/en/datasheet/hts221.pdf

Interpreting humidity and temperature readings document:
	http://www.st.com/resource/en/technical_note/dm00208001.pdf

Change-Id: I1fee9d8372ad71b22bc85a60939c82f81569e135
Origin: Original
Signed-off-by: Bogdan Davidoaia <bogdan.m.davidoaia@intel.com>
2016-05-29 22:25:19 +00:00
Bogdan Davidoaia
a2605e50d7 sensor: add driver for LIS3MDL magnetometer
Add driver for the LIS3MDL ultra-low-power high-performance three-axis
magnetic sensor.

Datasheet:
	http://www.st.com/resource/en/datasheet/lis3mdl.pdf

Application note:
	http://www.st.com/resource/en/application_note/dm00136626.pdf

Change-Id: Id2d65e7525bef6c4fe50f86169a80f84197f8983
Origin: Original
Signed-off-by: Bogdan Davidoaia <bogdan.m.davidoaia@intel.com>
2016-05-29 22:25:03 +00:00
Bogdan Davidoaia
72786486c6 sensor: remove CONFIG_SENSOR_DEBUG
Remove the CONFIG_SENSOR_DEBUG as it is no longer needed since switching
to SYS_LOG_* in the sensor susbsystem.

Also, use __ASSERT where CONFIG_SENSOR_DEBUG was used to validate
function parameters.

Change-Id: I80ed7209abfb92220fa229d246c5b3a43b887e32
Signed-off-by: Bogdan Davidoaia <bogdan.m.davidoaia@intel.com>
2016-05-21 21:20:13 +00:00
Murtaza Alexandru
310ed1e2e9 sensor: add support for BME280
* Rename BMP280 to BME280 which is a superset for the former.
* Autodetect device based on chip ID.
* Implement humidity fetching and reading for BME280
* Rename sample BMP280 to BME280

Change-Id: I565c769a7011e7496c9f1cad861d5ee311839b4f
Signed-off-by: Murtaza Alexandru <alexandru.murtaza@intel.com>
2016-05-17 20:07:34 +00:00
Bogdan Davidoaia
c9caf1806a sensors: add driver for DHTxx sensors
Add driver for the DHT temperature and relative himidity sensor family.
The sensor has a single signal pin (in addition to GND and VDD) over
which communication is done in a half-duplex manner (see datasheet for
more details).

Datasheets:
	http://www.micropik.com/PDF/dht11.pdf
	https://www.sparkfun.com/datasheets/Sensors/Temperature/DHT22.pdf
	http://akizukidenshi.com/download/ds/aosong/AM2302.pdf

Origin: Original
Change-Id: If8c8be73d7fdfef2ab2091bf9b8fe72bcd700ed1
Signed-off-by: Bogdan Davidoaia <bogdan.m.davidoaia@intel.com>
2016-05-14 00:31:43 +00:00
Vlad Dogaru
3a66946b0f sensor: Rework core to use workqueue API
Remove the homegrown sensor delayed work API in favor of using the
system-wide workqueue.  Drivers still have the option of using their own
fiber.

In a second step, drivers can be refactored to start and use their own
workqueue.

Change-Id: I70dea6fc2abcbc9e04ac1ed3c837483a3d3c4424
Signed-off-by: Vlad Dogaru <vlad.dogaru@intel.com>
2016-05-12 15:27:40 +00:00
Laurentiu Palcu
6f11e868b0 sensor: add support for BMG160 gyroscope
Datasheet:
http://ae-bst.resource.bosch.com/media/_tech/media/datasheets/BST-BMG160-DS000-09.pdf

Origin: Original
Change-Id: I27469da8ff04c2eb26e92cc5d747b1bb8fee627b
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
2016-05-04 13:13:59 +00:00
Murtaza Alexandru
075d081811 sensor: add driver for LSM9DS0 accel and magn
Add device driver for the multi function device (MFD) part of LSM9DS0:
accelerometer, magnetometer and temperature.

Datasheet:
  https://www.adafruit.com/datasheets/LSM9DS0.pdf

Change-Id: I00b9db2c69c6e5229269afacb02bf5f921edabe9
Signed-off-by: Murtaza Alexandru <alexandru.murtaza@intel.com>
2016-04-26 18:10:41 +00:00
Bogdan Davidoaia
b53b27701a sensors: add driver for TMP007 infrared thermopile sensor
Add driver for the TMP007 intrared thermopile sensor which measures
the temperature of an object without direct contact.

Datasheet:
	http://www.ti.com/lit/ds/symlink/tmp007.pdf

Origin: Original
Change-Id: I29857b2e424a2144370d75e2ee40c4ff8b619afd
Signed-off-by: Bogdan Davidoaia <bogdan.m.davidoaia@intel.com>
2016-04-16 05:32:35 +00:00
Laurentiu Palcu
5d2a200381 sensor: add driver for BMI160
This patch adds support for the Curie's BMI160 IMU chip. Only polling is
supported in this version.

Datasheet:
http://ae-bst.resource.bosch.com/media/_tech/media/datasheets/BST-BMI160-DS000-07.pdf

Origin: Original
Change-Id: I759856d4bf123c21e9e4928f32bdf8f00aeeed24
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
2016-04-02 23:08:48 +00:00
Vlad Dogaru
0e702a6ce3 sensor: add driver for BMP280
This is a temperature and atmospheric pressure chip.  The datasheet is
available at:
	https://www.adafruit.com/datasheets/BST-BMP280-DS001-11.pdf

Change-Id: I3406eb6c2c4da564757b8315323d0681d648b541
Signed-off-by: Vlad Dogaru <vlad.dogaru@intel.com>
2016-03-27 00:34:38 +00:00
Bogdan Davidoaia
a302451cc4 sensor: add driver for LIS3DH accelerometer
Add device driver for the LIS3DH I2C-based triaxial accelerometer
sensor, which supports reading data from the accel-x, accel-y and
accel-z channels.

Datasheet:
	http://www.st.com/web/en/resource/technical/document/datasheet/CD00274221.pdf

Application note:
	http://www.st.com/web/en/resource/technical/document/application_note/CD00290365.pdf

Change-Id: Ib51bd6346798249d850376e50d1c938eda8a3d28
Signed-off-by: Bogdan Davidoaia <bogdan.m.davidoaia@intel.com>
2016-03-27 00:34:30 +00:00
Murtaza Alexandru
b1ea13413e sensor: add driver for LSM9DS0 gyroscope
Add device driver for the gyroscope part of LSM9DS0 gyroscope.

Datasheet:
  https://www.adafruit.com/datasheets/LSM9DS0.pdf

Change-Id: I25e0c8470c9b68c594bc4a0d2a9a13f8f41ee309
Signed-off-by: Murtaza Alexandru <alexandru.murtaza@intel.com>
2016-03-24 08:03:31 +00:00