I'm working on a DriverKit driver. I have it running on macOS, including a very simple client app written in SwiftUI. Everything is working fine there. I've added iPadOS as a destination for the app as demonstrated in the WWDC video on DriverKit for iPadOS. The app builds and runs on my iPad, as expected (after a little work to conditionalize out my use of SystemExtensions.framework for installation on macOS). However, after installing and running the app on an iPad, the driver does not show up in Settings->General, nor in the app-specific settings pane triggered by the inclusion of a settings bundle in the app.
I've confirmed that the dext is indeed being included in the app bundle when built for iPadOS (in MyApp.app/SystemExtensions/com.me.MyApp.MyDriver.dext). I also can see in the build log that there's a validation step for the dext, and that seems to be succeeding.
I don't know why the app isn't being discovered -- or in any case surfaced to the user -- when the app is installed on the iPad. Has anyone faced this problem and solved it? Are there ways to troubleshoot installation/discovery of an embedded DriverKit extensions on iOS? Unlike on macOS, I don't really see any relevant console messages.
Drivers
RSS for tagUnderstand the role of drivers in bridging the gap between software and hardware, ensuring smooth hardware functionality.
Post
Replies
Boosts
Views
Activity
Upgraded my 2 machines to Sequoia 15 and consequently I am unable to print or scan with both machines.
A 3rd machine which is not upgraded as yet is unaffected. AirPrint from iPhones is not affected.
The printing process executes without error. The printer receives the job but does not actually execute the print. The machine behaves like the job in the queue is completed normally. No error message. Just no physical printout.
Happens with all applications.
When Scanning - fails to connect to device to enable scanning. error message after some time is attached
Hello, as the title says, I am trying to access Bluetooth in a system daemon. I am running on MacOS Sonoma 14.5.
When initializing Bluetooth, my daemon received Unauthorized state.
I have tried to add my daemon in the system settings (System Preferences > Security & Privacy > Privacy > Bluetooth) "Allow applications to access Bluetooth" by adding the program executable path defined by the entry Program of my system daemon as suggested here: https://developer.apple.com/forums/thread/662459.
But I am still having the issue.
Writing a system daemon with Bluetooth is not my final goal. The bigger picture is the smartcard reader driver with Bluetooth access which as the same issue and the solution is probably related.
I do not remember how but my smartcard reader driver use to work with Bluetooth but it does now with the same Unauthorized error.
As far as I can see daemon and smartcard drivers does not have support for entitlement.
Here are the logs for my sample system daemon:
my_daemon [0x6000011b0000] activating connection: mach=true listener=false peer=false name=com.apple.server.bluetooth.le.att.xpc
bluetoothd [0x7f804828e8a0] activating connection: mach=false listener=false peer=true name=com.apple.server.bluetooth.le.att.xpc.peer[76672].0x7f804828e8a0
bluetoothd Received XPC message "CBMsgIdCheckIn" from session ""
bluetoothd Received XPC check-in from session "my_daemon-5555494498236e3b5e2e395b93c13af176769937-peripheral-76672-67" fAccessLevel 0 fProgrammaticPairing 0 fLimitedForMediaAccess 0
bluetoothd Access level is less than kXPCAccessLevelSystem for session "my_daemon-5555494498236e3b5e2e395b93c13af176769937-peripheral-76672-67". Restricted state operation not allowed
bluetoothd Sending 'session attached' event for session "my_daemon-5555494498236e3b5e2e395b93c13af176769937-peripheral-76672-67"
bluetoothd Attached session for "my_daemon-5555494498236e3b5e2e395b93c13af176769937-peripheral-76672-67" with session: 0x7f804802d1b0, session handle: 0xef8d0000
bluetoothd Registering peripheral session "my_daemon-5555494498236e3b5e2e395b93c13af176769937-peripheral-76672-67" with backgrounding: off, persistence: off (CBSR) restoreID: (null)
bluetoothd Error getting Application State for <private>: <private>, 3
bluetoothd Error getting Application State for <private>: <private>, 3
bluetoothd Session "my_daemon-5555494498236e3b5e2e395b93c13af176769937-peripheral-76672-67" tccRequired : 1
bluetoothd ReadyForTCC. TCC required:1 fLimitedForMediaAccess:0 fDeviceAccessForMediaExtension:0
bluetoothd Session "my_daemon-5555494498236e3b5e2e395b93c13af176769937-peripheral-76672-67" : needsRestrictedStateOperation = 0, overrideRestrictedState = 0 , denylistMode = 0, receivesControllerBTClockEvents=0
my_daemon Received CBMsgIdReadyForTCC
my_daemon Running performTccCheck CBManager tccAvail 1, tccRequired 1
my_daemon TCC required
my_daemon [0x6000011b8000] activating connection: mach=true listener=false peer=false name=com.apple.tccd
my_daemon [0x6000011b8000] failed to do a bootstrap look-up: xpc_error=[3: No such process]
my_daemon [0x6000011b8000] invalidated after a failed init
my_daemon send_message_with_reply(): user tccd unavailable, sending 0x600000ab4000 to system tccd
my_daemon [0x6000011b4000] activating connection: mach=true listener=false peer=false name=com.apple.tccd.system
tccd [0x7fd4d1f7ed80] activating connection: mach=false listener=false peer=true name=com.apple.tccd.system.peer[76672].0x7fd4d1f7ed80
tccd REQUEST: tccd_uid=0, sender_pid=76672, sender_uid=0, sender_auid=-1, function=TCCAccessRequest, msgID=76672.1
tccd AUTHREQ_CTX: msgID=76672.1, function=<private>, service=kTCCServiceBluetoothAlways, preflight=no, query=1, client_dict=(null), daemon_dict=<private>
tccd AUTHREQ_ATTRIBUTION: msgID=76672.1, attribution={requesting={TCCDProcess: identifier=my_daemon-5555494498236e3b5e2e395b93c13af176769937, pid=76672, auid=0, euid=0, binary_path=/Users/olivier/daemon/my_daemon}, },
tccd AUTHREQ_SUBJECT: msgID=76672.1, subject=/Users/olivier/daemon/my_daemon,
tccd Refusing TCCAccessRequest for service kTCCServiceBluetoothAlways from client Sub:{/Users/olivier/daemon/my_daemon}Resp:{TCCDProcess: identifier=my_daemon-5555494498236e3b5e2e395b93c13af176769937, pid=76672, auid=0, euid=0, binary_path=/Users/olivier/daemon/my_daemon} in background session
tccd AUTHREQ_RESULT: msgID=76672.1, authValue=0, authReason=5, authVersion=1, error=(null),
tccd REPLY: (0) function=TCCAccessRequest, msgID=76672.1
my_daemon [0x6000011b4000] invalidated after the last release of the connection object
bluetoothd Received XPC message "CBMsgIdTCCDone" from session "my_daemon-5555494498236e3b5e2e395b93c13af176769937-peripheral-76672-67"
tccd [0x7fd4d1f7ed80] invalidated after getting a no-senders notification - client is gone
bluetoothd [0x7f80482820f0] activating connection: mach=true listener=false peer=false name=com.apple.tccd.system
tccd [0x7fd4d32585f0] activating connection: mach=false listener=false peer=true name=com.apple.tccd.system.peer[169].0x7fd4d32585f0
tccd REQUEST: tccd_uid=0, sender_pid=169, sender_uid=0, sender_auid=-1, function=TCCAccessRequest, msgID=169.48
tccd [0x7fd4d313d880] activating connection: mach=true listener=false peer=false name=com.apple.tccd
tccd [0x7fd4d313d880] failed to do a bootstrap look-up: xpc_error=[3: No such process]
bluetoothd [0x7f80482820f0] invalidated after the last release of the connection object
bluetoothd Bluetooth user permission alwaysAuth: denied
tccd [0x7fd4d313d880] invalidated after a failed init
tccd FORWARD: to=com.apple.tccd/0, request: {
require_purpose=<xpc_null>
service="kTCCServiceBluetoothAlways"
function="TCCAccessRequest"
preflight=true
target_token={pid:76672, auid:-1, euid:0}
TCCD_MSG_ID="169.48"
background_session=false
}
tccd REPLY: from=com.apple.tccd, reply: {
XPCErrorDescription="Connection invalid"
}
tccd forwardMessage error: Connection invalid.
tccd [0x7fd4d3152bf0] activating connection: mach=false listener=false peer=true name=com.apple.tccd.system.peer[169].0x7fd4d3152bf0
bluetoothd [0x7f80482820f0] activating connection: mach=true listener=false peer=false name=com.apple.tccd.system
tccd REQUEST: tccd_uid=0, sender_pid=169, sender_uid=0, sender_auid=-1, function=TCCAccessRequest, msgID=169.49
tccd [0x7fd4d32585f0] invalidated after getting a no-senders notification - client is gone
tccd [0x7fd4d1f4c810] activating connection: mach=true listener=false peer=false name=com.apple.tccd
tccd [0x7fd4d1f4c810] failed to do a bootstrap look-up: xpc_error=[3: No such process]
tccd [0x7fd4d1f4c810] invalidated after a failed init
tccd FORWARD: to=com.apple.tccd/0, request: {
require_purpose=<xpc_null>
service="kTCCServiceBluetoothAlways"
function="TCCAccessRequest"
preflight=true
target_token={pid:76672, auid:-1, euid:0}
TCCD_MSG_ID="169.49"
background_session=false
}
tccd REPLY: from=com.apple.tccd, reply: {
XPCErrorDescription="Connection invalid"
}
tccd forwardMessage error: Connection invalid.
Can anyone definitively say if USBDriverKit is supported on the new OS and 3.2 USB iPhone device? This would be a fantastic way to work with novel devices such as custom cameras. Thanks.
Investigating a kernel panic, I discovered that Apple Silicon Panic traces are not working with how I know to symbolicate the panic information. I have not found proper documentation that corrects this situation.
Attached file is an indentity-removed panic, received from causing an intentional panic (dereferencing nullptr), so that I know what functions to expect in the call stack. This is cut-and-pasted from the "Report To Apple" dialog that appears after the reboot:
panic_1_4_21_b.txt
To start, I download and install the matching KDK (in this case KDK_14.6.1_23G93.kdk), identified from this line:
OS version: 23G93
Kernel version: Darwin Kernel Version 23.6.0: Mon Jul 29 21:14:04 PDT 2024; root:xnu-10063.141.2~1/RELEASE_ARM64_T8122
Then start lldb from Terminal, using this command:
bash_prompt % lldb -arch arm64e /Library/Developer/KDKs/KDK_14.6.1_23G93.kdk/System/Library/Kernels/kernel.release.t8122
Next I load the remaining scripts per the instructions from lldb:
(lldb) settings set target.load-script-from-symbol-file true
I need to know what address to load my kext symbols to, which I read from this line of the panic log, after the @ symbol:
com.company.product(1.4.21d119)[92BABD94-80A4-3F6D-857A-3240E4DA8009]@0xfffffe001203bfd0->0xfffffe00120533ab
I am using a debug build of my kext, so the DWARF symbols are part of the binary. I use this line to load the symbols into the lldb session:
(lldb) addkext -F /Library/Extensions/KextName.kext/Contents/MacOS/KextName 0xfffffe001203bfd0
And now I should be able to use lldb image lookup to identify pointers on the stack that land within my kext. For example, the current PC at the moment of the crash lands within the kext (expected, because it was intentional):
(lldb) image lookup -a 0xfffffe001203fe10
Which gives the following incorrect result:
Address: KextName[0x0000000000003e40] (KextName.__TEXT.__cstring + 14456)
Summary: "ffer has %d retains\n"
That's not even a program instruction - that's within a cstring. No, that cstring isn't involved in anything pertaining to the intentional panic I am expecting to see.
Can someone please explain what I'm doing wrong and provide instructions that will give symbol information from a panic trace on an Apple Silicon Mac?
Disclaimers:
Yes I know IOPCIFamily is deprecated, I am in process of transitioning to DriverKit Dext from IOKit kext. Until then I must maintain the kext.
Terminal command "atos" provides similar incorrect results, and seems to not work with debug-built-binaries (only dSYM files)
Yes this is an intentional panic so that I can verify the symbolicate process before I move on to investigating an unexpected panic
I have set nvram boot-args to include keepsyms=1
I have tried (lldb) command script import lldb.macosx but get a result of error: no images in crash log (after the nvram settings)
Is there a way to detect at run-time whether the device supports USBDriverKit?
I explored Apple's Filtering Network Traffic sample.
I noticed for me, FilterDataProvider's startFilter method is called only when I make filterManager.grade = .inspector before calling filterManager.saveToPreferences.
Could someone help why the startFilter is not called when I leave the filterManager's grade property with it's default value. i.e NEFilterManagerGradeFirewall?
https://developer.apple.com/documentation/networkextension/filtering_network_traffic
The following exceptions occur when I try to archive a version of this app. It runs fine in DEBUG - ive bashed my head through all github forums and stack overflow posts trying all fixes:
deleting the duplicate pods in xcode - cause a hermes error which then fails ALL builds
the following all show the same symptoms (same error ONLY in an archive build)
adjusting pod file to eliminate duplicates
inserting a script in build phases
have checked info.plist, project.pbxproj and other key files
HELP... i need to get this published 4 weeks ago
Prepare build
error: Multiple commands produce '/Users/Library/Developer/Xcode/DerivedData/WildtrackProReact-ccekvzdhkorxtrauputwcraqedhf/Build/Intermediates.noindex/ArchiveIntermediates/WildtrackProReact/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/RCTI18nStrings.bundle'
note: Target 'React-Core-c704a495-RCTI18nStrings' (project 'Pods') has create directory command with output '/Users/Library/Developer/Xcode/DerivedData/WildtrackProReact-ccekvzdhkorxtrauputwcraqedhf/Build/Intermediates.noindex/ArchiveIntermediates/WildtrackProReact/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/RCTI18nStrings.bundle'
note: Target 'React-Core.common-RCTI18nStrings' (project 'Pods') has create directory command with output '/Users/Library/Developer/Xcode/DerivedData/WildtrackProReact-ccekvzdhkorxtrauputwcraqedhf/Build/Intermediates.noindex/ArchiveIntermediates/WildtrackProReact/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/RCTI18nStrings.bundle'
Multiple commands produce '/Users/Library/Developer/Xcode/DerivedData/WildtrackProReact-ccekvzdhkorxtrauputwcraqedhf/Build/Intermediates.noindex/ArchiveIntermediates/WildtrackProReact/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/RCTI18nStrings.bundle'
I am facing a problem as per the title. I tried possible options as per the guidance in other forums here but still facing the same problem. Even I can't connect my AirPods.
Is there any help?
Hello,
I am trying to get value of InterfaceClass for particular USB Device. I modified matching dictionary and added the property locationID property.
CFMutableDictionaryRef matchingDictionary = IOServiceMatching(kIOUSBInterfaceClassName);
if (!matchingDictionary)
{
return -1;
}
int32_t locationID = 0xffff;
CFNumberRef cfLocationID = CFNumberCreate(kCFAllocatorDefault, kCFNumberSInt32Type, &locationID);
CFDictionaryAddValue(matchingDictionary, CFSTR(kUSBHostPropertyLocationID), cfLocationID);
CFRelease(cfLocationID);
io_service_t ioService = IOServiceGetMatchingService(kIOMasterPortDefault, matchingDictionary);
if (!ioService)
{
return -1;
}
CFNumberRef cfInterfaceClass = (CFNumberRef)IORegistryEntrySearchCFProperty(ioService, kIOServicePlane, CFSTR(kUSBHostMatchingPropertyInterfaceClass), kCFAllocatorDefault, kNilOptions);
...
Unfortunately nothing is found and ioService is NULL. What can be wrong here?
Thank you in advance!
since the installation of iOS 18 beta 7 can no longer see my music in messenger note. Was there in beta 6.
need help to fix the bug.
Thanks
I created a camera extension project that required interaction via custom properties. I originally coded it on macOS 14.x. In the camera extension code, receiving and returning NSNumber values as shown in the code at the bottom.
The app was working perfectly until I went to test on mac 12.7.6. Under that version of macOS, the custom properties weren't working at all. I also saw lines in the logs like this:
CMIO_DAL_CMIOExtension_Stream.mm:1165:GetPropertyData 50 wrong 4cc format for key 4cc_back_glob_0000
which was totally perplexiing, because it was clear that the 4cc codes were fine under 13.x, especially given that the documentation for CMIOExtensionPropertyState clearly says that NSNumbers should be OK.
On a hunch, I changed the code to use NSString instead of NSNumber, and it started working again under 12.7.6.
So, my experience is that macOS 12.x doesn't allow you to use NSNumbers, but it happy with NSStrings.
Hope that saves someone else some time.
And here is is the code that worked on 14.x, but not on 12.x.
// 4cc constant
const CMIOExtensionProperty CMIOExtensionPropertyCustomPropertyData_BackgroundOption = @"4cc_back_glob_0000";
- (nullable CMIOExtensionDeviceProperties *)devicePropertiesForProperties:(NSSet<CMIOExtensionProperty> *)properties error:(NSError * _Nullable *)outError
{
// doesn't work on macOS 12.x, works on 14.x
CMIOExtensionDeviceProperties *deviceProperties = [CMIOExtensionDeviceProperties devicePropertiesWithDictionary:@{}];
if ([properties containsObject:CMIOExtensionPropertyCustomPropertyData_BackgroundOption]) {
NSNumber* nsBackgroundOption = [NSNumber numberWithUnsignedInt:(unsigned int)_backgroundOption];
CMIOExtensionPropertyState* state = [CMIOExtensionPropertyState propertyStateWithValue:nsBackgroundOption];
[deviceProperties setPropertyState:state forProperty:CMIOExtensionPropertyCustomPropertyData_BackgroundOption];
}
return deviceProperties;
}
- (BOOL)setDeviceProperties:(CMIOExtensionDeviceProperties *)deviceProperties error:(NSError * _Nullable *)outError
{
// doesn't work on macOS 12.x, works on 14.x
NSDictionary* devicePropertiesDict = [deviceProperties propertiesDictionary];
CMIOExtensionPropertyState* propState = nil;
propState = [devicePropertiesDict objectForKey:CMIOExtensionPropertyCustomPropertyData_BackgroundOption];
if (propState != NULL) {
NSNumber* nsBackgroundOption = [propState value];
if (nsBackgroundOption != NULL) {
uint32_t newBackgroundOption = [nsBackgroundOption unsignedIntValue];
if (newBackgroundOption != _backgroundOption) {
log_info(@"##### Set Background Option to %d", (int) newBackgroundOption);
}
_backgroundOption = newBackgroundOption;
}
}
return YES;
}
I struggle to add custom properties to my streams as described in the WWDC22 video https://developer.apple.com/videos/play/wwdc2022/10022/
minute 28:17
The speaker describes using this technique in his CIFilterCam demo (would the source code be available please?) to let the app control which filter the extension should apply.
Presumably, there's thus a way to:
1 - define a custom property in the camera extension's stream/device/provider?
2 - be able to use CoreMediaIO (from Swift?) in the app in order to set values of that custom property.
This is not documented anywhere I could find.
Help and sample code would be greatly appreciated.
Thank you.
Laurent
I am on a 2021 24" M-1 iMac running Sonoma 14.5. I've recently acquired Universal Audio's Apollo Twin X DAW. I'm recording with Logic Pro X software.
I've already gone through the Mac security instructions to get the Apollo Twin X installed, but I am getting little onscreen warnings from Apple saying that my set up may not be compatible with upcoming iOS updates. UA is pointing the finger at Apple. So, what gives? Will Apple updates welcoming Universal Audio Apollo Twin X into its world seamlessly? I am avoiding updating my iOS because of this issue.
Hi!
I'm trying to move from CoreMedio I/O DAL Plug-In to CoreMedia I/O camera extensions, announced in macOS 12.3.
I created a test extension, placed it inside my app bundle into Contents/Library/SystemExtensions and signed with codesigning certificate. But when I try to install my extension from inside my app, using this code (Swift):
func requestActivation() {
guard case .idle = status
else { fatalError("Invalid state") }
print("Requesting activation of extension \"\(extensionIdentifier)\"")
let req = OSSystemExtensionRequest.activationRequest(forExtensionWithIdentifier: extensionIdentifier, queue: DispatchQueue.main)
req.delegate = self
OSSystemExtensionManager.shared.submitRequest(req)
status = .requested
}
I'm getting an error:
OSSystemExtensionErrorDomain error 8: Code Signature Invalid
which is rather generic. Can anybody tell me what I am doing wrong? Or at least propose some steps to find it out?
I'm posting here entitlements and codesign output for my extension and containing application for further information.
kdg@admins-Mac-mini SystemExtensions % codesign -d --entitlements - ./com.visicom.VirtualCamera.avextension.systemextension
Executable=/Applications/VirtualCamera.app/Contents/Library/SystemExtensions/com.visicom.VirtualCamera.avextension.systemextension/Contents/MacOS/com.visicom.VirtualCamera.avextension
[Dict]
[Key] com.apple.security.app-sandbox
[Value]
[Bool] true
[Key] com.apple.security.application-groups
[Value]
[Array]
[String] 6SUWV7QQBJ.com.visicom.VirtualCamera
kdg@admins-Mac-mini /Applications % codesign -d --entitlements - ./VirtualCamera.app
Executable=/Applications/VirtualCamera.app/Contents/MacOS/VirtualCamera
[Dict]
[Key] com.apple.developer.system-extension.install
[Value]
[Bool] true
[Key] com.apple.security.app-sandbox
[Value]
[Bool] true
[Key] com.apple.security.application-groups
[Value]
[Array]
[String] 6SUWV7QQBJ.com.visicom.VirtualCamera
[Key] com.apple.security.files.user-selected.read-only
[Value]
[Bool] true
kdg@admins-Mac-mini SystemExtensions % codesign -dvvv ./com.visicom.VirtualCamera.avextension.systemextension
Executable=/Applications/VirtualCamera.app/Contents/Library/SystemExtensions/com.visicom.VirtualCamera.avextension.systemextension/Contents/MacOS/com.visicom.VirtualCamera.avextension
Identifier=com.visicom.VirtualCamera.avextension
Format=bundle with Mach-O universal (x86_64 arm64)
CodeDirectory v=20500 size=1553 flags=0x10700(hard,kill,expires,runtime) hashes=37+7 location=embedded
Hash type=sha256 size=32
CandidateCDHash sha256=25bd80657bfd6e0ab95467146c7b532817e9e520
CandidateCDHashFull sha256=25bd80657bfd6e0ab95467146c7b532817e9e5209fd50b0cb7ceef40dcfb40e8
Hash choices=sha256
CMSDigest=25bd80657bfd6e0ab95467146c7b532817e9e5209fd50b0cb7ceef40dcfb40e8
CMSDigestType=2
CDHash=25bd80657bfd6e0ab95467146c7b532817e9e520
Signature size=9006
Authority=Developer ID Application: Visicom Media Inc. (6SUWV7QQBJ)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=7 Jul 2022, 21:49:32
Info.plist entries=23
TeamIdentifier=6SUWV7QQBJ
Runtime Version=12.3.0
Sealed Resources version=2 rules=13 files=0
Internal requirements count=1 size=200
kdg@admins-Mac-mini /Applications % codesign -dvvv ./VirtualCamera.app
Executable=/Applications/VirtualCamera.app/Contents/MacOS/VirtualCamera
Identifier=com.visicom.VirtualCamera
Format=app bundle with Mach-O universal (x86_64 arm64)
CodeDirectory v=20500 size=1989 flags=0x10700(hard,kill,expires,runtime) hashes=51+7 location=embedded
Hash type=sha256 size=32
CandidateCDHash sha256=31e15fbbd436a67a20c5b58c597d8a4796a67720
CandidateCDHashFull sha256=31e15fbbd436a67a20c5b58c597d8a4796a6772020308fb69f4ee80b4e32788b
Hash choices=sha256
CMSDigest=31e15fbbd436a67a20c5b58c597d8a4796a6772020308fb69f4ee80b4e32788b
CMSDigestType=2
CDHash=31e15fbbd436a67a20c5b58c597d8a4796a67720
Signature size=9006
Authority=Developer ID Application: Visicom Media Inc. (6SUWV7QQBJ)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=7 Jul 2022, 21:58:09
Info.plist entries=20
TeamIdentifier=6SUWV7QQBJ
Runtime Version=12.3.0
Sealed Resources version=2 rules=13 files=4
Internal requirements count=1 size=188
Thanks in advance!
I have a xerox workcentre 2025 cannot scan
I always get the below message what can I do
Translated Report (Full Report Below)
Process: Scanner [1323]
Path: /Applications/Scanner.app/Contents/MacOS/Scanner
Identifier: COM.GILBERT.PhysicalScanner
Version: 1.6 (1.6)
App Item ID: 1521553621
App External ID: 837739896
Code Type: X86-64 (Translated)
Parent Process: launchd [1]
User ID: 501
Date/Time: 2024-08-13 18:39:31.5587 +0300
OS Version: macOS 14.6.1 (23G93)
Report Version: 12
Anonymous UUID: 7C7DF391-F1F6-6185-10D7-1063C7D7596A
Sleep/Wake UUID: B47B7F17-5F97-438D-9DC4-DB3CE78959E5
Time Awake Since Boot: 820 seconds
Time Since Wake: 295 seconds
System Integrity Protection: enabled
Notes:
PC register does not match crashing frame (0x0 vs 0x104A8E142)
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_INSTRUCTION (SIGILL)
Exception Codes: 0x0000000000000001, 0x0000000000000000
Termination Reason: Namespace SIGNAL, Code 4 Illegal instruction: 4
Terminating Process: exc handler [1323]
Error Formulating Crash Report:
PC register does not match crashing frame (0x0 vs 0x104A8E142)
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 Scanner 0x104a8e142 0x104a89000 + 20802
1 Scanner 0x104a9021b 0x104a89000 + 29211
2 Scanner 0x104a8dabc 0x104a89000 + 19132
3 AppKit 0x7ff819e427ed -[NSApplication(NSResponder) sendAction:to:from:] + 337
4 AppKit 0x7ff819e42663 -[NSControl sendAction:to:] + 86
5 AppKit 0x7ff819e42595 __26-[NSCell _sendActionFrom:]_block_invoke + 131
6 AppKit 0x7ff819e4249e -[NSCell _sendActionFrom:] + 171
7 AppKit 0x7ff819e423e6 -[NSButtonCell _sendActionFrom:] + 96
8 AppKit 0x7ff819e3f2d2 NSControlTrackMouse + 1823
9 AppKit 0x7ff819e3eb8f -[NSCell trackMouse:inRect:ofView:untilMouseUp:] + 125
10 AppKit 0x7ff819e3ea56 -[NSButtonCell trackMouse:inRect:ofView:untilMouseUp:] + 666
11 AppKit 0x7ff819e3de4b -[NSControl mouseDown:] + 666
12 AppKit 0x7ff819e3c7f3 -[NSWindow(NSEventRouting) _handleMouseDownEvent:isDelayedEvent:] + 4582
13 AppKit 0x7ff819db5857 -[NSWindow(NSEventRouting) _reallySendEvent:isDelayedEvent:] + 313
14 AppKit 0x7ff819db5503 -[NSWindow(NSEventRouting) sendEvent:] + 345
15 AppKit 0x7ff81a5681a0 -[NSApplication(NSEventRouting) sendEvent:] + 1456
16 AppKit 0x7ff81a122d2e -[NSApplication _handleEvent:] + 65
17 AppKit 0x7ff819c465aa -[NSApplication run] + 640
18 AppKit 0x7ff819c1a4f3 NSApplicationMain + 816
19 Scanner 0x104a8b0d9 0x104a89000 + 8409
20 dyld 0x204d8b345 start + 1909
Thread 1:: com.apple.rosetta.exceptionserver
0 runtime 0x7ff7ffd4c414 0x7ff7ffd48000 + 17428
Thread 2:: com.apple.NSEventThread
0 ??? 0x7ff8a6856a78 ???
1 libsystem_kernel.dylib 0x7ff81656808e mach_msg2_trap + 10
2 libsystem_kernel.dylib 0x7ff816576878 mach_msg2_internal + 84
3 libsystem_kernel.dylib 0x7ff81656f178 mach_msg_overwrite + 653
4 libsystem_kernel.dylib 0x7ff81656837d mach_msg + 19
5 CoreFoundation 0x7ff816685909 __CFRunLoopServiceMachPort + 143
6 CoreFoundation 0x7ff81668437c __CFRunLoopRun + 1371
7 CoreFoundation 0x7ff816683859 CFRunLoopRunSpecific + 557
8 AppKit 0x7ff819db329c _NSEventThread + 122
9 libsystem_pthread.dylib 0x7ff8165a818b _pthread_start + 99
10 libsystem_pthread.dylib 0x7ff8165a3ae3 thread_start + 15
Thread 3:
0 runtime 0x7ff7ffd6a94c 0x7ff7ffd48000 + 141644
Thread 4:
0 runtime 0x7ff7ffd6a94c 0x7ff7ffd48000 + 141644
Thread 5:
0 runtime 0x7ff7ffd6a94c 0x7ff7ffd48000 + 141644
Thread 6:
0 runtime 0x7ff7ffd6a94c 0x7ff7ffd48000 + 141644
Thread 7:
0 runtime 0x7ff7ffd6a94c 0x7ff7ffd48000 + 141644
Thread 8:
0 runtime 0x7ff7ffd6a94c 0x7ff7ffd48000 + 141644
Thread 9:
0 runtime 0x7ff7ffd6a94c 0x7ff7ffd48000 + 141644
Thread 0 crashed with X86 Thread State (64-bit):
rax: 0x00007f90ecfa0db0 rbx: 0x00007f90ecfa0db0 rcx: 0x00007f90ed0099f8 rdx: 0x00007ff85642ec60
rdi: 0x00007f90ed009000 rsi: 0x00007f90ecfa0d00 rbp: 0x000000030d8f4d50 rsp: 0x000000030d8f4c80
r8: 0x00007f90ed009038 r9: 0x000000000fff0b1a r10: 0x0000600000025920 r11: 0x00007ff91ddde92e
r12: 0x0000000000000001 r13: 0x0000600001307020 r14: 0x0000000000000000 r15: 0x00006000013070a8
rip: rfl: 0x0000000000000246
tmp0: 0x0000000104a8e142 tmp1: 0x0000000000000216 tmp2: 0x0000000104ab6d80
in ios18 whatsapp does not appear in carplay
crashlog-BBC50CC6-272F-4066-A066-C2547619E566.txt
since I downloaded the iOS 18.1 beta, my twint apps aren‘t working anymore
They crash as soon as i select the app icon
Here is project I am researching: https://developer.apple.com/documentation/hiddriverkit/handling_stylus_input_from_a_human_interface_device
I have a Touch screen and I want:
can control this screen, I can enable extension and control Touch screen successfully.
can pen on this screen. To do this, I need to send X,Y to StylusApp(AppKit) But I Can not send X, Y to Swift StylusApp
Eventhough I can log X,Y it by default code:
But I don't know how to send it to AppKit to Pen.
I have research about communicate Driver and Client: https://developer.apple.com/documentation/driverkit/communicating_between_a_driverkit_extension_and_a_client_app#4324306 but seem HID driver don't support inheritance from IOUserClient: