KernelNewbies:

Google Summer of Code 2018

IIO Driver Project (Bosch BME680)

The project aimed to write a device driver for Bosch BME680(4-in-1) sensor module using the Industrial I/O interface to effectively read data from each of the four channels which are Temperature, Pressure, Humidity and Gas. The sensor communicates via I2C and SPI communication protocol and the captured data read from the sensor is transported from kernelspace to userspace using the sysfs bindings to the IIO core. The goal is also to add support for triggered buffer readings from each of the channels to efficiently read samples. Finally, power management support is also required to support suspend/resume functions.

Accomplishment

TO-DO

Ongoing - Discussions: https://marc.info/?t=153295283200001&r=1&w=2;

Patches

Final merged driver code for 4.19 kernel release: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=1b3bd8592780c87c5eddabbe98666b086bbaee36

Incremental Blog series: https://himanshujha199640.wordpress.com/2018/05/10/introduction

Acknowledgement

Special thanks to:

And Greg Kroah-Hartman(Linux Foundation) for funding the hardware required for the project.

GSoC'18 Project: https://summerofcode.withgoogle.com/archive/2018/projects/6296586405543936/

Documentation: https://www.kernel.org/doc/html/latest/driver-api/iio/index.html

Youtube:

Slides: Industrial I/O Subsystem: The Home of Linux Sensors

KernelNewbies: HimanshuJha/GSoC18 (last edited 2019-03-24 11:43:52 by HimanshuJha)