Communicate with, configure, and control home automation accessories using HomeKit.

HomeKit Documentation

Posts under HomeKit tag

53 Posts
Sort by:
Post not yet marked as solved
1 Replies
83 Views
Hello everyone, I'm trying to configure my WAC device trough an App. This App finds the device without problems using startSearchingForUnconfiguredAccessoriesMatchingPredicate but when I try to use configureAccessory method I get only 3 messages in Xcode and nothing happens. These messages are: 2024-03-14 12:55:56.261969+0000 App[1394:380785] ### WAC: -[EAWiFiUnconfiguredAccessoryBrowserManager configureAccessory:withConfigurationUIOnViewController:]_block_invoke_3:368 Other Region SKU 2024-03-14 12:55:56.266191+0000 App[1394:374248] ### WAC: _notificationCleanup:42 responseFlags: 3 ### WAC: _notificationCleanup:43 responseFlags: 3 For me they don't look like an Error but would be nice if someone could give me some advice on this, I didn't find nothing about it. Thanks in advance!
Posted
by ferkawii.
Last updated
.
Post not yet marked as solved
0 Replies
214 Views
Hi all, We are developing a Smart Home / IoT product that integrates into HomeKit. The integration is mostly done and interation with the product works great. We have only one problem: naming inside the home app. Each time we add one of our devices to the home app, the services names are changed to the name of the accessory. Here is an example with the homekit tree: Accessory Service: Accessory Information Characteristrics: name = "my accessory" Service: Light Bulb Characteristics: name = "light 1" Service: Light Bulb Characteristics: name = "light 2" Service: Light Bulb Characteristics: name = "light 3" Service: Light Bulb Characteristics: name = "light 4" Service: Temperature Sensor Characteristics: name = "temperature sensor 1" When adding this device with 4 lights and 1 temperature sensor to homekit, all the services inside the app gets renamed "my accessory". They do not keep their name. It is especially strange since HomeKit knows about the names of the services since if I modify the name of the first light, HomeKit will suggest (in the background on the text input in gray) to rename it "light 1". I know that my characteristics declaration are correct because I verified it with the HomeKit Accessory Tester. What I can do so that the services offered by my device are not renamed to the name of the accessory itself ? Thanks in advance.
Posted
by Fnx_QT.
Last updated
.
Post not yet marked as solved
0 Replies
161 Views
My matter accessory define an endpoint of type light, with a custom cluster. if I connect my accessory using Home app, I'm I supposed to find HMService/HMCharacteristic corresponding to my custom matter cluster? Is there any requirement on the custom cluster to have it visible in HomeKit ? Thanks.
Posted Last updated
.
Post not yet marked as solved
0 Replies
178 Views
Greetings! I've added a Matter accessory via the Apple Home app. In my app, I'm attempting to commission this device and add it to my fabric. However, when I try to open the commissioning window, I receive an error stating, MTRBaseDevice doesn't support openCommissioningWindowWithDiscriminator over XPC. It appears that opening a commissioning window via an XPC connection is not yet supported. Is there another method to commission the device? Can I retrieve the setup payload from the MTRBaseDevice object or the shared MTRDeviceController? Here's the simplified version of my code: var home: HMHome // HMHome received via HMHomeManager var accessory: HMAccessory = home.accessory[0] // my Matter-supported accessory let deviceController = MTRDeviceController.sharedController( withID: home.matterControllerID as NSCopying, xpcConnect: home.matterControllerXPCConnectBlock ) let device = MTRBaseDevice( nodeID: accessory.matterNodeID as NSNumber, controller: deviceController ) device.openCommissioningWindow( withDiscriminator: 0, duration: 900, queue: .main) { payload, error in if let payload { // payload not received } else if let error { // I'm getting here "Error Domain=MTRErrorDomain Code=6 "(null)"" // and "MTRBaseDevice doesn't support openCommissioningWindowWithDiscriminator over XPC" logged in the console print(error) }
Posted Last updated
.
Post not yet marked as solved
0 Replies
162 Views
Dear All, we have an old app that supports HomeKit. As company we exited the MFi program. Now we need to update the app to do some minor changes (XCode update, recompilation and Font changes). No firmware changes. Does it need to go through the certification process? Thanks
Posted
by dddppp.
Last updated
.
Post not yet marked as solved
0 Replies
180 Views
Home App is not picking up current state, for example if I open the door I push button() to open and set current->setVal(2), the app shows it as opening, but if my door has obstruction the gate controller will stop and reverse automatically and the current->setVal(1) will be triggered as the gate closes by the sensor. Mean wile home app will say its still opening even though the current state has been set and notified as closed.
Posted
by r0ssc0.
Last updated
.
Post not yet marked as solved
0 Replies
191 Views
It seems that HMHomeManager..accessories array lists everything... except HomePods and AppleTVs. Is there way to discover all HomePods? And once discovered, is there way to play sounds clips in some or all rooms in the house?
Posted Last updated
.
Post not yet marked as solved
0 Replies
192 Views
I have a custom device that connects to my swift app over BLE. The device can send commands, which need to be forwarded to HomeKit. This works when the app is open, but when it is in the background, I get: "Error turning off light: Missing entitlement for API." Is there a way to forward these controls from my app to HomeKit from the appplications background?
Posted
by vennk.
Last updated
.
Post not yet marked as solved
1 Replies
353 Views
I have been using the HomePod 17.3 Beta for while and wanted to reset it yesterday. Now I can not set up both my HomePods (one OG and one Mini) anymore. Setup with iPhone and iPad keeps failing after 2 minutes. When the Mini is plugged into the Mac and I click "restore" I get an error message "Update server could not be contacted". Any idea?
Posted Last updated
.
Post not yet marked as solved
1 Replies
234 Views
The Aqara D100 smart lock has an integrated doorbell. I can't see a way to integrate this into Homekit so I can have the doorbell sound on Homepod minis throughout the house.
Posted
by BronBB.
Last updated
.
Post not yet marked as solved
0 Replies
314 Views
Hi, Recently I bought 2 HomePod minis and placed them in my kitchen and bathroom. I have noticed that they keep their alarms/reminders device-local and take priority over any other device. For example I can hold up my phone, say something like "hey siri set alarm for 7am" and the kitchen echo will respond something like "none of your devices can do that" (obviously sound quality suffered from distance) or worse, it sets an alarm on the device not my phone, waking everyone in the household not just me. Another annoying habit it has is to set a reminder on one device, then later I say something like "cancel my reminders", accidentally the other HomePod picks it up, says something like "I cancelled all your reminders" then a few minutes later the first HomePod will still remind me - so it's not even shared across HomePods. Setting wake-up alarms gotten so bad and complicated (walk out of a room, whisper to the phone directly) I had to disable both HomePods from listening to "siri". Now all they are is expensive decoration (except when once a week we listen to some music on it). Is there no way to make HomePods not to be the highest priority devices and use alarms/reminders from the phone (like it does with shopping lists)? This annoying experience I would expect from MS and Alexa maybe, but not Apple.
Posted
by Carnifex.
Last updated
.
Post not yet marked as solved
0 Replies
352 Views
I tried to add my Eve Weather and Door & Window. It failed continuously and immediately with below log. Nov 23 16:24:50 iPhone-2 homed(HomeKitMatter)[173] <Error>: [589021415/1061261160] CHIP Stack is not running Nov 23 16:24:50 iPhone-2 homed(HomeKitMatter)[173] <Error>: [589021415/1061261160] CHIP Accessory pairing failed with error Error Domain=HAPErrorDomain Code=3 Nov 23 16:24:50 iPhone-2 homed(HomeKitDaemon)[173] <Error>: [188914BD-5163-425C-9E59-CAE9BFA1A288] Failed to stage CHIP accessory pairing for request UUID <private>: Error Domain=HMErrorDomain Code=18 "Pairing Failed" UserInfo={NSLocalizedDescription=Pairing Failed, NSUnderlyingError=0xc508b7df0 {Error Domain=HAPErrorDomain Code=3}} Nov 23 16:24:50 iPhone-2 homed(HomeKitDaemon)[173] <Notice>: Answering incoming message HMASC.m.stageCHIPAccessoryPairingInSteps (2D3E9A84-52E8-4614-8B79-A23A5DBC245D) from client 'HomeUIService' that does expect a response with error Error Domain=HMErrorDomain Code=18 "Pairing Failed" UserInfo={NSLocalizedDescription=Pairing Failed, NSUnderlyingError=0xc508b7df0 {Error Domain=HAPErrorDomain Code=3 "(null)"}} Nov 23 16:24:50 iPhone-2 homed(HomeKitMetrics)[173] <Error>: [188914BD-5163-425C-9E59-CAE9BFA1A288] tag="stagedPairingFailure" desc="Failed to stage CHIP accessory for request UUID" errorDomain="HMErrorDomain" errorCode="18" underlyingErrorDomain="HAPErrorDomain" underlyingErrorCode="3" Nov 23 16:24:50 iPhone-2 HomeUIService(HomeKit)[521] <Error>: [CF47D609-EF2F-44E3-96EC-89906F4F33C4] Failed to stage CHIP accessory pairing in steps: Error Domain=HMErrorDomain Code=18 UserInfo={NSLocalizedDescription=<private>, NSUnderlyingError=0x283431fe0 {Error Domain=HAPErrorDomain Code=3}}
Posted
by jm4-lee.
Last updated
.
Post not yet marked as solved
0 Replies
390 Views
Hello. I'd like to ask below issue. I have two SmartThings hub and one Matter device. After I add it to the first hub, and then share this to the second hub with QR code, it always fails with below log. (SmartThings app shows both MPC and QR code when sharing a device) with MPC code, it works fine with QR code, it always fails in HomeUIService default 23:15:16.895670+0900 homed >>> [E:42896i S:51446 M:229068112 (Ack:46785785)] (S) Msg RX from 0:FFFFFFFB00000000 [0000] --- Type 0001:09 (IM:InvokeCommandResponse) default 23:15:16.897723+0900 homed Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001 default 23:15:16.897753+0900 homed Failsafe disarmed default 23:15:16.897789+0900 homed Successfully finished commissioning step 'Cleanup' default 23:15:16.897823+0900 homed DeviceControllerDelegate Commissioning complete. NodeId 965088193 Status ../../../../../../../../Sources/CHIPFramework/connectedhomeip/src/controller/CHIPDeviceController.cpp:1405: CHIP Error 0x0000007E: Trying to add a NOC for a fabric that already exists default 23:15:16.897892+0900 proximitycontrold < 91167F44>: Needs to restart ranging session as guest default 23:15:16.897933+0900 homed SecureSession[0xda63c2b50]: Moving from state 'kActive' --> 'kPendingEviction' error 23:15:16.898150+0900 homed Creating NSError from ../../../../../../../../Sources/CHIPFramework/connectedhomeip/src/controller/CHIPDeviceController.cpp:1405: CHIP Error 0x0000007E: Trying to add a NOC for a fabric that already exists error 23:15:16.899257+0900 homed [965088193/1870446891] CHIP Accessory pairing failed: Error Domain=MTRErrorDomain Code=11 "The device is already a member of this fabric." UserInfo={NSLocalizedDescription=The device is already a member of this fabric.} error 23:15:16.901186+0900 homed [188914BD-5163-425C-9E59-CAE9BFA1A288] Failed to stage CHIP accessory pairing for request UUID <private>: Error Domain=HMErrorDomain Code=13 "Accessory is already paired" UserInfo={NSLocalizedDescription=Accessory is already paired, NSUnderlyingError=0xda63f4600 {Error Domain=HAPErrorDomain Code=18}} error 23:15:16.901587+0900 HomeUIService [34760036-B05B-475C-9C00-592445A9A053] Failed to stage CHIP accessory pairing in steps: Error Domain=HMErrorDomain Code=13 UserInfo={NSLocalizedDescription=<private>, NSUnderlyingError=0x2824bac70 {Error Domain=HAPErrorDomain Code=18}} default 23:15:16.901762+0900 homed Answering incoming message HMASC.m.confirmDeviceCredential (795677CF-21ED-4E60-A5D5-3A7BF67BACCB) from client 'HomeUIService' that does expect a response with error Error Domain=HMErrorDomain Code=13 "Accessory is already paired" UserInfo={NSLocalizedDescription=Accessory is already paired, NSUnderlyingError=0xda63f4600 {Error Domain=HAPErrorDomain Code=18 "(null)"}} default 23:15:16.902126+0900 HomeUIService -[HSSetupStateMachineCHIPPartnerConfiguration stageCHIPAccessory]_block_invoke Staged CHIP accessory without stagedCHIPAccessoryPairingIdentifier as it is already paired. error 23:15:16.902254+0900 homed [188914BD-5163-425C-9E59-CAE9BFA1A288] tag="stagedPairingFailure" desc="Failed to stage CHIP accessory for request UUID" errorDomain="HMErrorDomain" errorCode="13" underlyingErrorDomain="HAPErrorDomain" underlyingErrorCode="18" error 23:15:16.975718+0900 homed Creating NSError from /Library/Caches/com.apple.xbs/Sources/CHIPFramework/connectedhomeip/src/darwin/Framework/CHIP/MTRDeviceController.mm:701: CHIP Error 0x00000003: Incorrect state error 23:15:16.975922+0900 homed [965088193/1870446891] Error: Error Domain=MTRErrorDomain Code=6 "Invalid object state." UserInfo={NSLocalizedDescription=Invalid object state.}. Failed to establish a connection to the device for unpairing. The device will not be notified of removal error 23:15:16.979939+0900 homed Failed to remove keychain entry for accessory <HMDUnpairedHAPAccessory> - error Error Domain=HMErrorDomain Code=13 "Accessory is already paired" UserInfo={NSLocalizedDescription=Accessory is already paired, NSUnderlyingError=0xda63f4600 {Error Domain=HAPErrorDomain Code=18}}
Posted
by jm4-lee.
Last updated
.
Post not yet marked as solved
0 Replies
393 Views
Hello. I'd like to report something different behavior with before. In previous versions of iOS (16.1~), after completing Apple Home app → SmartThings iOS app Multi Fabric onboarding, there was only one iOS system fabric in the device's fabric list as shown below. Apple Home app Apple Keychain (iOS system fabric commissioned by the Apple Home app or SmartThings iOS app) SmartThings In iOS 16.6.1, after completing Apple Home app → ST iOS app Multi Fabric onboarding, the device's fabric list has been changed to include two iOS system fabrics as shown below. Apple Home app Apple Keychain (iOS system fabric commissioned by the Apple Home app) Apple Keychain (iOS system fabric commissioned by the SmartThings iOS app) SmartThings At this time, if the user removes the device from the SmartThings iOS app, only SmartThings fabric (4) will be deleted and Apple Keychain (3) will remain. Apple Home app Apple Keychain (iOS system fabric commissioned by the Apple Home app) Apple Keychain (iOS system fabric commissioned by the SmartThings iOS app) I'm afraid that it will fail if I try to add my device to Google Home or Alexa. Because max fabric count is 5 and it counts Apple keychain also. Is this behavior expected? Thanks.
Posted
by jm4-lee.
Last updated
.
Post not yet marked as solved
0 Replies
369 Views
According to information in repository, open source version of ADK is under Apache 2.0 license. „Under the Apache 2.0 license, end-users can create their own proprietary software and offer the licensed code of the original software to customers. End-users can utilize the Apache 2.0 license in any commercially licensed software or enterprise application for free.” Does this mean that it is possible to develop and sell devices using the open source ADK or publish, for example, an application using ADK on the App Store?
Posted
by opryszek.
Last updated
.
Post not yet marked as solved
0 Replies
343 Views
I am implementing WAC2 on mu Accessory my accessory is using WiFi my bridge is broadcasting beacons according to the WAC2 requirements. my iPhone is able to see the SSD of my device as HomeKit Accessory and it link me to the home app when I select the device SSID. when redirecting to the home app, it opens directly QR code scanner, I scan the old QR code of my device something like that (X-HM://0024BWBIC2V7B). But this will not proceed to connect to my device. Do I have use another QR code that contains SSID and passphrase? If o ho to generate this QR code ?
Posted Last updated
.
Post not yet marked as solved
0 Replies
312 Views
I am a newer to implement Homekit accessory. I got the HomeKit ADK 6.3 and saw the application code have "FirmwareUpdate" part. After traced the code and read the document about ADK's firmware update rule, I have some question about ADK's firmware update: It use the UARP to translate the image file and the image file need to package as the SuperBinary format? the image file will be fetch by controller and push to accessory? the accessory can't download the image file by itself directly? where is the image file path in accessory once the controller push the image to accessory? the firmware update processing should be implemented in the FwUpApplyStagedAssets function? To implement the firmware update feature of HomeKit ADK is must? or I can implement my own firmware update rule for my accessory? I saw the code of ADK's firmware update is enable by the HAVE_FIRMWARE_UPDATE definition. Hope someone can help me to clarify above questions. Thank you.
Posted Last updated
.