Codeless KEXT to prevent a driver from loading
Codeless KEXT to prevent a driver from loading
- Subject: Codeless KEXT to prevent a driver from loading
- From: Kustaa Nyholm <email@hidden>
- Date: Sun, 07 Apr 2019 19:50:49 +0300
Hi,
hope this is the right place to pose this question.
I'm not a total noob when it comes to codeless KEXT, I successfully implemented
one some 10 years ago.
Now I'm facing a following problem.
I'm interfacing a Calcom digitiser table.
This represents itself as a USB HID (absolute) mouse.
The problem is that when a digitiser is used in a CAD application
the absolute position MOUSE functionality is of no use and gets in the way.
The CAD application just wants the coordinates and does its own mapping to the
CAD coordinates.
I can capture the messages from the digitiser using HIDAPI and get the X/Y
positions from there.
But, and here is the rub, when the user moves the digitiser mouse to digitise
points on the tablet the mouse coordinates will be all over the place on the
Mac desktop switching windows and click god knows anywhere.
So basically I need to disable the mouse functionality of the Calcomp digitiser
and just grab the info I need from the USB messages.
I had a similar situation previously with a weather station that the OS grabbed
and would not let me talk to it. This was solved by creating a codeless KEXT.
This time I need to prevent the OS from using the device as a mouse and still
allow me to talk to it using HIDAPI.
I'm hoping that codeless KEXT is the answer.
So my first question is, is it?
The second question is, is there no other way cause I've come up with anything?
Third question, supposing a codeless KEXT is used, can this be dynamically
loaded / unloaded because ideally the user could then switch between the
Calcomp standard mode and the CAD mode mode I'm implementing?
Fourth question, how 'risky' this is? I have no physical access to the test Mac
and I would hate to try something that has the potential of preventing that
from rebooting, which I'm afraid a KEXT could do unless I can dynamically test
this without installing the KEXT and booting the machine. Hate the idea of
having to talk the customer through safe mode uninstallation of a KEXT.
Last question or maybe this should have been the first question, can I unload
the system KEXT at non-boot time that is attached to the digitiser and would I
then be able to talk to it? Would I still need to attache the codeless KEXT?
How do I recognise which KEXT to unload...
wbr Kusti
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-kernel mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden