Skip to content

Add Initial FP400 profile and subdriver#3024

Merged
hcarter-775 merged 3 commits into
mainfrom
add/fp400-subdriver
Jun 22, 2026
Merged

Add Initial FP400 profile and subdriver#3024
hcarter-775 merged 3 commits into
mainfrom
add/fp400-subdriver

Conversation

@hcarter-775

Copy link
Copy Markdown
Contributor

Description of Change

Add new profile and subdriver for Aqara FP400. Though right now all handling is generic, the unique profile will be useful for next steps, when we expand the Matter handling for this device, and will better shield any complications from interacting with the generic Matter Sensor sub driver.

Summary of Completed Tests

Unit tests added. Onboarding to device tested successfully.

@hcarter-775 hcarter-775 changed the title add fp400 profile + subdriver Add Initial FP400 profile and subdriver Jun 11, 2026
@github-actions

github-actions Bot commented Jun 11, 2026

Copy link
Copy Markdown

Duplicate profile check: Passed - no duplicate profiles detected.

@github-actions

github-actions Bot commented Jun 11, 2026

Copy link
Copy Markdown

Channel deleted.

@github-actions

github-actions Bot commented Jun 11, 2026

Copy link
Copy Markdown

Test Results

   73 files  ±0    516 suites  +1   0s ⏱️ ±0s
2 911 tests +7  2 911 ✅ +8  0 💤 ±0  0 ❌  - 1 
4 808 runs  +8  4 808 ✅ +9  0 💤 ±0  0 ❌  - 1 

Results for commit 74a3585. ± Comparison against base commit 42a6a23.

This pull request removes 1 and adds 8 tests. Note that renamed tests count towards both.
Handle Update Credential command received from SmartThings.
Device init should preserve device-reported multiplier and divisor - PLUG EU EM T
Device init should set default multiplier and divisor only when not already set - PLUG EU EM T
Eve Energy sub-driver can_handle should return false for devices without Eve Private Cluster
Eve Energy sub-driver can_handle should return true for devices with Eve Private Cluster and no Electrical Sensor
Occupancy reports should generate correct presence messages
Test no profile change on doConfigure for FP400
Test no profile change on driverSwitched for FP400
Update Credential for Guest user should not add default schedule again

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Jun 11, 2026

Copy link
Copy Markdown

File Coverage
All files 89%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/embedded_clusters/Global/types/LevelValueEnum.lua 69%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/embedded_clusters/Global/types/MeasurementAccuracyStruct.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/embedded_clusters/Global/types/MeasurementAccuracyRangeStruct.lua 93%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/sensor_utils/device_configuration.lua 90%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/sensor_utils/embedded_cluster_utils.lua 71%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/sensor_utils/utils.lua 95%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/sub_drivers/bosch_button_contact/init.lua 83%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/sub_drivers/air_quality_sensor/air_quality_sensor_handlers/attribute_handlers.lua 78%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/sub_drivers/air_quality_sensor/air_quality_sensor_utils/fields.lua 92%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/sub_drivers/air_quality_sensor/air_quality_sensor_utils/legacy_device_configuration.lua 97%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/sub_drivers/air_quality_sensor/air_quality_sensor_utils/device_configuration.lua 86%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/sub_drivers/air_quality_sensor/air_quality_sensor_utils/utils.lua 74%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/embedded_clusters/SoilMeasurement/server/attributes/SoilMoistureMeasuredValue.lua 86%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/embedded_clusters/SoilMeasurement/server/attributes/SoilMoistureMeasurementLimits.lua 85%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/lazy_load_subdriver.lua 57%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/init.lua 93%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/sub_drivers/air_quality_sensor/init.lua 87%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/sensor_handlers/attribute_handlers.lua 89%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/embedded_clusters/SoilMeasurement/init.lua 93%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/sub_drivers/smoke_co_alarm/init.lua 82%

Minimum allowed coverage is 90%

Generated by 🐒 cobertura-action against 74a3585

@hdlee27 hdlee27 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The part expressed as presenceSensor is truly excellent.

Comment on lines +5 to +9
local sensor_utils = require "sensor_utils.utils"
if sensor_utils.get_product_override_field(device, "is_aqara_fp400") then
return true, require("sub_drivers.aqara_fp400")
end
return false

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit:

Suggested change
local sensor_utils = require "sensor_utils.utils"
if sensor_utils.get_product_override_field(device, "is_aqara_fp400") then
return true, require("sub_drivers.aqara_fp400")
end
return false
local sensor_utils = require "sensor_utils.utils"
if sensor_utils.get_product_override_field(device, "is_aqara_fp400") then
return true, require("sub_drivers.aqara_fp400")
end
return false

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed! thanks

@Kwang-Hui Kwang-Hui left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me

@hcarter-775 hcarter-775 merged commit fa41aa6 into main Jun 22, 2026
17 checks passed
@hcarter-775 hcarter-775 deleted the add/fp400-subdriver branch June 22, 2026 22:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants