Heiman HS1SA-M matter over Thread OTA instruction/guide

Heiman was the first brand to support Matter for smoke and CO alarms. Since there are several firmware versions out there, some users are having trouble upgrading to v1.5. I'd like to show you how to get those older versions updated.

Release Note:

  • 1.0: initial version.
  • 1.1: fix ICD issue and improve stability.
  • 1.2: bug fixing.
  • 1.3: fix ICD issue and improve stability.
  • 1.4: Migrate LIT ICD features from Matter 1.5 and bug fixing.
  • 1.5: Fix LIT ICD features and improve subscription.
  • 1.6: fix rarely offline issue in AppleHome/Homekit.
  • 1.7: fix LIT ICD issue.

Planed OTA release:
4.3: supports mute and siren in HomeAssitant (in beta now, it has uploaded to testnet)

How to identify the version?

  1. Open the Matter Server UI and select your smoke alarm to go to the device page. Click 'interview' and wait for the process to complete.


  2. please check the SoftwareVersion and ManufacturingDate in basicalinfomation cluster as below:

  3. if the date is older than May 2025 (because Matter 1.4 was released at early of 2025), please update an interim firmware, let's say 1.1, and then update to 1.5 version, if your sensor is newer than that, you can skip this step and update directly.

How to update interim firmware 1.1?

here is a good article that guide us how to update it locally.

https://smartdomo.de/en/blogs/news/rauchmelder-sirene-direkt-ansteuern

    # access to you HA console and create the json file:
    cd /addon_configs/core_matter_server/updates/ 
    touch HeimanD1TestNet.json 
    nano HeimanD1TestNet.json

fill into HeimanD1TestNet.json:

    {
      "modelVersion": {
        "vid": 4619,
        "pid": 4099,
        "softwareVersion": 17,
        "softwareVersionString": "1.1",
        "cdVersionNumber": 1,
        "softwareVersionValid": true,
        "otaUrl": "https://heimanfile.oss-cn-shenzhen.aliyuncs.com/eb1257c6c4c544a8bca90e5b17bf896e.ota",
        "otaChecksum": "Oan8n6XrxFSvCaHguD9Jt2hxmVM+XnnVWAn8gV1FEjM=",
        "otaChecksumType": 1,
        "minApplicableSoftwareVersion": 1,
        "maxApplicableSoftwareVersion": 1000
      }
    }
  1. restart your Matter server:

  2. navigate to your smoke alarm page again, when you click the update, it will indicates you version 1.1

  3. Waiting for the update to complete, and wait a while, reinteview your device again, it will shows 1.1 version:

  4. remove the json file and restart Matter Server, and now, you should able to update to version 1.5

  5. when you finished the ota process to 1.5, you may need to re-pair the smoke alarm, after re-onboard, you should see the version has shown version 1.5.

Some users and we have tested it but if you still encountering issues, please let us know or leave comments below.

Optional firmware with on/off Siren:

if you would like to use the siren, please update to v4.1 version, you can update it to v4.1 from v1.5 directly, it will exposes an on/off to HA and other ecosystems.

    {
     "modelVersion":{
     "vid":4619,
     "pid":4099,
     "softwareVersion":65,
     "softwareVersionString":"4.1",
     "cdVersionNumber":1,
     "softwareVersionValid":true,
     "otaUrl":"https://heimanfile.oss-cn-shenzhen.aliyuncs.com/15527c11ab2b4ef2be6ab16cabac7d78.ota",
     "otaChecksum":"QlCSt7yawYykPNUC8lVzrSO+jnhS3uuSXUDnPwJEWn0=",
     "otaChecksumType":1,
     "minApplicableSoftwareVersion":1,
     "maxApplicableSoftwareVersion":1000
      }
    }

Updates:
the ota with matter.js is different from the phyton js. see: https://github.com/matter-js/matterjs-server#importing-custom-ota-firmware-files

2 Likes

Just came here to say that I love these smoke sensors. I have a few of HS1SA-M, the Matter-enabled ones. They are HW ver. 0.0, built in 2024 and they are amazing. Not to mention the super low profile.

The only problem was getting these updated from firmware version 1.0 to the latest, which was a pain in the butt. I had to work around it with HA, and at some point I was afraid they might have been bricked, but they came up again, and yes: I had to re-add them in Apple Home and Home Assistant. Anyway, GREAT device, very poor update experience.

It would be great if you could indicate if anything has changed between these manufacturing dates: 2024-2026.

for pre 2025 hardware versions, I would simplify the update procedure a bit, assuming all is done via the Advanced SSH & Web Terminal addon:
1 - Remove from Apple Home or any other home assistant/controlled, besides. the HOME ASSISTANT
2 - Execute:

cd /addon_configs/core_matter_server/updates/ 
touch HeimanD1TestNet.json 
<< cat EOF >> HeimanD1TestNet.json
{
      "modelVersion": {
        "vid": 4619,
        "pid": 4099,
        "softwareVersion": 17,
        "softwareVersionString": "1.1",
        "cdVersionNumber": 1,
        "softwareVersionValid": true,
        "otaUrl": "https://heimanfile.oss-cn-shenzhen.aliyuncs.com/eb1257c6c4c544a8bca90e5b17bf896e.ota",
        "otaChecksum": "Oan8n6XrxFSvCaHguD9Jt2hxmVM+XnnVWAn8gV1FEjM=",
        "otaChecksumType": 1,
        "minApplicableSoftwareVersion": 1,
        "maxApplicableSoftwareVersion": 1000
      }
    }
EOF

ha addons restart core_matter_server

curl -X POST \
  -H "Authorization: Bearer $SUPERVISOR_TOKEN" \
  -H "Content-Type: application/json" \
  http://supervisor/core/api/services/homeassistant/restart
1 Like

Thanks @snevs for loving it.
Update it via Home assistant is much more easier than Apple home, as well as Beta version, but I am happy to answer and fix it if there is any questions.

The reason you need to re-pair the device is updating it to matter 1.4 from matter 1.2, something changed in the firmware, so it needs an extra step, but that is an option to update the matter 1.2 to matter 1.4.

For the matter 1.4 version, it should update fine without any extra steps.

Tha’t good point, but I will strongly recommend to focus on the latest version, I listed some update histories above.

Thanks for sharing your update procedures.

Hey, came here to not only say thank you for surfacing this - but also to add that a 4.2 version is available in the website you linked (in German) and I’ve jumped from 1.5 to 4.2 through the newest matter.js, which took some learnings I wanted to share.

  1. The JSON is not required anymore
  2. Enable Use the latest beta version and Enable test-net DCL usage both in the Matter Server app
  3. Discard the documentation asking you to add a command line argument for –ota-provider-dir, the application already adds it with the options configured
  4. Upload the 4.2 firmware file (*.ota) from the JSON (link) to /addon_configs/core_matter_server/updates
  5. File Editor is the easiest way to do this (as described already in the guide)
  6. Key action is to rename the long hexadecimal file name to a shorter version, 0x120B-0x1003-HeimanUpdate.ota works
  7. Easiest way to know that it works is to check if the Matter Server deletes that file after you re/start it.

Have fun!

Side note - it’d be interesting to see an official Heiman page allowing us to download those firmware updates. I would also love to see clarity as there’s a commitment by EoApril to introduce the Siren switch as a Siren (currently it’s a light, you can change it with two template helpers, first to switch, then to siren), but it’s also stated that who’s on 4.2 can’t revert back, and it’s unclear if the April update will be for both versions, but I’d expect not as they’d then have equal functionalities!

2 Likes

Hey ErMejoo,
Thanks so much for sharing your update process!", that’s helpful for someone has started to using matterjs, thanks again for that.

Regarding the Siren version, I am working closely with Ingo who developed the matterJS to add custom functions to HomeAssistant, hopefully, we can managed it work by May 2026.

We will probably merged the two versions together, so users are should able to use Siren entity in HA instead of a light.

1 Like

Does anyone have issues with this entity lossing the connection?

I have many issues with the fire alarm becomming unavailable for different periods sometime as long as 8-12 hours, sometimes 1 hour or less.

It was a bit more stable on version 1.5 but I upgraded to version 1.6 and now it does not stay “connected” for longer than 24 hours :confused:

My ikea door sensor sitting next to it has much less issues being connected.

Both matter ofcourse.

are you using Ikea hub as OTBR?

Nope, I’m using a SLZB-06Mg24

I had tested it for a month before release it, Can I DM you?

I have 2 HS1SA-M detectors connected via matter to home assistant. Border router is google nest hub. They worked fine for about a week and then started becoming unavailable. I updated them to FW1.6 out of the box, they were on 1.0. Deleting and rejoining fixes it, bu I have no idea for how long.

Mine has literally just done the same. Automation fired to notify me when its status changed to unavailable. I’m running an ESP Thread Border Router, two Onvis Matter/Thread plugs and an ESP32-C6 (for testing). Total distance between any point is max 4m and the plugs respond instantly.
There was a Matter server update the other day and installing that did cause my automation to fire because it was unavailable whilst Matter restarted.
I’ve just tried moving the smoke alarm much closer to a plug (it’s not mounted yet) and it made no difference. Doing a ping in Matter (Settings > Devices > Matter > device > three dot menu under Device Info) seems to have brought it back online.
I’m suspecting it could be a firmware issue - I can’t rule in/out the Matter server update as it wasn’t running long enough before.

Thanks for sharing, if it still has an issue, please let me know.

Hi Gareth,
did you powered off any AC thread devices? like unplug the Onvis plug and connected it back?

Morning leoXie. No, nothing changed. My Thread network only exists to play with Thread and I want to use it to install a few smoke alarms when I move house. I want remote notifications and I want alarms on multiple floors interlinked. I think I can do that with your product and Home Assistant. The other alarms can be triggered either by using the siren function in another firmware you were talking about or just triggering the test function. It needs to be reliable though. I don’t think it’s my Thread network at fault as everything else was ok at the time and the distances are small. It might even be the Matter later that is at fault as I was able to ping the device and then it came back to life.
I’m happy to send you any diagnostics that might help.

Smoke sensor (4099)
by HEIMAN
Firmware: 1.6
Hardware: 0.0
Serial number: 26020204099000749

I deleted and readded one sensor and that fixed it. For the other one, I used a wait and see approach and after about 42 hours, it rejoined the matter network and has been online since. Something of interest is that both sensors left the network within a 2 hour window. Other matter devices stayed connected and have never became unavailable.

Came here to check in, too, as I just experienced the same. Two alarms showed up unavailable very close to each other, from a timing perspective, the rest of the network is stable, just these two went unavailable 4hrs. back. One of them came back online, the second not yet. Both on v4.2, Matter server updated to the 10th Apr release. No network changes nor router disconnection, and there’s three OTBR in the network from Home Assistant (ZBT-2), Aquara (M3) and Tado (Receiver X). It doesn’t seem a coincidence that we’re a few users seeing the same thing. A third smoke sensor did not experience this, and another 4xCO sensors from Heiman also kept online.

Have the same problem 2 of 11 smoke detectors are online after 1.6 update. 9 others needs a reset

I also notice a battery drain on 2 of 9 unavailable smoke detectors as they are beeping

I have devices in Apple Home, too. The latest status is with Firmware v1.5. Since then, devices are offline in Apple Home.

Hi Cenedd,
Thanks for the feedback and I am sorry for the issue, I have fixed a bug, we will release a new firmware, would you like to have a try?

Hi Ermejoo,
Thanks for the feedback and I am sorry for the issue, I have fixed a bug, we will release a new firmware.

1 Like

Hi Idominiki,
I will investigate on it. sorry for the issue.