Skip to main content

ISEO Argo BLE Lock Integration

HACS Home Assistant License

A Home Assistant custom component and command-line utility for controlling ISEO smart locks via Bluetooth Low Energy (BLE).

This integration makes Home Assistant behave as a native ISEO ARGO Gateway, providing a professional-grade implementation with specialized commands and real-time monitoring.

[!IMPORTANT]

This project is not affiliated with ISEO, Argo, or Home Assistant and is not an official product. This is an independent implementation for interoperability with the Argo lock system. Use at your own risk. All trademarks and rights reserved to their respective owners.

✨ Features

  • 🚀 Native Performance: Uses specialized Gateway commands for fast response times and improved reliability.
  • 🤫 Silent Operation: Access-log reads use specialized unread-log commands that do not trigger the lock's audible "beep."
  • 👤 User Attribution: Attributes remote operations to the specific Home Assistant user. Audit logs will show "Opened by [HA User] via Home Assistant."
  • 🔓 Lock Control: Remotely unlock your ISEO smart lock with real-time feedback.
  • 📊 Full Audit Logs: Access every log entry found on the lock, with automatic mapping to Home Assistant users.
  • 🔐 Secure Authentication: Uses EC cryptography (SECP224R1) for secure session establishment.
  • 📡 Local Control: Direct Bluetooth communication without any cloud dependencies or bridge hardware.

📡 State Updates (Passive, No Polling)

This integration is push-based. Door status, battery level, and lock modes are read from the lock's passive BLE advertisements, so Home Assistant does not connect to the lock on a timer. The lock is only actively connected to on demand: when you open it, and once per physical door-open to read the access log and attribute the event to a user.

[!WARNING] Do not run admin operations on a timer on recent ISEO firmware. Repeating an admin-authenticated operation on a schedule — in testing, a background sync of the lock's user list every 10 minutes — eventually triggers a firmware fault. After a few weeks the lock crashes and stops responding entirely, Bluetooth included, and the only way to recover it is a full power cycle by removing and reinserting the batteries.

The interval was not the problem, and neither is connecting as such. Reading the door state does not use admin commands and is safe to repeat. For this reason the user list is read once at setup and then only on demand (a user toggle, or the options "refresh users" step), and the access log is read only when a door-open is detected.

Door state is read from advertisements regardless, because that reports changes as they happen instead of once per poll interval and costs the lock nothing.

The crash was observed on the following firmware (ISEO X1R Smart):

Component Hardware version Software version
Main board VMNFS20-8 MH15K230
Bluetooth module VMN500-3 MH14K082
External plate VMN470-4 MH10M006

(Internal plate firmware not reported.) You can find these values in the Argo app under the lock's device information.

🚀 Quick Start

Prerequisites

  • Home Assistant with Bluetooth support.
  • ISEO Smart lock (X1R Smart, Smart Series, etc.).
  • Physical Master Card for the lock (required for setup).

Installation via HACS (Recommended)

Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.

  1. Click the button above, or open HACS → Integrations → ⋮ → Custom repositories and add https://github.com/FezVrasta/iseo-argo-ble with category Integration.
  2. Find "ISEO Argo BLE Lock" in HACS and install it.
  3. Restart Home Assistant.

🔧 Configuration

The integration uses a streamlined "Direct Master Registration" flow.

  1. Add Integration: Go to Settings > Devices & Services > Add Integration and search for "ISEO Argo BLE Lock".
  2. Discovery: Select your lock from the discovered Bluetooth devices.
  3. Register Gateway: When prompted, click Submit, then scan your physical Master Card on the lock within 30 seconds. The lock will blink green once the card is read successfully.
  4. Fetch Users: Click Submit again and scan the Master Card one more time within 30 seconds to download the lock's whitelist.
  5. Map Users: Link your physical credentials (RFID tags, PINs, phones) to your Home Assistant user accounts.

👥 User Mapping

Once configured, you can use the Configure button on the integration page to refresh the user mapping. This allows you to:

  • Link an RFID tag or PIN to a specific person in Home Assistant.
  • See exactly who opened the door in the Home Assistant Logbook.
  • Attribute remote openings via the Home Assistant UI to the specific HA user who clicked the button.

Entity Information

Lock Entity

  • Domain: lock
  • State: locked / unlocked
  • Attributes:
    • door_state: Open/closed status
    • battery_level: Battery percentage
    • last_event: The last recorded action (e.g., "Opened by Marco")

⚠️ Troubleshooting

"No backend with an available connection slot"

  • The lock only supports one active connection. Ensure the Argo app is closed on your phone and no other device is connected to the lock.

"Auth failed" during Master Card scan

  • Ensure you click Submit in Home Assistant before scanning the card. The lock must be expecting the command when the card is scanned.

Lock has become completely unresponsive (no Bluetooth, no app, no HA)

  • On recent ISEO firmware this is the firmware fault described above, seen after weeks of an older version of this integration syncing the user list on a timer. Recover it with a full power cycle: remove the batteries, wait a few seconds, then reinsert them. Update to the latest version, which only reads the user list at setup and on demand, to prevent it recurring.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • ISEO and Argo for creating the smart lock system.
  • The Home Assistant community for the excellent integration platform.
  • Contributors to the protocol documentation and implementation.

⚖️ Legal

This project is for educational and personal use only. The developers are not responsible for any damage or malfunction of your smart lock. Always ensure you have alternative access methods to your property.

European Interoperability Rights

Under European Union law, particularly Article 6 of the EU Software Directive (2009/24/EC), the development of interoperable software solutions may be permitted when necessary to achieve interoperability with independently created programs. This project aims to provide interoperability with existing smart lock systems for legitimate use cases.

Important: This information is provided for general awareness only and does not constitute legal advice. Laws vary by jurisdiction and specific circumstances. Users should consult with qualified legal counsel regarding the applicability of interoperability provisions in their specific situation and jurisdiction.

Release files for iseo-argo-ble 0.9.10

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iseo-argo-ble 0.9.10
File Size Uploaded
iseo_argo_ble-0.9.10.tar.gz 30.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iseo-argo-ble 0.9.10
File Interpreter ABI Platform
iseo_argo_ble-0.9.10-py3-none-any.whl Python 3 none any Details

Total release size: 62.0 kB

Release files / iseo_argo_ble-0.9.10.tar.gz

Download URL iseo_argo_ble-0.9.10.tar.gz
Size 30.5 kB
Tags Source
SHA-256 checksum
How to use checksums
44abf17b128235469e46ed27423e8d48e693238d95dfb6239d47dc05cc820fbb
BLAKE2b-256 checksum
How to use checksums
5f161629dc33c9b4845dfa5b5dba74b3b0d740180d1cda745eaf1ae1f9e11189
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.

Transparency log

Release files / iseo_argo_ble-0.9.10-py3-none-any.whl

Download URL iseo_argo_ble-0.9.10-py3-none-any.whl
Size 31.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7082e3f0e712637b5d03364b8b1d212fe871d5a82126ffa58256539c50ef884f
BLAKE2b-256 checksum
How to use checksums
839aee27c285cf2ae0d7b51c9c11a8c48cbb8f1998be5bbb9d141fcdece41986
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.9.10 This release

2 release files

0.9.9

2 release files

0.9.8

2 release files

0.9.7

2 release files

0.9.6

2 release files

0.9.5

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.10

2 release files

0.7.9

2 release files

0.7.8

2 release files

0.7.7

2 release files

0.7.6

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.7

2 release files

0.5.6

2 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page