@@ -99,12 +99,7 @@ AirQualityEnum classifyAirQuality(int32_t value)
99
99
100
100
CHIP_ERROR SensorManager::Init ()
101
101
{
102
-
103
- PlatformMgr ().LockChipStack ();
104
- ChipLogDetail (AppServer, " Int instnace" );
105
- AirQualitySensorManager::InitInstance ();
106
- PlatformMgr ().UnlockChipStack ();
107
- ChipLogDetail (AppServer, " Int instnace success" );
102
+ DeviceLayer::PlatformMgr ().ScheduleWork (AirQualitySensorManager::InitInstance);
108
103
// Create cmsisos sw timer for air quality sensor timer.
109
104
mSensorTimer = osTimerNew (SensorTimerEventHandler, osTimerPeriodic, nullptr , nullptr );
110
105
if (mSensorTimer == NULL )
@@ -165,12 +160,14 @@ void SensorManager::SensorTimerEventHandler(void * arg)
165
160
}
166
161
#endif // USE_AIR_QUALITY_SENSOR
167
162
163
+ DeviceLayer::PlatformMgr ().ScheduleWork (AirQualitySensorManager::GetInstance ()->OnAirQualityChangeHandler ,
164
+ classifyAirQuality (air_quality));
165
+
168
166
PlatformMgr ().LockChipStack ();
169
- AirQualitySensorManager::GetInstance ()->OnAirQualityChangeHandler (classifyAirQuality (air_quality));
167
+ ChipLogDetail (AppServer, " RAW AirQuality value: %ld and corresponding Enum value : %d" , air_quality,
168
+ chip::to_underlying (AirQualitySensorManager::GetInstance ()->GetAirQuality ()));
170
169
PlatformMgr ().UnlockChipStack ();
171
170
172
- AppTask::GetAppTask ().UpdateAirQualitySensorUI ();
173
171
174
- ChipLogDetail (AppServer, " RAW AirQuality value: %ld and corresponding Enum value : %d" , air_quality,
175
- chip::to_underlying (AirQualitySensorManager::GetInstance ()->GetAirQuality ()));
172
+ AppTask::GetAppTask ().UpdateAirQualitySensorUI ();
176
173
}
0 commit comments