I compiled proxmark (latest current revision 498) at OS X 10.7 (Lion), it complained about not used variable:
appmain.c: In function 'MeasureAntennaTuning': appmain.c:189:9: error: variable 'ptr' set but not used [-Werror=unused-but-set-variable] cc1: all warnings being treated as errors
So I've simply edited common/Makefile.common and removed -Werror directive from CFLAGS, it compiled fine afterwards.
However when I run ./proxmark3 in client directory (even as root) it says:
Connected units: 1. SN: ChangeMe [250/007] claim failed: Permission denied! PROXMARK3: NOT FOUND!
Anyone has an idea what could be causing this?
Proxmark runs just fine on a Linux system (same build/revision).
I'm having the same problem. I'm using the current MacPorts libusb-compat and OSX 10.7.2. I have the dummy kernel extension installed but when I dig into the IORegistry with the USB Prober tool it seems that the IOUSBInterface for the ProxMark is getting bound to an IOHIDInterface class anyway. I have very limited experience with the USB stack on OSX but it looks to be like OSX Lion might need a slightly different Info.plist to stop the HID stack from grabbing the interface.
FYI, I did a bit of digging in the Darwin port of libusb and it does appear that this "Permission denied" error is from a kIOReturnExclusiveAccess return code when opening the USB device, which means that something else has claimed the device first. The device is definitely getting a HID interface bound to it and I've not yet worked out a way to stop this happening. If I work it out I'll post it here but in the mean time if anyone out there understands the vagaries of the OSX driver binding process and knows how to fix this it would be a huge help if you could let us know!
having the same problem with r517 from the svn, i tried to implement the fix here (http://www.proxmark.org/forum/viewtopic.php?id=236) in proxusb.c, but no luck...
$ sudo ./proxmark3 Connected units: 1. SN: ChangeMe [250/006] detach kernel driver failed: Function not implemented! claim failed: Permission denied! PROXMARK3: NOT FOUND! proxmark3>
I'm compiling without QT4 (commented out lines 19 - 31 in client/Makefile), on Mac OSX 10.7.2 using the following from mac ports:
$ sudo port list | grep libusb libusb @1.0.8 devel/libusb libusb-compat @0.1.3 devel/libusb-compat libusb-devel @184.108.40.20601017 devel/libusb-devel libusb-legacy @0.1.12 devel/libusb-legacy
i also tried make install_kext as per someone else's recommendation - no luck
Last edited by slipdop (2011-12-27 00:14:21)
I got it to work on my MacBook on OS X 10.6.8 by adding a dummy device driver like this:
1. Create a file named Info.plist in /System/Library/Extensions/Proxmark3.kext/Contents/ (create the missing folders) with the following content:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <!-- This is a dummy driver which binds to Proxmark. It --> <!-- contains no actual code; its only purpose is to --> <!-- prevent Apple's USBHID driver from exclusively --> <!-- opening the device. --> <plist version="1.0"> <dict> <key>CFBundleDevelopmentRegion</key> <string>English</string> <key>CFBundleIconFile</key> <string></string> <key>CFBundleIdentifier</key> <string>com.proxmark.driver.dummy</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundlePackageType</key> <string>KEXT</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> <string>1.0.0d1</string> <key>IOKitPersonalities</key> <dict> <!-- The Proxmark3 USB interface --> <key>Proxmark3</key> <dict> <key>CFBundleIdentifier</key> <string>com.apple.kpi.iokit</string> <key>IOClass</key> <string>IOService</string> <key>IOProviderClass</key> <string>IOUSBInterface</string> <key>bConfigurationValue</key> <integer>1</integer> <key>bInterfaceNumber</key> <integer>0</integer> <key>idProduct</key> <integer>19343</integer> <key>idVendor</key> <integer>39620</integer> </dict> </dict> <key>OSBundleLibraries</key> <dict> <key>com.apple.iokit.IOUSBFamily</key> <string>1.8</string> </dict> </dict> </plist>
2. In /System/Library/Extensions, issue the commands (as root)
chown -R root:wheel Proxmark3.kext chmod -R 755 Proxmark3.kext kextcache -system-caches
3. Reboot, and behold!
Last edited by toffe (2011-12-28 12:16:24)
just tried out this Proxmark3.kext driver thing on 10.7.2 (macbook air) and latest svn (r520) and it works like a charm!
thanks a lot toffe!