Skip to content

Releases: 1bobby-git/HA-iOS-ANCS

iOS ANCS 0.6.8 / Firmware 0.3.6

Choose a tag to compare

@github-actions github-actions released this 01 Sep 13:56
c5733c9

Home Assistant용 iOS ANCS 통합 0.6.8과 ESP32 펌웨어 0.3.6 릴리스입니다.

알림 전송 진단 개선

  • 설정 포털의 모호한 연결 장애 중 N건 제외 표시를 제거했습니다.
  • 전송 제외 누계를 MQTT 미연결, 정책 필터, 내부 처리 실패로 구분합니다.
  • 제외 수치가 현재 장애 상태가 아니라 부팅 후 누적값임을 명확히 표시합니다.
  • 현재 MQTT 연결 상태와 과거 제외 누계를 분리했습니다.

표시 예시: 부팅 후 제외 63건 · MQTT 미연결 60건 · 정책 필터 3건

펌웨어 0.3.6

  • 설정 포털에서 실제 iPhone 알림 없이 테스트 알림을 발송할 수 있습니다.
  • MQTT 연결 직후 Home Assistant Discovery를 우선 발행합니다.
  • MQTT 상태를 2초마다 갱신하고 구체적인 오류 원인을 표시합니다.
  • MQTT 재시도에 5초, 15초, 30초, 최대 60초 백오프를 적용했습니다.
  • 중복 MQTT 재연결 요청을 차단합니다.
  • BLE 인증이 3회 연속 실패하면 무한 재연결을 중지하고 복구 방법을 표시합니다.
  • 고정 PIN 대신 장치별 무작위 6자리 등록 코드를 사용합니다.
  • 설정 AP 접속자 제한, PMF, HTTP LRU 및 소켓 제한을 적용했습니다.

검증

  • ESP32, ESP32-C2, ESP32-C3, ESP32-C5, ESP32-C6, ESP32-C61, ESP32-S3 빌드 성공
  • Python 3.14 / Home Assistant 2026.7.3 기준 304개 테스트 통과
  • HACS 9개 검사 및 Hassfest 통과

설정 포털과 MQTT 진단 개선을 사용하려면 펌웨어 0.3.6을 보드에 다시 설치해야 합니다. HACS 통합 업데이트만으로 ESP32 펌웨어는 변경되지 않습니다.

iOS ANCS 0.6.7 / Firmware 0.3.5

Choose a tag to compare

@github-actions github-actions released this 01 Sep 07:43
0444e8b

Home Assistant용 iOS ANCS 통합 0.6.7과 ESP32 펌웨어 0.3.5 릴리스입니다.

Home Assistant 통합 0.6.7

  • 알림 저장을 2초 범위의 지연 병합 방식으로 최적화했습니다.
  • 엔티티 상태 반영은 지연하지 않으며 마지막 알림 복원 동작을 유지합니다.

ESP32 펌웨어 0.3.5

  • 설정 포털에서 BLE 연결 없이 ESP32 → MQTT → Home Assistant 테스트 알림을 전송할 수 있습니다.
  • MQTT Discovery를 연결 직후 우선 발행해 최초 기기 등록 시간을 수분에서 수초 수준으로 줄였습니다.
  • MQTT 상태를 2초마다 갱신하고 TCP 시간 초과, 포트 거부, 인증 거부와 다음 재시도 시간을 표시합니다.
  • MQTT 재연결을 5초 → 15초 → 30초 → 60초 백오프로 제한하고 중복 연결 시도를 차단했습니다.
  • BLE 인증 실패가 3회 반복되면 무한 재연결을 중지하고 iPhone 등록 복구 절차를 안내합니다.
  • 고정 PIN 대신 장치별 무작위 6자리 등록 코드를 사용합니다.
  • 설정 AP 접속자를 1명으로 제한하고 PMF, HTTP LRU 정리와 소켓 제한을 적용했습니다.

지원 대상: ESP32, ESP32-C2, ESP32-C3, ESP32-C5, ESP32-C6, ESP32-C61, ESP32-S3

펌웨어 0.3.4 사용자는 위 개선사항을 적용하려면 0.3.5로 다시 설치해야 합니다. 브라우저 설치 페이지에서 자신의 보드를 선택해 설치하십시오.

검증 결과: Python 3.14 및 Home Assistant 2026.7.3 기준 301개 테스트, HACS 9개 검사, Hassfest 검증을 모두 통과했습니다.

iOS ANCS 0.6.6

Choose a tag to compare

@1bobby-git 1bobby-git released this 12 Aug 07:00

Adds a companion-owned BLE connection diagnostic sensor derived from the existing MQTT Discovery device-status entity. MQTT devices and entities remain separate, enabled, and unmodified. No ESP32 firmware reflash is required.

iOS ANCS v0.6.5 / Firmware v0.3.4

Choose a tag to compare

@1bobby-git 1bobby-git released this 10 Aug 07:32

HACS

  • Added SmartThings Find-style manual custom repository installation steps to README.md and README.en.md.
  • Bumped the Home Assistant companion integration from 0.6.4 to 0.6.5.
  • MQTT Discovery and the separate MQTT/iOS ANCS device boundary are unchanged.

Firmware

  • ESP32 firmware remains v0.3.4; use the existing v0.6.4 firmware assets when a firmware image is needed.

Validation

  • 279 local pytest tests passed.
  • 152 repository tool/contract tests passed.
  • GitHub HACS and Hassfest validation passed on commit 87df6cca6a34ac92e0573353232ecd88ad9f9279.
  • Live Home Assistant HACS state verified installed=v0.6.5, latest=v0.6.5, and commit 87df6cc after restart.

iOS ANCS v0.6.4 / Firmware v0.3.4

Choose a tag to compare

@1bobby-git 1bobby-git released this 10 Aug 06:32

Improvements

  • Remove both redundant companion uptime sensors: Published at device uptime and Received at device uptime.
  • Migrate existing iOS ANCS config entries to remove only those two integration-owned sensor entities.
  • Keep the separate MQTT Discovery device, MQTT uptime entities, raw notification attributes, and MQTT payload fields enabled and unchanged.
  • Continue resolving localized app names directly through Apple ANCS with safe fallbacks.

Firmware

  • Firmware remains v0.3.4.
  • Factory images are attached for ESP32, ESP32-C2, ESP32-C3, ESP32-C5, ESP32-C6, ESP32-C61, and ESP32-S3.
  • Full SHA-256 fingerprints are attached and published in the repository.

Validation

  • 278 local pytest tests passed: 127 Home Assistant tests and 151 firmware/release contract tests.
  • Python byte-compilation and whitespace checks passed.
  • ESP32-C6 firmware v0.3.4 was physically flashed over USB while provisioning partitions were preserved.
  • The flashed C6 reported firmware v0.3.4 and MQTT online; fresh iPhone notification verification is pending BLE re-pair after a stale-key authentication failure.
  • GitHub HACS, Hassfest, and Pages workflows passed on commit be9119d.

iOS ANCS v0.6.3 / Firmware v0.3.4

Choose a tag to compare

@1bobby-git 1bobby-git released this 10 Aug 05:22
1bc9d36

Improvements

  • Resolve each installed app's localized Display Name directly through Apple ANCS.
  • Cache resolved app names only for the active iPhone connection session.
  • Preserve complete notifications when app-name lookup fails, falling back to the static mapping and then the original app ID.
  • Add an app-name truncation diagnostic binary sensor.
  • Remove the redundant companion published-at uptime sensor while retaining the raw published_at_ms field.
  • Keep the MQTT Discovery device and the separate iOS ANCS companion device independent and enabled.

Firmware

  • Firmware v0.3.4 factory images for ESP32, ESP32-C2, ESP32-C3, ESP32-C5, ESP32-C6, ESP32-C61, and ESP32-S3.
  • Full SHA-256 fingerprints are attached and published in the repository.

Validation

  • 278 local pytest tests passed (151 firmware/release contracts and 127 Home Assistant tests).
  • Python byte-compilation and whitespace checks passed.
  • All seven ESP-IDF 6.0.2 targets compiled, linked, and produced merged factory images.
  • GitHub HACS, Hassfest, and Pages workflows passed on merge commit 1bc9d36.
  • Fresh physical iPhone notification verification remains a post-deployment check.

iOS ANCS v0.6.2

Choose a tag to compare

@1bobby-git 1bobby-git released this 10 Aug 01:34

Fixes

  • Preserve the last complete ANCS notification in integration-private Home Assistant storage.
  • Restore all companion detail and binary sensor values after a Home Assistant restart even though the source notification topic is non-retained.
  • Seed persistence from the current MQTT Discovery source during the first v0.6.2 setup.
  • Never replay restored details as a new notification event.
  • Keep the existing MQTT Discovery device and entities unchanged and enabled.

Validation

  • 272 local pytest tests passed.
  • Python byte-compilation and whitespace checks passed.
  • GitHub HACS and Hassfest validation passed on commit 6837875.

iOS ANCS v0.6.1

Choose a tag to compare

@1bobby-git 1bobby-git released this 09 Aug 13:17

Renames the companion integration to iOS ANCS and moves all companion entities to a separate integration-owned device. Existing companion entity identities and history are preserved, while MQTT Discovery devices and entities remain unchanged and enabled.

HA iOS ANCS v0.6.0

Choose a tag to compare

@1bobby-git 1bobby-git released this 09 Aug 12:03

주요 변경

  • 기존 MQTT Discovery last_notification 센서를 자동으로 찾아 동일한 MQTT 기기에 통합 엔티티를 등록합니다. 수동 base topic 입력이 필요 없습니다.
  • ANCS 알림 전체 payload를 25개 sensor, 11개 binary_sensor, 1개 event로 제공합니다.
  • 긴 텍스트는 안전한 상태 미리보기와 full_value 속성으로 보존하고, raw_notification은 원본 JSON 전체를 유지합니다.
  • 기존 MQTT Discovery sensor, binary_sensor, button은 비활성화하거나 변경하지 않습니다.
  • 시작 순서에 따른 알림 누락, 미래 enum 값으로 인한 event 전달 중단, 재구성 후 고아 companion 엔티티 문제를 수정했습니다.

업데이트

HACS에서 HA iOS ANCS v0.6.0을 다시 다운로드한 뒤 Home Assistant를 재시작하세요. 기존 통합 항목은 필요하면 재구성에서 발견된 MQTT 기기를 선택할 수 있습니다.

검증

  • 266 pytest tests
  • Python compileall
  • HACS Action
  • Hassfest

HA iOS ANCS companion v0.5.1

Choose a tag to compare

@1bobby-git 1bobby-git released this 09 Aug 10:24
  • Keep source-backed ANCS event entities ready when the non-retained MQTT notification sensor is still unknown after Home Assistant startup.
  • Preselect the current MQTT device during reconfigure and conservatively infer recommended legacy topics such as ios-ancs/c6-2b20/state.
  • Move legacy event entities onto the existing MQTT device and remove only empty integration-owned orphan devices.
  • Verified with 245 tests plus HACS and Hassfest validation.

For an existing topic-based entry, update through HACS, restart Home Assistant, then use Reconfigure once; the matching MQTT device is selected automatically when the legacy topic follows the recommended format.