Hardware

RSS for tag

Delve into the physical components of Apple devices, including processors, memory, storage, and their interaction with the software.

Posts under Hardware subtopic

Post

Replies

Boosts

Views

Activity

MatterSupport MatterExtension RequestHandler never triggered
Hi everyone, I try to understand Matter Support and how to get the onboardingPayload from the commissionDevice func. I followed the docs from https://developer.apple.com/documentation/mattersupport/adding-matter-support-to-your-ecosystem I also added the Matter Extension, added the NSBonjourServices, included the Matter Extension and did .perform(). The UI shows up correctly and I can scan the QR-Code, which shows pair it to your ecosystem. I launched the extension via Xcode in my application, but the RequestHandler isn't triggering. Did I miss something? Can someone point me into the right direction please?
4
0
443
Jan ’25
Disk Utility errors with internal SSD under Sequoia
I have a 2019 iMac 5K with an Apple 2TB internal, which I've been using since June 2019. DriveDx says the drive is working correctly and has 94% of lifetime remaining. When I switched from Sonoma to Sequoia, I backed everything up several ways, reformatted the internal, installed 15.0 from a USB drive, copied all of my data back and then installed each app one by one. For years I generally ran Disk Utility every couple of weeks and never had any problems. Because I've had lots of software problems running Sequoia, I've tried just about every version of the OS--release, public beta and developer beta. Right now I'm running 15.3 beta 2. When I installed this version, I reformatted the internal drive, installed 15.3 beta 2 and restored my programs and data from Time Machine. After that I ran Disk Utility. At the top level, Apple SSD SM2048L..., showed no errors and neither did any of the drives below the top. But after a few days if I run Disk Utility, Container disk3 shows errors, as does the bottom Macintosh HD. See bellow. And this happens after every fresh install. Good and clean for a couple of days, then the errors in Disk Utility start showing up. These errors have apparently caused no problems, but I'd like to get them fixed. How do I do it as Disk Utility is not fixing them? And because I'm having these errors in DU is my internal going bad? I know Disk Utility shows it's performing repairs and the disk is OK afterward, but it's apparently not as I get the same result every time I run Disk Utility. Thank you for your help. /Users/imac4/Desktop/Disk Utility/Screenshot 2025-01-16 at 8.42.58 AM.jpg
4
0
366
Jan ’25
Motherboard connection to screen
My phone broke a little bit ago, with the screen either flashing green or it being green continuously. I asked somebody who would know and he said that the connection from the motherboard to the screen is messed up. It’s refurbished so that makes sense. Since then, the issue has gone away. it stopped a few days ago but I have insurance on it through a third party and I’m wondering if I should still make a claim.
2
0
341
Jan ’25
Core motion attitude reference frame
I am working on an iOS application that relies on CoreMotion Attitude, and I need clarification regarding the behavior of reference frames. According to the documentation, when setting the attitude reference frame to CMAttitudeReferenceFrameXTrueNorthZVertical: The Z-axis of the reference frame is vertical (aligned with gravity). The X-axis of the reference frame points to the geographic North Pole (True North). When a device’s orientation matches this reference frame, the roll, pitch, and yaw values reported by CMAttitude should be (0,0,0). However, in my testing: When I align the device’s position with the CMAttitudeReferenceFrameXTrueNorthZVertical reference frame by orienting the screen (device Z-axis) upward and the right side (device X-axis) toward north, the yaw value reported by CMAttitude is 90 degrees instead of the expected 0 degrees. To have CMAttitude report yaw as 0, I must instead orient the top side (device Y-axis) toward north. This seems to contradict my understanding that the X-axis of the device should be aligned with True North, to have the device match the attitude reference frame and have roll, pitch, and yaw values reported by CMAttitude should be (0,0,0). What I'm missing? Thank you for your time and assistance.
1
0
397
Jan ’25
MFi - ATS iAP2 Session Test Crash
We just updated our ATS to the latest 8.3.0 version and tried to run the iAP2 Session Test via BPA100 Bluetooth Analyzer and we are experiencing this EXC_BAD_INSTRUCTION. This same test still seems to work on ATS version 6. Please advise. Process: ATS [1782] Path: /private/var/folders/*/ATS.app/Contents/MacOS/ATS Identifier: com.apple.ATSMacApp Version: 8.3.0 (1826) Build Info: ATSMacApp-1826000000000000~2 (1A613) Code Type: X86-64 (Native) Parent Process: launchd [1] User ID: 501 Date/Time: 2025-01-27 11:05:21.1334 -0800 OS Version: macOS 15.2 (24C101) Report Version: 12 Bridge OS Version: 9.2 (22P2093) Anonymous UUID: 098E2BB5-CB98-CA1C-CEFE-188AF6EFE8CF Time Awake Since Boot: 9700 seconds System Integrity Protection: enabled Crashed Thread: 2 com.apple.ATSMacApp.FrontlineFrameworkInterface Exception Type: EXC_BAD_INSTRUCTION (SIGILL) Exception Codes: 0x0000000000000001, 0x0000000000000000 Termination Reason: Namespace SIGNAL, Code 4 Illegal instruction: 4 Terminating Process: exc handler [1782]
1
0
440
Mar ’25
Using iPhone Performance Gaming Tier with iPad Minimum Performance M1 won't allow install on iPhone 16 Pro Max
For the "Required device capabilities" in my info.plist I have: iPhone Performance Gaming Tier iPad Minimum Performance M1 But a beta test just informed me they cannot install on iPhone 16 Pro Max due to "incompatible hardware" I need to limit to iPhone 15 or newer and M1 or newer. I read that iPhone Performance Gaming Tier also limits iPads to M1 here: https://developer.apple.com/forums/thread/737946 Perhaps I should only use "iPhone Performance Gaming Tier" and by using "iPad Minimum Performance M1" it is not allowing it to be installed on an iPhone? It would be very nice if I could see what devices are supported by the current settings.
2
0
432
Feb ’25
Apple TV and connected TV restarting on Power off
Since tvOS 18.4 beta (22L5218l) i have the issue that When I turn off an Apple TV, the Apple TV and the connected TV turn off, but after a few seconds the devices start again. This never happened before. But now it is happening with 3 different Apple TV generations on 2 LG and 1 Telefunken TVs. All 3 Apple TV devices have been updated to tvOS 18.4 beta (22L5218l) and since then show this error.
2
0
354
Feb ’25
HID reports issue migrating from IOKit.hid to CoreHID
I have a command line utility I wrote that has been working great up until Sequoia that reads the macro keys from a Logitech G600 gaming mouse and turns it in to custom commands. it was using the following code, checking if usage was 0x80: IOHIDManagerRegisterInputValueCallback( g600HIDManager, { _, returnResult, callbackSender, valueRef in let elem = IOHIDValueGetElement(valueRef) let usage = IOHIDElementGetUsage(elem) let pressed = IOHIDValueGetIntegerValue(valueRef) Now i'm having issues with opening the HID manager: IOHIDManagerOpen(g600HIDManager, IOOptionBits.zero) After changing the system security from permissive to restrictive, It's giving the error code 0xE00002E2, or no permission. I can't easily add the sandbox entitlements as this is just a simple CLI application, not a bundled app, and even after setting back to csrutil disable, i'm still getting this error. So now i'm trying to turn it in to a bundled app and use CoreHID instead. Unfortunately I'm not getting any notifications that aren't the mouse itself. From the above code that was working before, i was looking for usage values of 0x80. I'm guessing that directly corresponds to the usage 0x80 in the HID descriptor. I am receiving notifications via await deviceClient!.monitorNotifications(reportIDsToMonitor: [] , elementsToMonitor: [] ) which should pick up everything for the device. I know the usage i'm looking for is referenced in the device client because it's in the deviceClient.elements collection. So is there something in CoreHID that specifically blocks Vendor specified Usage pages from being picked up by notifications? I've also tried just requesting the elements using let elemToMon = await deviceClient?.elements.filter({ ele in return ele.usage.page == 0xFF80 && ele.usage.usage == 0x80 }) let request = HIDDeviceClient.RequestElementUpdate(elements: elemToMon!) let results = await deviceClient!.updateElements([request]) but that call errors (still trying to figure out exactly how it errors). Any help would be appreciated, either in figuring out why i'm not getting the HID reports in question using CoreHID, or even what has changed that is causing me to not be able to use IOKit.hid anymore. Thanks in advance! For reference, here's the decoded HID descriptor: 0x05, 0x01, // Usage Page (Generic Desktop Ctrls) 0x09, 0x06, // Usage (Keyboard) 0xA1, 0x01, // Collection (Application) 0x85, 0x01, // Report ID (1) 0x05, 0x07, // Usage Page (Kbrd/Keypad) 0x19, 0xE0, // Usage Minimum (0xE0) 0x29, 0xE7, // Usage Maximum (0xE7) 0x15, 0x00, // Logical Minimum (0) 0x25, 0x01, // Logical Maximum (1) 0x75, 0x01, // Report Size (1) 0x95, 0x08, // Report Count (8) 0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) 0x75, 0x08, // Report Size (8) 0x95, 0x05, // Report Count (5) 0x15, 0x00, // Logical Minimum (0) 0x26, 0xA4, 0x00, // Logical Maximum (164) 0x19, 0x00, // Usage Minimum (0x00) 0x2A, 0xA4, 0x00, // Usage Maximum (0xA4) 0x81, 0x00, // Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) 0xC0, // End Collection 0x06, 0x80, 0xFF, // Usage Page (Vendor Defined 0xFF80) 0x09, 0x80, // Usage (0x80) 0xA1, 0x01, // Collection (Application) 0x85, 0x80, // Report ID (-128) 0x09, 0x80, // Usage (0x80) 0x75, 0x08, // Report Size (8) 0x95, 0x05, // Report Count (5) 0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) 0x85, 0xF6, // Report ID (-10) 0x09, 0xF6, // Usage (0xF6) 0x75, 0x08, // Report Size (8) 0x95, 0x07, // Report Count (7) 0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) 0x85, 0xF0, // Report ID (-16) 0x09, 0xF0, // Usage (0xF0) 0x95, 0x03, // Report Count (3) 0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) 0x85, 0xF1, // Report ID (-15) 0x09, 0xF1, // Usage (0xF1) 0x95, 0x07, // Report Count (7) 0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) 0x85, 0xF2, // Report ID (-14) 0x09, 0xF2, // Usage (0xF2) 0x95, 0x04, // Report Count (4) 0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) 0x85, 0xF3, // Report ID (-13) 0x09, 0xF3, // Usage (0xF3) 0x95, 0x99, // Report Count (-103) 0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) 0x85, 0xF4, // Report ID (-12) 0x09, 0xF4, // Usage (0xF4) 0x95, 0x99, // Report Count (-103) 0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) 0x85, 0xF5, // Report ID (-11) 0x09, 0xF5, // Usage (0xF5) 0x95, 0x99, // Report Count (-103) 0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) 0x85, 0xF6, // Report ID (-10) 0x09, 0xF6, // Usage (0xF6) 0x95, 0x07, // Report Count (7) 0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) 0x85, 0xF7, // Report ID (-9) 0x09, 0xF7, // Usage (0xF7) 0x75, 0x08, // Report Size (8) 0x95, 0x1F, // Report Count (31) 0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) 0xC0, // End Collection
17
0
533
Mar ’25
missing openssl/bn.h in Dockkit ADK 1.0
I downloaded "Dockkit ADK 1.0" and trying to compile, and some openssl include .h files are missing, for example in HAPBoringSSL.c, the below files can't found: #include <openssl/bn.h> #include <openssl/evp.h> #include <openssl/hkdf.h> #include <openssl/hmac.h> #include <openssl/rand.h> where can I get these .h files? I'm worrying about the version conformance if I fetch these files from internet.
2
0
315
Mar ’25
macOS maximum CPU usage of application
My audio and MIDI sequencer application consumes about 600 % of CPU power with 10 different instruments during playback. While idle approximately 100%. What is the maximum of CPU power that an application can consume? Are there any limits and could they be modified? I am asking because if I add more instruments the real-time behaviour gets bad at 700 % of CPU power. I have got following HW: MacBook Pro 14-inch, Nov 2024 Apple M4 Pro 24 GB
1
0
185
Mar ’25
Rear Camera Not Working After iOS 18.3.1 Update – Crash Log Analysis
Hello, Since updating to iOS 18.3.1, the rear camera on my iPhone 13 Pro Max has not been functioning properly. The Camera app displays a black screen and becomes unresponsive. I analyzed the crash logs and found that the issue is related to the cameracaptured process, which handles image and video capture on iOS. Here are the key details from the crash log: 📌 Memory Error: "Address size fault" 📌 Impacted Thread: com.apple.coremedia.capturesession.workerQueue The "Address size fault" error suggests a memory access issue, likely causing the cameracaptured process to crash. This could be due to a bug in the video capture thread management introduced in the update. What do you think? name":"cameracaptured","timestamp":"2025-03-12 10:37:31.00 +0100","app_version":"1.0","slice_uuid":"cc45251e-92fc-329d-a3e9-d1c8c019e59e","build_version":"587.82.13","platform":2,"share_with_app_devs":0,"is_first_party":1,"bug_type":"309","os_version":"iPhone OS 18.3.2 (22D82)","roots_installed":0,"incident_id":"E97F5B3A-345F-42A6-97E8-28D175C8C5A9","name":"cameracaptured"} { "uptime" : 820, "procRole" : "Unspecified", "version" : 2, "userID" : 501, "deployVersion" : 210, "modelCode" : "iPhone14,3", "coalitionID" : 75, "osVersion" : { "isEmbedded" : true, "train" : "iPhone OS 18.3.2", "releaseType" : "User", "build" : "22D82" }, "captureTime" : "2025-03-12 10:37:30.1093 +0100", "codeSigningMonitor" : 2, "incident" : "E97F5B3A-345F-42A6-97E8-28D175C8C5A9", "pid" : 68, "translated" : false, "cpuType" : "ARM-64", "roots_installed" : 0, "bug_type" : "309", "procLaunch" : "2025-03-12 10:04:03.7137 +0100", "procStartAbsTime" : 225890551, "procExitAbsTime" : 19918403953, "procName" : "cameracaptured", "procPath" : "/usr/libexec/cameracaptured", "bundleInfo" : {"CFBundleVersion":"587.82.13","CFBundleShortVersionString":"1.0"}, "parentProc" : "launchd", "parentPid" : 1, "coalitionName" : "com.apple.cameracaptured", "crashReporterKey" : "137125638e43c62173057ae3dc983089b1f083cf", "appleIntelligenceStatus" : {"state":"unavailable","reasons":["siriAssetIsNotReady","selectedLanguageIneligible","selectedLanguageDoesNotMatchSelectedSiriLanguage","notOptedIn","deviceNotCapable","selectedSiriLanguageIneligible","countryLocationIneligible","unableToFetchAvailability","assetIsNotReady"]}, "wasUnlockedSinceBoot" : 1, "isLocked" : 0, "throttleTimeout" : 5, "codeSigningID" : "com.apple.cameracaptured", "codeSigningTeamID" : "", "codeSigningFlags" : 570434305, "codeSigningValidationCategory" : 1, "codeSigningTrustLevel" : 7, "instructionByteStream" : {"beforePC":"BgCA0hUnFpTgAxOqIaSGUiFLu3KJJBaU4AMTqqfYDZTozSGQAFEC+Q==","atPC":"IAAg1KiDW/jJkB+QKd1B+SkBQPk/AQjrAQEAVP17Uqn0T1Gp9ldQqQ=="}, "bootSessionUUID" : "33672FC1-99EC-48FC-8BCD-2B96DF170CC3", "basebandVersion" : "4.20.03", "exception" : {"codes":"0x0000000000000001, 0x00000001a93909f0","rawCodes":[1,7134054896],"type":"EXC_BREAKPOINT","signal":"SIGTRAP"}, "termination" : {"flags":0,"code":5,"namespace":"SIGNAL","indicator":"Trace/BPT trap: 5","byProc":"exc handler","byPid":68}, "os_fault" : {"process":"cameracaptured"}, "faultingThread" : 4, "threads" : [{"id":1699,"threadState":{"x":[{"value":268451845},{"value":21592279046},{"value":8589934592},{"value":28600187224064},{"value":0},{"value":28600187224064},{"value":2},{"value":4294967295},{"value":18446744073709550527},{"value":2},{"value":0},{"value":0},{"value":0},{"value":6659},{"value":0},{"value":0},{"value":18446744073709551569},{"value":6677212688,"symbolLocation":56,"symbol":"clock_gettime"},{"value":0},{"value":4294967295},{"value":2},{"value":28600187224064},{"value":0},{"value":28600187224064},{"value":6126594600},{"value":8589934592},{"value":21592279046},{"value":21592279046},{"value":4412409862}],"flavor":"ARM_THREAD_STATE64","lr":{"value":7911718552},"cpsr":{"value":4096},"fp":{"value":6126594448},"sp":{"value":6126594368},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":7911704456},pc":{"value":7911704456},"far":{"value":0}},"queue":"com.apple.main-thread","frames":[{"imageOffset":6024,"symbol":"mach_msg2_trap","symbolLocation":8,"imageIndex":10},{"imageOffset":20120,"symbol":"mach_msg2_internal","symbolLocation":80,"imageIndex":10},{"imageOffset":19888,"symbol":"mach_msg_overwrite","symbolLocation":424,"imageIndex":10},{"imageOffset":19452,"symbol":"mach_msg","symbolL
1
0
290
Mar ’25
Present CardSession multiple times
I'm developing a ticket app with Host card emulation. The session starts correctly the first time, but when trying to emulate a second ticket, after the first one has been read by the reader, or after the emulation has been canceled by the user, it doesn't work correctly for a while. This is my CardSessionManager: import CoreNFC @available(iOS 17.4, *) class CardSessionManager { private static var cardSession: CardSession? = nil private static var presentmentIntent: NFCPresentmentIntentAssertion? = nil static func initCardSession(_ accessCode: String) { cardSession?.invalidate() cardSession = nil let ProcessAPDU: (_: Data) -> Data = { capdu in var response = Data(accessCode.utf8) response.append(0x90) response.append(0x00) return response } Task { guard NFCReaderSession.readingAvailable, CardSession.isSupported, await CardSession.isEligible else { return } do { presentmentIntent = try await NFCPresentmentIntentAssertion.acquire() cardSession = try await CardSession() } catch { return } if let cardSession { for try await event in cardSession.eventStream { switch event { case .sessionStarted: cardSession.alertMessage = String(localized: "Searching reader...") try await cardSession.startEmulation() case .readerDetected: cardSession.alertMessage = String(localized: "Reading...") case .readerDeselected: cardSession.alertMessage = String(localized: "Successful reading!") await cardSession.stopEmulation(status: .success) case .received(let cardAPDU): cardSession.alertMessage = String(localized: "Communicating with reader.") do { try await cardAPDU.respond(response: ProcessAPDU(cardAPDU.payload)) } catch { cardSession.alertMessage = error.localizedDescription } case .sessionInvalidated(reason: _): cardSession.alertMessage = String(localized: "Ending communication with reader.") presentmentIntent = nil @unknown default: break } } } } } }
1
0
64
Mar ’25
Find My Network System
Hey everyone, how’s it going? I’d like to know if, by enrolling in Apple’s MFi program, I’ll gain access to develop my own tags and my own app to track them using Apple’s Find network. I also read that there’s an estimated cost of $4 per device—does that apply to each device produced, or only at the time of registering the device, with no fee for additional units?
2
0
122
May ’25