USBDriverKit

RSS for tag

Develop drivers for USB-based devices using USBDriverKit.

USBDriverKit Documentation

Posts under USBDriverKit tag

55 Posts
Sort by:
Post not yet marked as solved
4 Replies
749 Views
Firstly let me start by saying I'm totally new to using IOKit and fairly new to Swift. That said, I've successfully managed to detect the insertion and removal of my USB serial device in my Swift, MacOS app. Therefore calling ls /dev/tty.* lists the same devices as via the IOServiceAddMatchingNotification(notifyPort, kIOFirstMatchNotification, IOServiceMatching("IOSerialBSDClient"), matchingCallback, selfPtr, &matchedIterator) call inside the resulting callback. This is a great start. As you can imagine telling the user you've found "/dev/tty.usbmodem[some number]" isn't particularly user friendly. So once I retrieve the IODialinDevice property from the aforementioned callback is there a way for me to lookup the USB device's Vendor ID and Product ID and ideally retrieve the human readable name for said USB device, so I can then expose that to the User? Thanks.
Posted
by domaal.
Last updated
.
Post not yet marked as solved
0 Replies
279 Views
Please help me, my ipad pro 2020 after update iPadOS 15 usb acc not recognized. I tried to connect my ext keyboard, mouse, or sd card and my ipad not recognized the acc. I was turn on USB Acc in menu FaceID. Please help me. Before Update it's works fine
Posted
by Diyonesia.
Last updated
.
Post not yet marked as solved
1 Replies
1k Views
I have a USB modem that worked fine under Mojave. With Big Sur (11.2.3), the device is not recognized immediately after a restart (/dev/cu.usbmodem123456781 does not exist). However, if I unplug the device and then replug into the USB port, /dev/cu.usbmodem123456781 exists and can be used. I'm accessing the device programmatically in a macOS app, using Objective-C. After a restart, System Report correctly lists the USB modem (even before unplug/replug) as follows: USB Modem:   Product ID: 0x1340   Vendor ID: 0x0572 (Conexant Systems, Inc.)   Version: 1.00   Serial Number: 12345678   Speed: Up to 12 Mb/s   Manufacturer: Conexant   Location ID: 0x14110000 / 5   Current Available (mA): 500   Extra Operating Current (mA): 0 What can I do so that /dev/cu.usbmodem123456781 exists after a restart?
Posted
by Jeff_m.
Last updated
.
Post not yet marked as solved
2 Replies
498 Views
We are the developer team of Nanjing Qinheng Microelectronics Co., Ltd. Recently, we have carried out device driver development and system adaptation for a variety of USB-to-serial chips. At present, our project is stagnant in the release stage because the "Provisioning Profile" does not contain our vendor ID(0x1A86). The release process of this driver will affect millions of users worldwide. We hope that the "Provisioning Profile" can be completed more quickly. This is very important for our customer and the experience of Apple's Big Sur.
Posted Last updated
.
Post not yet marked as solved
0 Replies
241 Views
How do I adjust the latency timer for the AppleUSBFTDI driver? I am developing an app in Swift using Xcode on a MacBook Pro M1 running Big Sur, for clinical brain-computer interface (BCI) research. The app needs very low-latency streaming from an external USB device. The external device is a headset which connects via Bluetooth to an FT231X chip mounted on a USB-Serial dongle. The FT231X chip reads timestamped EEG data from the headset. The issue is that the AppleUSBFTDI driver is buffering the packets coming in from the headset, which causes jitter in the timestamps. Typically, with proprietary drivers from FTDI, the solution is to reconfigure them to reduce the latency timer to 1ms. The Info.plist is edited to add new key/value pairs. Is there a similar solution for Apple's built-in driver?
Posted Last updated
.
Post not yet marked as solved
0 Replies
434 Views
Hi I want to develop an iOS application running on iPAD Pro, which communicates to the custom external accessory which is connected to iPAD over USB interface. The accessory is MFI Compatible. The accessory supports multiple end points "Control, Interrupt, 4 Bulk In & 4 Bulk Out". I need help to understand what are the options in iOS to add support for USB accessory with multiple endpoints.
Posted Last updated
.
Post not yet marked as solved
0 Replies
479 Views
Apple presented how to Create audio drivers with DriverKit on the latest WWDC 2021. Video presentation: https://developer.apple.com/videos/play/wwdc2021/10190 Code sample: https://developer.apple.com/documentation/audiodriverkit/creating_an_audio_device_driver We need a similar approach for cameras. The audio driver mentioned above can be compiled using the new Xcode 13 beta. So this approach is in progress. We need to develop a custom driver for the camera. Is there a solution in DriverKit for cameras? Is it planned? Should we develop a driver from scratch using USBDriverKit? Any suggestions are appreciated.
Posted Last updated
.
Post not yet marked as solved
4 Replies
3k Views
2019 16 inch Mac book pro. Since updating to MacOS Big Sur my USB C hub isn't being recognised or being supplied power. I have checked with my friend's USB hub which works fine. Product is a Dodocool.
Posted Last updated
.
Post not yet marked as solved
1 Replies
564 Views
Hi, I have requested USB Transport and UserClient Access successfully, but the applications containing the entitlemet don't work. driver.dext: User-mode usb driver Driver.app: Application to install the user-mode driver Error Termination Reason: Namespace CODESIGNING, Code 0x01 ・entitlement file of driver.dext <key>com.apple.developer.driverkit</key> <true/> <key>com.apple.developer.driverkit.transport.usb</key> <array> <dict> <key>idVendor</key> <integer>****</integer> </dict> </array> ・entitlement file of Driver.app <key>com.apple.developer.driverkit.userclient-access</key> <array> <string>****bundle id of driver.dext</string> </array> ・driver.dext provisioning profile CMS command <key>Entitlements</key> <dict> <key>com.apple.developer.driverkit.transport.usb</key> <array> </array> <key>com.apple.developer.driverkit</key> <true/> <key>com.apple.application-identifier</key> <string>bundle id</string> <key>keychain-access-groups</key> <array> <string>****</string> </array> <key>com.apple.developer.team-identifier</key> <string>****</string> </dict> ・Driver.app provisioning profile CMS command <key>Entitlements</key> <dict> <key>com.apple.developer.system-extension.install</key> <true/> <key>com.apple.application-identifier</key> <string>bundle ID</string> <key>keychain-access-groups</key> <array> <string>****.*</string> </array> <key>com.apple.developer.team-identifier</key> <string>****</string> </dict> Would you let me know the solutions if you have?
Posted
by ShoC.
Last updated
.
Post not yet marked as solved
0 Replies
252 Views
Is it possible that one of my USB-C Ports would be disabled after updating to the Monterrey beta on a MacBook Air?
Posted
by doc605.
Last updated
.
Post not yet marked as solved
5 Replies
1.2k Views
I'm working on custom solution that uses USB device/interface drivers. For correct setup I need ability to communicate between my own Services, declared in IOKit Personalities of my DEXT. At the moment I'm seeing the one way to do it via some shared state. But DriverKit by default launches each USB service in separate process when device is connected. Documentation says that there is "IOUserServerOneProcess" key could be declared in Info.plist. But seems it does not work: all my USB services run in different processes. Could anybody suggest a way how to interact between own DriverKit services or run them in context of the single process?
Posted
by erreewrwe.
Last updated
.
Post not yet marked as solved
6 Replies
955 Views
Hello, I have requested com.apple.developer.driverkit.transport.usb successfully, but it cannot be used according to the steps provided by Apple. The console has an error log:“Unsatisfied entitlements: com.apple.developer.driverkit.transport.usb”, has anyone encountered the same problem , If you have solved it, please tell me the solution. Thank you
Posted Last updated
.
Post not yet marked as solved
0 Replies
321 Views
I work at a technology business and we produces two products (readers and tokens) than contain digital certificate. The Product ID (PID) and Vendor ID (VID) aren't listed at CCID macOS driver. The CCID protocol is a USB protocol that allows a smartcard to be connected to a computer by way of a card reader using a standard USB interface. We want to put PID and VID of our products in the ccid from macOS for both to work correctly. How can I do this? Thanks!
Posted Last updated
.
Post not yet marked as solved
1 Replies
719 Views
I just updated my MacBook Pro to Big Sur and my external SSD ejects itself not long after loading onto the desktop. I'm getting a message that says, 'Eject "Extreme SSD" before disconnecting or turning it toff' and the SSD ejects. Can't do anything with it. I read that Catalina had the same bug which was fixed but wasn't fixed for Big Sur. Any help would be appreciated. I have all my client work on the ExSSD.
Posted Last updated
.