Why is 'Sensor' a Peripheral in the API Reference?


Jennifer M Williams
 

Hi all,

 

What is the rationale for ‘Sensors’ being under ‘Peripherals’ in the API Reference with the ADC, Counter, I2C, SPI, etc.?  Is it because the Peripheral APIs are for hardware-related interface?

 

Thanks,

Jen


Andy Ross
 

Inertia, probably, and maybe a lack of somewhere better to put them.  Properly "sensors" are an abstract subsystem and the related peripherals would be things like "accelerometers", "gyroscopes", "thermometers", etc...  But we don't really have a heading for "device type subsystem", and pulling these up a level would put "sensors" next to stuff like "power management" where it really doesn't belong.

There's also the problem that while we have a sensor framework abstraction, we, er, kinda lack a lot of actual sensor drivers to use it.

Personally I don't think this is awful, but some reorganization certainly couldn't hurt.

Andy


On 7/29/19 2:53 PM, Jennifer M Williams wrote:

Hi all,

 

What is the rationale for ‘Sensors’ being under ‘Peripherals’ in the API Reference with the ADC, Counter, I2C, SPI, etc.?  Is it because the Peripheral APIs are for hardware-related interface?

 

Thanks,

Jen


Jennifer M Williams
 

@Andy Ross Thanks for the perspective. This is interesting. It does currently live under \zephyr\drivers with i2c, spi, gpio, etc. and is developed following a general driver API.

 

Also, the Zephyr Project API Reference is misleading…

“The sensor subsystem exposes an API to uniformly access sensor devices.”

https://docs.zephyrproject.org/latest/reference/peripherals/sensor.html

 

From: devel@... <devel@...> On Behalf Of Andy Ross
Sent: Wednesday, July 31, 2019 9:24 AM
To: Williams, Jennifer M <jennifer.m.williams@...>; devel@...
Subject: Re: [Zephyr-devel] Why is 'Sensor' a Peripheral in the API Reference?

 

Inertia, probably, and maybe a lack of somewhere better to put them.  Properly "sensors" are an abstract subsystem and the related peripherals would be things like "accelerometers", "gyroscopes", "thermometers", etc...  But we don't really have a heading for "device type subsystem", and pulling these up a level would put "sensors" next to stuff like "power management" where it really doesn't belong.

There's also the problem that while we have a sensor framework abstraction, we, er, kinda lack a lot of actual sensor drivers to use it.

Personally I don't think this is awful, but some reorganization certainly couldn't hurt.

Andy

 

On 7/29/19 2:53 PM, Jennifer M Williams wrote:

Hi all,

 

What is the rationale for ‘Sensors’ being under ‘Peripherals’ in the API Reference with the ADC, Counter, I2C, SPI, etc.?  Is it because the Peripheral APIs are for hardware-related interface?

 

Thanks,

Jen