Mapping Blueprints
This page provides ready-to-use mapping examples for complex device setups. You can use these as reference when configuring entity mappings in the HAMH UI or when creating mapping profiles for import.
Composed Temperature + Humidity + Pressure Sensor
Combines a temperature sensor with related humidity and pressure sensors into a single Matter composed device. Each sensor appears as a proper sub-device in Apple Home, Google Home, and Alexa.
Requirements: Enable the autoComposedDevices feature flag on the bridge.
{
"entityId": "sensor.living_room_temperature",
"humidityEntity": "sensor.living_room_humidity",
"pressureEntity": "sensor.living_room_pressure",
"batteryEntity": "sensor.living_room_battery"
}
With Power Monitoring
If your sensor hub also reports power consumption:
{
"entityId": "sensor.living_room_temperature",
"humidityEntity": "sensor.living_room_humidity",
"pressureEntity": "sensor.living_room_pressure",
"batteryEntity": "sensor.living_room_battery",
"powerEntity": "sensor.living_room_power",
"energyEntity": "sensor.living_room_energy"
}
Air Purifier with Sensors
Maps a fan entity as an air purifier with temperature, humidity, and HEPA filter monitoring.
Requirements: Enable the autoComposedDevices feature flag. Set matterDeviceType to air_purifier.
{
"entityId": "fan.air_purifier",
"matterDeviceType": "air_purifier",
"temperatureEntity": "sensor.air_purifier_temperature",
"humidityEntity": "sensor.air_purifier_humidity",
"filterLifeEntity": "sensor.air_purifier_filter_life",
"powerEntity": "sensor.air_purifier_power",
"energyEntity": "sensor.air_purifier_energy"
}
Smart Plug with Energy Monitoring
A switch with real-time power and cumulative energy measurement.
{
"entityId": "switch.smart_plug",
"powerEntity": "sensor.smart_plug_power",
"energyEntity": "sensor.smart_plug_energy"
}
Dimmable Light with Energy Monitoring
{
"entityId": "light.kitchen_ceiling",
"powerEntity": "sensor.kitchen_ceiling_power",
"energyEntity": "sensor.kitchen_ceiling_energy"
}
Roborock Vacuum with Room Cleaning
Maps a vacuum with room-specific cleaning buttons and a cleaning mode selector.
{
"entityId": "vacuum.roborock_s7",
"cleaningModeEntity": "select.roborock_s7_cleaning_mode",
"suctionLevelEntity": "select.roborock_s7_suction_level",
"mopIntensityEntity": "select.roborock_s7_mop_intensity",
"roomEntities": [
"button.roborock_s7_clean_kitchen",
"button.roborock_s7_clean_living_room",
"button.roborock_s7_clean_bedroom"
]
}
Dreame Vacuum Variant
{
"entityId": "vacuum.dreame_l20",
"cleaningModeEntity": "select.dreame_l20_cleaning_mode",
"suctionLevelEntity": "select.dreame_l20_suction_level",
"mopIntensityEntity": "select.dreame_l20_water_volume",
"roomEntities": [
"button.dreame_l20_clean_kitchen",
"button.dreame_l20_clean_bathroom"
]
}
Valetudo Vacuum
{
"entityId": "vacuum.valetudo_robot",
"valetudoIdentifier": "valetudo_robot",
"customServiceAreas": [
{ "areaId": 1, "label": "Kitchen" },
{ "areaId": 2, "label": "Living Room" }
]
}
Door Lock with PIN Disabled
Useful when you have multiple locks and only want PIN protection on some.
{
"entityId": "lock.front_door",
"disableLockPin": true
}
Cover with Swapped Open/Close
For covers where Home Assistant reports inverted position values.
{
"entityId": "cover.garage_door",
"coverSwapOpenClose": true
}
Using Mapping Profiles
You can export and import mapping configurations as profiles via the HAMH UI or API:
- Export: Go to Bridge Settings → Export Mapping Profile
- Import: Go to Bridge Settings → Import Mapping Profile → Select entities to apply
A mapping profile bundles multiple entity mappings into a single JSON file that can be shared between installations.
Profile Format
{
"version": 1,
"name": "My Home Setup",
"description": "Mappings for all devices",
"author": "username",
"createdAt": "2025-01-01T00:00:00Z",
"domains": ["sensor", "fan", "vacuum", "switch"],
"entryCount": 4,
"entries": [
{
"domain": "sensor",
"entityIdPattern": "sensor.*_temperature",
"humidityEntity": "sensor.*_humidity",
"pressureEntity": "sensor.*_pressure"
},
{
"domain": "fan",
"entityIdPattern": "fan.air_purifier*",
"matterDeviceType": "air_purifier",
"temperatureEntity": "sensor.air_purifier_temperature"
}
]
}
Entity ID patterns in profiles use glob-style matching. Use * to match any characters within the entity ID.