Grasping with keyboard or mouse controls IMSTK-Unity

so I’m trying to test the grasping functionality in the example scene but using a mouse or keyboard for the time being, soon enough I’ll convert to using VR, but for now, I need to use a mouse or keyboard.
so as far as I understood is that I need a gameobject called device that has UnityDrivenDevice and as it connects the empty GameObject unity position and rotation to the syringe, and in order to use the syringe for grasping (GraspingManager) it needs rigid body (Rigid), and since there’s an interaction between rigid body and a device a RigidController needs to be added, also SimpleGraspingController needs to be added to initiate grasping I guess?.
that’s what I understood so far, If I’m wrong correct me.

so the script for moving using WASD keyboard works just fine alone but with the rigid and grasping scripts something goes wrong, the position in the device is not interpreted correctly and it keeps fluctuating between -0.45 and 99999999.5,
Something is wrong with synchronization I don’t know which code is responsible for interpreting the unity position to the IMSTK position.
is it related to this?: Please note there are two ways rigids will be used in the simulation, one is as free rigid bodies like a needle or staples.
The other is as tools that are driven via a controller through a device. Currently free rigids cannot be transformed through a unity parent transform.
if you know anything please let me know asap

okay so update, this is the following structure in the syringe:


it disappears in the unity scene so I decided to debug the codes in unitydrivenddevice and trackingdevice and simplegraspingcontroller, and it turns out that the buttons logged from getButtons in trackingdevice is all 0 … if so how do I make it so that it acknowledges the buttons was or arrow keys at least

according to that from this documentation link iMSTK: imstk::DeviceClient Class Reference
there’s supposed to be keyboarddeviceclient existing , which I could replace with dummyclient found in the unitydrivendevice . not sure if that would solve it though

I’ve seen those KeyboardDeviceClient and MouseDeviceClient in this documentation link Devices - imstk-documentation but whenever I try to call them instead of dummy client in unitydrivendevice it’s not recognized or it doesn’t have a constructor for some reason in unity. if that documentation is wrong or something please let me know