I have an maudio oxygen working through USB and it is not tracking correctly. Takes about a second to track making it really annoying to work with. And I tried another device connected using the midi cable and the tracking is still off.

Anyway to fix that?
What software are you tracking to? This kind of issue is a result of the buffering/IO settings of the host, not the hardware.
i am using cubase le. the midi is going to my tascam us224, which has the tascam drivers.

tracking on regular audio signal is perfect. whats the fix for the midi
Somewhere in your preferences you should be able to adjust the MIDI buffers, latency, etc.

I've never used Cubase LE, so I can't tell you exactly where it is.
Try going to the menus right at the very top and choosing..

Devices > Device Setup. Then from there go to vst audiobay and select ASIO multimedia driver. There should be a control panel option there, from which you can change the buffer settings. Change the number of buffers to a lower number. That's how it is in Cubase SX3 anyway.
There is poetry in despair.