Sensor Optimizer Concurrent Data Streaming
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current mobile devices with integrated sensors can only output a single sensor data stream, which limits their ability to efficiently provide data for diverse applications with different requirements, leading to inefficiencies and performance degradation.
Innovation Solution
A sensor optimizer module that intercepts requests for sensor data and creates multiple concurrent data streams with different parameters, allowing each application to receive tailored data streams that match its specific needs, such as calibrated and uncalibrated data streams for image stabilization and navigation applications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a single sensor data stream is output from the sensor module, then the device complexity is reduced, but the adaptability to different application requirements deteriorates
Solution Approach 1:
The patent segments the single sensor data stream into multiple separate data streams, each tailored to specific application requirements. The sensor module divides the raw sensor data into different streams with distinct parameters (e.g., calibrated vs. uncalibrated data, different sampling rates), allowing each application to receive optimized data without processing all possible data types.
Solution Approach 2:
The patent applies local quality by providing different data qualities to different applications based on their specific needs. For example, image stabilization applications receive calibrated data with higher precision, while navigation applications receive uncalibrated data with lower precision but updated at different intervals. Each data stream is locally optimized for its intended application.
2Adaptability or versatility
If multiple applications request sensor data with different parameters, then the versatility of the sensor system is improved, but the loss of time for data processing increases
Solution Approach 1:
The patent implements preliminary action by pre-configuring multiple sensor data streams with different parameters before applications need them. The sensor module maintains several data streams simultaneously (e.g., calibrated and uncalibrated streams at different sampling rates), so when applications request data, the pre-prepared streams are immediately available without requiring real-time processing or conversion.
Solution Approach 2:
The patent uses copying by creating duplicate data streams from the same sensor source, each with different parameters. Instead of processing a single stream for multiple applications, the system creates copies of the sensor data with different characteristics (calibration status, sampling rates, filtering), allowing parallel delivery to multiple applications without sequential processing delays.
3Productivity
If a single data stream is used for multiple applications, then the device complexity is reduced, but the productivity of the system deteriorates due to inefficiencies
Solution Approach 1:
The patent applies universality by designing a sensor module that can simultaneously provide multiple data streams with different parameters from a single sensor source. The sensor module is configured to generate multiple output streams (calibrated, uncalibrated, different sampling rates) concurrently, making it universally applicable to various applications without requiring separate sensors for each application type.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Embodiments implement a device having a sensor optimizer, where a source data stream from a sensor module may be used by the sensor optimizer to create multiple sensor data streams having different data stream parameters (e.g. data rate, calibration, scaling, etcetera) from the source data stream. Such a sensor optimizer may intercept requests for sensor data from applications running on a mobile device processor, and concurrently provide data streams having different data stream parameters to applications executed by the processor.