{"id":29107435,"url":"https://github.com/thanoskas/arrowhead_alarm","last_synced_at":"2026-04-16T22:31:48.246Z","repository":{"id":300931112,"uuid":"1006420203","full_name":"thanoskas/arrowhead_alarm","owner":"thanoskas","description":"Home Assistant integration for Arrowhead alarm panels with advanced zone detection and multi-panel support","archived":false,"fork":false,"pushed_at":"2025-12-17T13:48:43.000Z","size":1693,"stargazers_count":1,"open_issues_count":1,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-21T02:09:05.550Z","etag":null,"topics":["alarm","alarm-panel","arrowhead","custom-integration","eci","esx","hacs","home-assistant","home-automation","security"],"latest_commit_sha":null,"homepage":"https://github.com/thanoskas/arrowhead_alarm","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thanoskas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"contributing.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-06-22T08:19:47.000Z","updated_at":"2025-12-17T13:47:33.000Z","dependencies_parsed_at":"2025-06-24T10:44:50.941Z","dependency_job_id":"cf2c2ebe-79f1-4ff6-85e0-725824bcd201","html_url":"https://github.com/thanoskas/arrowhead_alarm","commit_stats":null,"previous_names":["thanoskas/arrowhead_alarm"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/thanoskas/arrowhead_alarm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thanoskas%2Farrowhead_alarm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thanoskas%2Farrowhead_alarm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thanoskas%2Farrowhead_alarm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thanoskas%2Farrowhead_alarm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thanoskas","download_url":"https://codeload.github.com/thanoskas/arrowhead_alarm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thanoskas%2Farrowhead_alarm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31907475,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-16T18:22:33.417Z","status":"ssl_error","status_checked_at":"2026-04-16T18:21:47.142Z","response_time":69,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["alarm","alarm-panel","arrowhead","custom-integration","eci","esx","hacs","home-assistant","home-automation","security"],"created_at":"2025-06-29T05:03:24.305Z","updated_at":"2026-04-16T22:31:48.237Z","avatar_url":"https://github.com/thanoskas.png","language":"Python","funding_links":["https://paypal.me/thanoskasolas"],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\u003ch1 style=\"font-size: 3em; margin: 0.5em 0;\"\u003eArrowhead Alarm Panel Integration for Home Assistant\u003c/h1\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/thanoskas/arrowhead_alarm/raw/main/docs/images/arrowhead_logo.png\" alt=\"Arrowhead Alarm Products\" width=\"200\"\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[![GitHub Release][releases-shield]][releases]\n[![GitHub Activity][commits-shield]][commits]\n[![License][license-shield]][license]\n[![HACS][hacs-shield]][hacs]\n[![Community Forum][forum-shield]][forum]\n\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003cstrong\u003eAdvanced Home Assistant integration for Arrowhead ECi Series alarm panels with MODE 4 protocol support, comprehensive zone detection, and individual area management.\u003c/strong\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003ch3\u003e📢 Important Version Notice\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eVersion 2.1.1+\u003c/strong\u003e: ECi Series only (MODE 4 support, enhanced features)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eVersion 1.x\u003c/strong\u003e: \u003ca href=\"https://github.com/thanoskas/arrowhead_alarm/tree/v1.0.0\"\u003eESX Elite-SX support available here\u003c/a\u003e\u003c/p\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cp\u003e\u003cstrong\u003eIntegration implemented by \u003ca href=\"https://smarthomehellas.gr\"\u003esmarthomehellas.gr\u003c/a\u003e supported by \u003ca href=\"https://iascom.gr\"\u003eiascom.gr\u003c/a\u003e\u003c/strong\u003e - \u003cstrong\u003eExclusive Greek Arrowhead Distributor\u003c/strong\u003e\u003c/p\u003e\n  \u003cimg src=\"https://github.com/thanoskas/arrowhead_alarm/raw/main/docs/images/smarthomehellas_logo.png\" alt=\"Smart Home Hellas\" width=\"120\"\u003e\n  \u003cimg src=\"https://github.com/thanoskas/arrowhead_alarm/raw/main/docs/images/iascom_logo.png\" alt=\"Iascom\" width=\"120\"\u003e\n\u003c/div\u003e\n\n---\n\n## 🎉 What's New in Version 2.2.0\n\n### Inproved event hadnling\n\n✅ Better commands handilg (handle message sequences)\n✅ Real-time updates (\u003c200ms instead of 0-30 sec)\n✅ No more \"Failed to bypass\" errors\n✅ Instant zone state changes\n✅ Responsive UI\n\n\n## 🎉 What's New in Version 2.1.1\n\n### 🚀 Full Individual Area Control\n\n**Two-Tier System:**\n- **Main Panel Entity**: Arms/disarms ALL areas simultaneously (MODE 4)\n- **Area Entities**: Individual control per area (MODE 4 ARM, MODE 2 DISARM)\n\n**Key Features:**\n- ✅ **Individual Area Arming**: ARMAREA/STAYAREA commands (requires P74E/P76E configuration)\n- ✅ **Individual Area Disarm**: Automatic MODE 2/4 switching for area-specific disarm\n- ✅ **Smart Protocol**: Client handles mode switching automatically\n\n**Panel Requirements:**\n- `P74E` - Configure areas for individual away arming\n- `P76E` - Configure areas for individual stay arming\n\n\u003e **Note**: Without P74E/P76E configuration, ARMAREA/STAYAREA will fail with ERR 2\n\n---\n\n## 📊 Version Comparison\n\n| Feature | v1.x | v2.1.1 |\n|---------|------|--------|\n| **Panel Support** | ESX + ECi | ECi Only |\n| **MODE 4 Protocol** | ❌ | ✅ Full Support |\n| **Individual Areas** | ❌ | ✅ Per-Area Control |\n| **Individual Disarm** | ❌ | ✅ MODE 2 Support |\n| **Keypad Alarms** | ❌ | ✅ Panic/Fire/Medical |\n| **Bulk Operations** | ⚠️ Limited | ✅ Full Support |\n| **Sealed Zones** | ⚠️ Basic | ✅ Enhanced |\n\n### 🚀 Major Changes\n\n- **🎯 ECi-Only Focus**: Streamlined exclusively for ECi Series panels\n- **🚀 MODE 4 Support**: Full support for firmware 10.3.50+ enhanced features\n- **🏠 Individual Area Panels**: Separate alarm panel entity for each configured area\n- **⚡ Enhanced Services**: 36+ services including bulk operations and keypad alarms\n- **🔍 Improved Detection**: Better zone detection with sealed zone support\n- **🐛 Bug Fixes**: Numerous fixes for stability and reliability\n- **📊 Better Monitoring**: Health tracking and improved diagnostics\n\n### 📦 Migration from v1.x\n\n**For ECi Users:**\n1. ✅ Backup your current configuration\n2. ✅ Remove v1.x integration\n3. ✅ Install v2.1.1\n4. ✅ Reconfigure with manual area specification\n5. ✅ Update automations with new entity IDs\n\n**For ESX Users:**\n- ❌ Stay on [v1.x](https://github.com/thanoskas/arrowhead_alarm/tree/v1.0.0) - ESX support removed in v2.0.1\n\n\u003e **Breaking Change**: Version 2.0.1+ only supports ECi Series panels. ESX Elite-SX users should continue using version 1.x.\n\n---\n\n## ⚠️ Panel Configuration Required\n\nBefore installing the Home Assistant integration, you **must** configure your Arrowhead ECi panel with the following settings:\n\n### Network Settings (P201E4E)\n\n- Enable **Serial Over IP** - This is required for TCP/IP communication with Home Assistant\n\n### Serial Port Options (P25E19-21E)\n\n- Enable **Serial Authorization** in Option C under the options tab\n- This setting is essential for the integration to authenticate with the panel\n\n### Configuration Steps\n\n1. **Access Panel Programming Mode**\n   - Enter installer/programming mode on your panel\n   - Navigate to the network and serial port settings\n\n2. **Configure Network Settings**\n   - Go to P201E4E (Network Settings)\n   - Enable Serial Over IP functionality\n   - Note the IP address and port (default: 9000)\n   - \n3. **~~Configure Serial Authorization~~** ⚠️ **DO NOT ENABLE**\n   - Navigate to P25E19-21E (Serial Port Options)\n   - Select Option C under the options tab\n   - ~~Enable Serial Authorization~~ **LEAVE DISABLED**\n    \n4. **Save Configuration**\n   - Save all changes and exit programming mode\n   - The panel may require a restart to apply network settings\n\n\u003e **Note**: Without these panel configurations, the Home Assistant integration will not be able to establish communication with your alarm system.\n\n---\n\n## Overview\n\nThis integration provides complete Home Assistant support for **Arrowhead ECi Series** alarm panels, featuring MODE 4 protocol support, advanced zone detection, and individual area management.\n\n### 🔹 Supported Panel: ECi Series\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/thanoskas/arrowhead_alarm/raw/main/docs/images/eci_panel.jpg\" alt=\"ECi Series Panel\" width=\"300\"\u003e\n\u003c/div\u003e\n\n**Key Specifications:**\n- Up to 248 zones\n- 32 outputs  \n- Dynamic zone detection\n- Multiple area support (up to 32 areas)\n- Zone expander compatibility\n- MODE 4 protocol (firmware 10.3.50+)\n\n**Compatible Firmware:**\n- ✅ ECi F/W Ver. 10.3.51 (MODE 4 fully functional)\n- ✅ ECi F/W Ver. 10.3.50 (MODE 4 supported)\n- ✅ Earlier firmware versions (MODE 1 fallback)\n\n---\n\n## 🎯 Key Features\n\n### 🏠 Comprehensive Device Support\n\n- **Main Alarm Control Panel** - Controls all areas together\n- **Individual Area Panels** - Separate panel entity for each configured area\n- **Zone Monitoring** - Individual sensors for zone state, alarms, troubles, and bypass\n- **System Status** - AC power, battery, phone line, and system health monitoring\n- **Output Control** - Switches for panel outputs (lights, sirens, automation)\n- **Zone Bypass** - Individual bypass buttons and bulk bypass services\n\n### 🚀 MODE 4 Enhanced Features (Firmware 10.3.50+)\n\n- **Keypad Alarms** - Trigger panic, fire, and medical alarms\n- **Enhanced Area Commands** - ARMAREA and STAYAREA for better area control\n- **User Tracking** - See which user armed/disarmed each area\n- **Enhanced Timing** - Precise entry/exit delay information\n- **Programming Queries** - Access panel configuration programmatically\n\n### 🔧 Advanced Configuration\n\n- **Auto Zone Detection** - Automatic discovery of configured zones\n- **Manual Area Config** - User-specified areas for maximum reliability\n- **Custom Zone Names** - Personalize zone names during setup or later\n- **Output Detection** - Automatic or manual output configuration\n- **Protocol Adaptation** - Automatic selection of best protocol for your firmware\n\n### 🛡️ Robust Operation\n\n- **Connection Management** - Automatic reconnection with exponential backoff\n- **Error Recovery** - Comprehensive error handling and status reporting\n- **Health Monitoring** - Track connection quality and success rates\n- **Performance Optimization** - Panel-specific timing and protocol selection\n\n---\n\n## ⚠️ Panel Configuration Required\n\nBefore installing the Home Assistant integration, you **must** configure your Arrowhead ECi panel with the following settings:\n\n### Network Settings (P201E4E)\n\n1. Access panel programming mode\n2. Navigate to **P201E4E** (Network Settings)\n3. Enable **Serial Over IP** functionality\n4. Note the IP address and port (default: 9000)\n\n### Serial Port Options (P25E19-21E)\n\n1. Navigate to **P25E19-21E** (Serial Port Options)\n2. Go to the **Options** tab\n3. Select **Option C**\n4. Enable **Serial Authorization**\n\n\u003e **Important**: Without these settings, the integration cannot communicate with your panel!\n\n---\n\n## 📥 Installation\n\n### HACS Installation (Recommended)\n\n1. **Add Custom Repository**:\n   - Open HACS in Home Assistant\n   - Click on \"Integrations\"\n   - Click the three dots menu (⋮) in the top right\n   - Select \"Custom repositories\"\n   - Add repository URL: `https://github.com/thanoskas/arrowhead_alarm`\n   - Select category: \"Integration\"\n   - Click \"Add\"\n\n2. **Install Integration**:\n   - Find \"Arrowhead Alarm Panel\" in HACS\n   - Click \"Download\"\n   - Restart Home Assistant\n\n3. **Add Integration**:\n   - Go to Settings → Devices \u0026 Services\n   - Click \"Add Integration\"\n   - Search for \"Arrowhead Alarm Panel\"\n   - Follow the configuration wizard\n\n\u003cdiv align=\"center\"\u003e\n\n[![Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.](https://my.home-assistant.io/badges/hacs_repository.svg)](https://my.home-assistant.io/redirect/hacs_repository/?owner=thanoskas\u0026repository=arrowhead_alarm\u0026category=integration)\n\n\u003c/div\u003e\n\n### Manual Installation\n\n1. **Download Files**:\n   ```bash\n   wget https://github.com/thanoskas/arrowhead_alarm/archive/refs/tags/v2.2.0.zip\n   unzip v2.2.0.zip\n   ```\n\n2. **Copy Integration**:\n   ```bash\n   cp -r arrowhead_alarm-2.2.0/custom_components/arrowhead_alarm /config/custom_components/\n   ```\n\n3. **Restart Home Assistant** and add the integration through the UI.\n\n---\n\n## ⚙️ Configuration\n\n### Quick Setup Wizard\n\nThe integration uses a **guided configuration wizard** with the following steps:\n\n1. **Connection Setup** - Enter IP address, port, and credentials\n2. **Zone Configuration** - Auto-detect zones or set manually\n3. **Area Configuration** - Specify which areas are active (manual, required)\n4. **Zone Naming** - Optionally customize zone names\n5. **Output Setup** - Specify number of outputs to control\n\n### Configuration Parameters\n\n| Parameter | Description | Default | Required |\n|-----------|-------------|---------|----------|\n| **Host** | IP address of ECi panel | - | Yes |\n| **Port** | TCP port for communication | 9000 | No |\n| **User PIN** | User number and PIN code | \"1 123\" | Yes |\n| **Username** | ~~Admin username~~ | \"admin\" | No |\n| **Password** | ~~Admin password~~ | \"admin\" | No |\n| **Areas** | Active areas (comma-separated) | \"1\" | Yes |\n| **Max Outputs** | Number of outputs to control | 4 | No |\n\n\n\n\u003e **⚠️ Authentication Note**: Username/password authentication is **NOT currently supported**. The ECi panel uses **no encryption** for TCP/IP communication. Only User PIN is required for arm/disarm operations.\n\n\n#### User PIN Format\n\nThe User PIN should be formatted as: `[User Number] [PIN Code]`\n\n- ✅ Correct: `\"1 123\"` (user 1 with PIN 123)\n- ✅ Correct: `\"2 456\"` (user 2 with PIN 456)\n- ❌ Wrong: `\"123\"` or `\"1123\"`\n\n#### Areas Configuration\n\nAreas must be manually specified as comma-separated numbers:\n\n- Single area: `\"1\"`\n- Multiple areas: `\"1,2,3\"`\n- Valid range: 1-32\n\n\u003e **Why Manual?** Area auto-detection can be unreliable. You know your system best!\n\n---\n\n## 🎛️ Entities Created\n\n### Alarm Control Panels\n\n- **Arrowhead ECi Series** - Main panel controlling all areas\n- **Arrowhead ECi Series Area 1** - Individual control for area 1\n- **Arrowhead ECi Series Area 2** - Individual control for area 2\n- *(Additional area panels for each configured area)*\n\nEach panel provides:\n- States: Disarmed, Armed Away, Armed Home, Pending, Triggered\n- Attributes: Zone status, system health, area information\n\n### Binary Sensors\n\n#### Zone Sensors (per configured zone)\n\n- **Zone [XXX]** - Zone open/closed state\n- **Zone [XXX] Alarm** - Zone alarm condition\n- **Zone [XXX] Trouble** - Zone trouble/fault condition\n- **Zone [XXX] Bypassed** - Zone bypass status\n\n#### System Sensors\n\n- **ECi AC Power** - Mains power status\n- **ECi Battery** - Battery status\n- **ECi Ready to Arm** - System ready state\n- **ECi Phone Line** - Phone line status\n- **ECi Dialer** - Dialer status\n- **ECi Fuse/Output** - Fuse and output status\n- **ECi Panel Tamper** - Tamper alarm status\n\n### Switches\n\n- **Output 1-32** - Control panel outputs (based on configuration)\n\n### Buttons\n\n- **Zone [XXX] Bypass** - Toggle zone bypass for each zone\n\n---\n\n## 🎮 Services\n\n### Main Panel Control\n\n```yaml\n# Arm all areas in away mode\nservice: arrowhead_alarm.arm_away\n\n# Arm all areas in stay/home mode  \nservice: arrowhead_alarm.arm_stay\n\n# Disarm all areas\nservice: arrowhead_alarm.disarm\ndata:\n  user_code: \"1 123\"  # Optional override\n```\n\n### Area-Specific Control\n\n```yaml\n# Arm specific area in away mode\nservice: arrowhead_alarm.arm_away_area\ndata:\n  area: 2\n  user_code: \"1 123\"  # Optional\n  use_mode_4: true    # Use MODE 4 if available\n\n# Arm specific area in stay mode\nservice: arrowhead_alarm.arm_stay_area\ndata:\n  area: 1\n  use_mode_4: true\n\n# Disarm specific area\nservice: arrowhead_alarm.disarm_area\ndata:\n  area: 2\n  user_code: \"1 123\"\n```\n\n### Keypad Alarms (MODE 4 Only)\n\n```yaml\n# Trigger keypad-based alarm\nservice: arrowhead_alarm.trigger_keypad_alarm\ndata:\n  alarm_type: panic  # panic, fire, or medical\n```\n\n### Bulk Operations\n\n```yaml\n# Arm multiple areas at once\nservice: arrowhead_alarm.bulk_arm_areas\ndata:\n  areas: [1, 2, 3]\n  mode: away  # away, stay, or home\n  delay: 1    # seconds between commands\n\n# Disarm multiple areas\nservice: arrowhead_alarm.bulk_disarm_areas\ndata:\n  areas: [1, 2]\n  delay: 1\n\n# Bulk zone bypass\nservice: arrowhead_alarm.bulk_bypass\ndata:\n  zones: [1, 2, 3, 5]\n  action: bypass  # or \"unbypass\"\n```\n\n### Output Control\n\n```yaml\n# Trigger output for duration\nservice: arrowhead_alarm.trigger_output\ndata:\n  output_number: 1\n  duration: 5  # seconds (0 = momentary)\n\n# Turn output on permanently\nservice: arrowhead_alarm.turn_output_on\ndata:\n  output_number: 2\n\n# Turn output off\nservice: arrowhead_alarm.turn_output_off  \ndata:\n  output_number: 2\n```\n\n### Zone Management\n\n```yaml\n# Bypass single zone\nservice: arrowhead_alarm.bypass_zone\ndata:\n  zone_number: 1\n\n# Remove zone bypass\nservice: arrowhead_alarm.unbypass_zone\ndata:\n  zone_number: 1\n```\n\n---\n\n## 🤖 Automation Examples\n\n### Basic Alarm Control\n\n```yaml\n# Arm when leaving home\nautomation:\n  - alias: \"Arm Alarm When Away\"\n    trigger:\n      - platform: zone\n        entity_id: device_tracker.phone\n        zone: home\n        event: leave\n    action:\n      - service: arrowhead_alarm.arm_away\n\n# Disarm when arriving\n  - alias: \"Disarm When Home\"\n    trigger:\n      - platform: zone\n        entity_id: device_tracker.phone  \n        zone: home\n        event: enter\n    action:\n      - service: arrowhead_alarm.disarm\n```\n\n### Area-Specific Arming\n\n```yaml\n# Arm ground floor at night\nautomation:\n  - alias: \"Arm Ground Floor Night\"\n    trigger:\n      - platform: time\n        at: \"23:00:00\"\n    action:\n      - service: arrowhead_alarm.arm_stay_area\n        data:\n          area: 1\n          use_mode_4: true\n```\n\n### Zone-Based Automations\n\n```yaml\n# Light when door opens\nautomation:\n  - alias: \"Front Door Light\"\n    trigger:\n      - platform: state\n        entity_id: binary_sensor.zone_001\n        to: 'on'\n    condition:\n      - condition: sun\n        after: sunset\n    action:\n      - service: light.turn_on\n        entity_id: light.front_porch\n\n# Notification for alarms\n  - alias: \"Zone Alarm Alert\"\n    trigger:\n      - platform: state\n        entity_id: binary_sensor.zone_001_alarm\n        to: 'on'\n    action:\n      - service: notify.mobile_app\n        data:\n          title: \"🚨 Security Alert\"\n          message: \"Front Door alarm!\"\n```\n\n### Smart Zone Bypass\n\n```yaml\n# Auto-bypass garage when door open\nautomation:\n  - alias: \"Bypass Garage Door Zone\"\n    trigger:\n      - platform: state\n        entity_id: binary_sensor.garage_door\n        to: 'on'\n    action:\n      - service: arrowhead_alarm.bypass_zone\n        data:\n          zone_number: 6\n          \n  - alias: \"Restore Garage Bypass\"  \n    trigger:\n      - platform: state\n        entity_id: binary_sensor.garage_door\n        to: 'off'\n        for: \"00:05:00\"\n    action:\n      - service: arrowhead_alarm.unbypass_zone\n        data:\n          zone_number: 6\n```\n\n---\n\n## 🔧 Troubleshooting\n\n### Connection Issues\n\n**Problem**: Cannot connect to panel  \n**Solutions**:\n- ✅ Verify IP address and port (default: 9000)\n- ✅ Check network connectivity\n- ✅ Ensure Serial Over IP is enabled (P201E4E)\n- ✅ Verify Serial Authorization enabled (P25E19-21E Option C)\n\n**Problem**: Authentication failed  \n**Solutions**:\n- ✅ Check User PIN format: `\"1 123\"` (with space!)\n- ✅ Verify username/password (default: admin/admin)\n- ✅ Ensure Serial Authorization is enabled\n- ✅ Try different user account\n\n### Zone Detection Issues\n\n**Problem**: Zones not detected  \n**Solutions**:\n- ✅ Check zones are configured in panel\n- ✅ Verify areas are active\n- ✅ Try manual zone configuration\n- ✅ Review P4075Ex responses in debug logs\n\n**Problem**: Wrong zone count  \n**Solutions**:\n- ✅ Override max zones in options\n- ✅ Check expander configuration\n- ✅ Verify zone programming\n\n### MODE 4 Issues\n\n**Problem**: MODE 4 features not working  \n**Solutions**:\n- ✅ Verify firmware is 10.3.50 or later\n- ✅ Check debug logs for MODE 4 activation\n- ✅ Ensure areas configured at P74E/P76E (if using ARMAREA/STAYAREA)\n\n### Performance Issues\n\n**Problem**: Slow or timeouts  \n**Solutions**:\n- ✅ Increase scan interval in options\n- ✅ Check network latency\n- ✅ Verify panel not overloaded\n- ✅ Consider firmware update\n\n### Debug Logging\n\n```yaml\n# configuration.yaml\nlogger:\n  default: warning\n  logs:\n    custom_components.arrowhead_alarm: debug\n```\n\n---\n\n## 🎨 Advanced Configuration\n\n### Custom Zone Names\n\nCustomize during setup or in integration options:\n\n```yaml\nZone 001: \"Front Door\"\nZone 002: \"Kitchen Window\"  \nZone 003: \"Living Room Motion\"\nZone 004: \"Basement Door\"\nZone 005: \"Garage Motion\"\n```\n\n### Multiple Panels\n\nEach panel needs a separate integration instance:\n1. Add first panel normally\n2. Add additional via \"Add Integration\"\n3. Use different IP addresses\n4. Entities get panel-specific names\n\n---\n\n## 📚 Supported Panel Models\n\n### ECi Series (Version 2.0.1+)\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/thanoskas/arrowhead_alarm/raw/main/docs/images/eci_panel.jpg\" alt=\"ECi Series Panel\" width=\"300\"\u003e\n\u003c/div\u003e\n\n- **ECi Pro** - ✅ Fully tested and supported\n- **ECi Standard** - ✅ Compatible\n- Other ECi variants - ⚠️ Should work (feedback welcome)\n\n**Firmware Compatibility:**\n- ✅ ECi F/W Ver. 10.3.51 (MODE 4 fully functional)\n- ✅ ECi F/W Ver. 10.3.50 (MODE 4 supported)\n- ✅ Earlier firmware versions (MODE 1 fallback)\n\n### ESX Elite-SX Series (Version 1.x Only)\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/thanoskas/arrowhead_alarm/raw/main/docs/images/esx_panel.jpg\" alt=\"ESX Elite-SX Panel\" width=\"300\"\u003e\n\u003c/div\u003e\n\n\u003e **⚠️ ESX Support**: ESX Elite-SX panels are supported in [version 1.x](https://github.com/thanoskas/arrowhead_alarm/tree/v1.0.0). Please use v1.x if you have an ESX panel.\n\n**ESX Features (in v1.x):**\n- Up to 32 zones\n- 16 outputs\n- RF supervision support\n- Dual area configuration\n- Tamper detection\n\n**To install v1.x for ESX panels:**\n```bash\n# Download v1.x release\nwget https://github.com/thanoskas/arrowhead_alarm/archive/refs/tags/v1.0.0.zip\n```\n\n---\n\n## 🤝 Contributing\n\nContributions welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.\n\n### Development Setup\n\n```bash\ngit clone https://github.com/thanoskas/arrowhead_alarm.git\ncd arrowhead_alarm\npip install -r requirements-dev.txt\npytest tests/\n```\n\n### Reporting Issues\n\nPlease include:\n- Home Assistant version\n- Integration version (2.1.0)\n- ECi firmware version\n- Debug logs (sanitized)\n- Steps to reproduce\n\n---\n\n## 📄 License\n\nMIT License - see [LICENSE](LICENSE) file.\n\n---\n\n## 🙏 Acknowledgments\n\n- **Arrowhead Alarm Products** - Panel documentation and support\n- **Home Assistant Community** - Testing and feedback\n- **HACS** - Distribution platform\n- **[Iascom.gr](https://iascom.gr)** - Greek Arrowhead distributor\n\n---\n\n## 🆘 Support \u0026 Community\n\n- **Issues**: [GitHub Issues](https://github.com/thanoskas/arrowhead_alarm/issues)\n- **Discussions**: [GitHub Discussions](https://github.com/thanoskas/arrowhead_alarm/discussions)\n- **Community**: [Home Assistant Forum](https://community.home-assistant.io/)\n- **Website**: [Smart Home Hellas](https://smarthomehellas.gr)\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\u003cstrong\u003e⭐ If this integration helps you secure your home, please star the repository!\u003c/strong\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003cstrong\u003e☕ Support Development\u003c/strong\u003e\u003cbr\u003e\nIf you find this project helpful:\u003cbr\u003e\u003cbr\u003e\n\u003ca href=\"https://paypal.me/thanoskasolas\"\u003e\u003cimg src=\"https://img.shields.io/badge/PayPal-Donate-blue.svg?style=for-the-badge\" alt=\"PayPal Donate\"\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\u003csub\u003eMade with ❤️ by \u003ca href=\"https://smarthomehellas.gr\"\u003eSmart Home Hellas\u003c/a\u003e\u003c/sub\u003e\n\u003c/div\u003e\n\n\u003c!-- Badge URLs --\u003e\n[releases-shield]: https://img.shields.io/github/release/thanoskas/arrowhead_alarm.svg?style=for-the-badge\n[releases]: https://github.com/thanoskas/arrowhead_alarm/releases\n[commits-shield]: https://img.shields.io/github/commit-activity/y/thanoskas/arrowhead_alarm.svg?style=for-the-badge\n[commits]: https://github.com/thanoskas/arrowhead_alarm/commits/main\n[license-shield]: https://img.shields.io/github/license/thanoskas/arrowhead_alarm.svg?style=for-the-badge\n[license]: https://github.com/thanoskas/arrowhead_alarm/blob/main/LICENSE\n[hacs-shield]: https://img.shields.io/badge/HACS-Custom-orange.svg?style=for-the-badge\n[hacs]: https://github.com/hacs/integration\n[forum-shield]: https://img.shields.io/badge/community-forum-brightgreen.svg?style=for-the-badge\n[forum]: https://community.home-assistant.io/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthanoskas%2Farrowhead_alarm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthanoskas%2Farrowhead_alarm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthanoskas%2Farrowhead_alarm/lists"}