开发者

How to use the USB/HID port with objective-c under a Mac environment?

开发者 https://www.devze.com 2022-12-13 08:30 出处:网络
I am ha开发者_Go百科ving big trouble to communicate through USB, from a Mac to an external HID device. The hardware has been proven fine when running under the Windows XP platform, but I can\'t find a

I am ha开发者_Go百科ving big trouble to communicate through USB, from a Mac to an external HID device. The hardware has been proven fine when running under the Windows XP platform, but I can't find a GOOD exemple of programming the HID with Cocoa / objective-C. Several exemples are available in the Apple center, but they are either poorly documented, or too much complex ( in term of software with mixed objective-C and C, making the file difficult to understand), or not up to date. Well, I must say that I am more an hardware electronic engineer than a software specialist ! So far, I can enumerate the USB port, identify my device using the HID Apple's tools ( I read PID and VID ), but I miserably fail to send a report and/or to read a report back from the external device. I would certainelly appreciate if one of you has used the new Apple's HID API and can share some know how. On the other hand, is there any "USB spy" tool operating with the Apple's OSX ? Thank you so much for your help

Michael


So yes, you're going to have to dive down and write C, not Objective-C, to do your thing.

Luckily, there's an additional Apple resource to make the USB/HID Manager MUCH easier.

See the HID Utilities Sample/Library from Apple


You are not going to find an Objective-c interface for the HID. At least, not anything more than a wrapper. Because of dynamic binding and delayed messaging, Objective-c is poorly suited to programming time dependent task like device drivers or for communicating with same. You're going to have to work in C.

The Apple resources: Accessing Hardware From Applications,the HID Class Device Interface Guide are going to be your best resources. This tech note offers a good overview as well.

The Apple System profiler will scan you USB chain to see what devices are visible to the hardware itself.

Edit01:

Can't believe I forgot about /Developer/Applications/Utilities/IORegistryExplorer. It gives you a detailed breakdown of the entire hardware tree.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号