Donny9 opened a new pull request, #6653: URL: https://github.com/apache/incubator-nuttx/pull/6653
## Summary Driver/sensor enhance feature: * Support pub-sub mechanism to mange all sensor(physical sensor, abstract sensor, rpmsg sensor). * Support user to register abstract sensor by /dev/usensor node in userspace. * Support remote core to advertise sensor event to other core, and support remote core to subscribe sensor event from other core, so support multi-core user to access sensor event by rpmsg. * Support down-sample. * Allow multi users to access the same sensor device simultaneously. * Get real state of sensor device by cmd SNIOC_GET_STATE for users. * Get update state since last read by poll without timeout for users. * Sensor device will be activated when first user open and will close when last user closed. * When multi users to access device, driver always set the minimum sampling interval and latency to the sensor device and allow downsampled for users above the minimum sampling interval. * The circbuffer will overwrite old data when buffer is full, so if users don't read data soon, data will be lost, and the oldest data in circbuffer are returned to the users. * Always read the last data in the circbuffer as initial value for new users when the sensor device has not yet generated new data. * when user uses poll, if subscription interval is satisfied, the POLLIN events is returned for each users. * When new user generate or the state of sensor device changed, the POLLPRI will notify to all users. * Support multi advertisers to subscribe their own data as loop test. Refer to: https://docs.px4.io/v1.12/en/middleware/uorb.html ## Impact * Provides sensor cross-core access capability. * Provides a subscription and publish-based mechanism to access sensors. ## Testing Vela team CI and unit test. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org