Hey gang.
I just bought my WiiMote and am trying the library out for the first time. Very impressed! Bluetooth issues aside however thats not your fault ;)
I am using the library in a .NET 3.5 WPF project. I am getting very very slow connect rate and probably 40% failure to work with the WiiMote. If I run your test app it works very quickly but in my WPF one it fails or is dog slow to connect. Once its receiving values it is fine however.
I don't know threading well however I suspect it might be related to the conversion of your Winforms BeginInvoke to my WPF Dispatcher.Invoke. Do you know if this is the wrong way to approach this?
void wiiMote_OnWiimoteChanged(object sender, WiimoteChangedEventArgs e)
{
mutex.WaitOne();
Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Normal, new WiimoteChangedEventHandler(OnWiimoteChanged), sender, new object[] {e});
mutex.ReleaseMutex();
}
I've tried Dispatcher.BeginInvoke() but it seems worse.
Also I have some questions about the data I am receiving. I am only seeing values change when I ROTATE the WiiMote oppose to when I move it. Can you guys please explain this behaviour to me? I am looking to detect swings however its possible to move the WiiMote without much rotation which is making it difficult to me to detect a motion.
Also I am having some difficulty distinguishing the difference between the Y and Z axis. It seems when I rotate one, the other moves along with it for the most part. I am trying to understand what movement the Z axis does isolated so I can understand its place.
I am not using IR just the WiiMote.
Sorry for the noobish questions :)