GlovePie replacement ?

Talk about Head Mounted Displays (HMDs), augmented reality, wearable computing, controller hardware, haptic feedback, motion tracking, and related topics here!
bobv5
Certif-Eyed!
Posts: 529
Joined: Tue Jan 19, 2010 6:38 pm

Re: GlovePie replacement ?

Post by bobv5 »

Would one of you be able to post it somewhere next time you compile? (Does this type of software even get compiled?)

Also, what are you using to work on this? I saw vs2010 express mentioned, but on the website there are a few versions. I'm guessing the c# version?
"If you have a diabolical mind, the first thing that probably came to mind is that it will make an excellent trap: how do you get off a functional omni-directional treadmill?"
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

bobv5 wrote:Would one of you be able to post it somewhere next time you compile? (Does this type of software even get compiled?)

Also, what are you using to work on this? I saw vs2010 express mentioned, but on the website there are a few versions. I'm guessing the c# version?
Hmm, i guess i could put up a binary version, the problem with that is that then I have to take responsibility for viruses and stuff?

edit: Oh, it gets compiled, just not in the same manner as C or Cpp code.. It's compiled to MSIL (Microsoft Intermediate Language) and then the .NET Virtual machine runs that code in realtime. You do not need VS2010, only the .NET 4.0 Runtime

edit2: I use VS2010 Suite version which costs loads of money.. It should also work with the Ultimate version, still costs alot of money.. I do not now which version the other guys use, I would like to know myself if everything runs under VS2010 express.. Everything is written in C# (IS the express version language dependent?)
bobv5
Certif-Eyed!
Posts: 529
Joined: Tue Jan 19, 2010 6:38 pm

Re: GlovePie replacement ?

Post by bobv5 »

If you belive your machine is clean thats enough for me. I have multiple backups of the stuff I can't replace so not really too bothered. Perhaps send the link in a PM if your worried about sending it to the whole world.

Installing vs2010 express c# at the moment, I figured if I'm going to have that huge framework thing, I might as well install the rest and try learn to use it. Get a bit more use out of the vast amounts of diskspace it takes. (Insert rant here, bigger than a planet, worse than hitler, all that stuff :lol: )
"If you have a diabolical mind, the first thing that probably came to mind is that it will make an excellent trap: how do you get off a functional omni-directional treadmill?"
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

bobv5 wrote:If you belive your machine is clean thats enough for me. I have multiple backups of the stuff I can't replace so not really too bothered. Perhaps send the link in a PM if your worried about sending it to the whole world.

Installing vs2010 express c# at the moment, I figured if I'm going to have that huge framework thing, I might as well install the rest and try learn to use it. Get a bit more use out of the vast amounts of diskspace it takes. (Insert rant here, bigger than a planet, worse than hitler, all that stuff :lol: )
Hehe, thats the reason why I install and run all my devtools on a VMWare machine so that I do not need to bloat my gamer PC with that stuff.. :D I can compile a version when I get home and add it has a attachment here, the software is not ready for a public alpha.. For example there is NO expection handling in the script engine yet so if you run a script thats broken it will crash the entire program right now...
User avatar
brantlew
Petrif-Eyed
Posts: 2221
Joined: Sat Sep 17, 2011 9:23 pm
Location: Menlo Park, CA

Re: GlovePie replacement ?

Post by brantlew »

It compiles (with a few complaints) and runs from Visual C# Express 2010.

CyberVillain if we want to supply alpha builds we could host them at SourcForge and supply a link here.

Edit: Also if anyone here actually wants to endure all the esoteric chatter that goes on during code development you can follow along here:
http://sourceforge.net/p/freepie/discussion/
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

Started with syntax highlithing, it's on a crash course with the dark theme I selected for the rest of the UI :P

Image
PalmerTech
Golden Eyed Wiseman! (or woman!)
Posts: 1644
Joined: Fri Aug 21, 2009 9:06 pm

Re: GlovePie replacement ?

Post by PalmerTech »

Just posting to say that despite my lack of understanding, I am following along in this thread, reading every post. :D I feel like all the pieces needed for great VR gaming are coming together after all these years!
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

PalmerTech wrote:Just posting to say that despite my lack of understanding, I am following along in this thread, reading every post. :D I feel like all the pieces needed for great VR gaming are coming together after all these years!
Thanks palmer!
User avatar
brantlew
Petrif-Eyed
Posts: 2221
Joined: Sat Sep 17, 2011 9:23 pm
Location: Menlo Park, CA

Re: GlovePie replacement ?

Post by brantlew »

This is a repeat of a general question brought up at SourceForge
CyberVillain wrote:So which plugins as a minimum should be shipped with the Core?
I think atleast

TrackIR (We can look at the FaceTrackNoIR) for this one, its written in C
FreeTrack (Its done)
Mouse
WiiMote
ppJoy
Somekind of generic Comport maybe?

Bonus
AHRS IMU (Its done)
Vuxiz (brantlew working on it)
brantlew wrote:Let's bring this up on the MTBS3D board as well.
- Keyboard
- OSC (so we can bridge through GlovePIE to control devices that we don't support yet and vice-versa)
- maybe a generic UDP socket instead of com port (similar to OSC but with a custom protocol perhaps)
bobv5
Certif-Eyed!
Posts: 529
Joined: Tue Jan 19, 2010 6:38 pm

Re: GlovePie replacement ?

Post by bobv5 »

When you say wiimote I guess you are including the motion plus with that?

Comport would be intresting, but I would say it is relavtivly low priority. Would be good if comport could also be used for output, for example to send instructions to haptic feedback devices.

Xbox 360 pad emulation would be good to have, to allow analogue movement control instead of wasd keys.

EDIT-
http://code.google.com/p/linuxtrack-wine/" onclick="window.open(this.href);return false;
That codes for linux but might help with trackir.
"If you have a diabolical mind, the first thing that probably came to mind is that it will make an excellent trap: how do you get off a functional omni-directional treadmill?"
User avatar
AngelJ
Cross Eyed!
Posts: 102
Joined: Wed Jul 06, 2011 9:47 pm

Re: GlovePie replacement ?

Post by AngelJ »

Reading this thread and some code for the instructional value. Keep up the good work guys.
User avatar
brantlew
Petrif-Eyed
Posts: 2221
Joined: Sat Sep 17, 2011 9:23 pm
Location: Menlo Park, CA

Re: GlovePie replacement ?

Post by brantlew »

On second thought, a com port might be an interesting addition since it would allow manual integration with a lot of legacy devices. Need to check the LUA syntax but I am guessing that we might want to add a helper library for byte manipulation - but in theory at least you could hook up an old serial joystick or something and essentially write a little device driver in FreePIE to read values from it and translate to another device.

Same with output - just send raw commands to serial devices through a script instead of writing a dll or waiting for native support.

And it's something that GlovePIE does not support.

XBox 360 is a high priority for another project I am working on and that will probably be going in soon.
WiredEarp
Golden Eyed Wiseman! (or woman!)
Posts: 1498
Joined: Fri Jul 08, 2011 11:47 pm

Re: GlovePie replacement ?

Post by WiredEarp »

Your progress looks great! I think serial port is a good idea.
If you come up with a plugin structure, I could probably contribute a Hydra plugin. Although, since Hydra comes with an SDK, it would be pretty easy to include it natively I guess...
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

WiredEarp wrote:Your progress looks great! I think serial port is a good idea.
If you come up with a plugin structure, I could probably contribute a Hydra plugin. Although, since Hydra comes with an SDK, it would be pretty easy to include it natively I guess...
You can download the code and try it out, it has a plugin API ready to use :D

Teaser of the day, error handling and highlighting commited to SVN

Image
User avatar
cybereality
3D Angel Eyes (Moderator)
Posts: 11407
Joined: Sat Apr 12, 2008 8:18 pm

Re: GlovePie replacement ?

Post by cybereality »

Great work guys. I certainly want to check out the code and contribute at some point. Just real busy, as always.
User avatar
brantlew
Petrif-Eyed
Posts: 2221
Joined: Sat Sep 17, 2011 9:23 pm
Location: Menlo Park, CA

Re: GlovePie replacement ?

Post by brantlew »

Hey CyBer if you want to take a crack at the Vuzix plugin, I know you have that code laying around. There's no rush. Just thought it was an obvious match.
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

I've started to work on a code convention document so that we can write code in a uniform way once you guys start committing.... Brantlew You are probably the one with the most code not commited right now, Have you tried to write like the rest of the code? If not this document could speed things up....

edit: By the way, what method are you using to emulate mouse? It must support relative mouse (Like GlovePies Mouse.DirectX / DirectY.. If it only support screen coordinates it will hit the screen boundaries and the movement in game will stop
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

Convention document first version:

https://sourceforge.net/p/freepie/discu ... /0167d36a/" onclick="window.open(this.href);return false;
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

It's now possible to use an event model instead (Offcourse still polling underneath)

Image
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

In this pace I can have a feature a day picture :D

Todays teaser, you can define curves under settings/curves, give them a name and then you can access them from the script

Image
WiredEarp
Golden Eyed Wiseman! (or woman!)
Posts: 1498
Joined: Fri Jul 08, 2011 11:47 pm

Re: GlovePie replacement ?

Post by WiredEarp »

Oh, your code so far looks really nice! Looks like you are making excellent progress!
I'll definitely do a Hydra plug in, well, at least when I can get around to it one day. Sigh, its at the top of my project list, but I have too many projects, and being single again isn't helping my free time...

One thing i'd find really valuable is the ability to do the same thing you can do in PPJoyJoy - bind one joystick to another. Currently, I either have to run PPJoyJoy in test mode, or in 32 bit, to use this - and I need it for several of the games I play (I have foot pedals and joystick etc). I did mention earlier the possibility of using a hacked certificate to register drivers under 64 bit, not sure if anyone has any ideas if that could work or not?
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

Thanks!
Yeah, the framework is progressing nicely, what we need are plugin developers. :D
I am not that great at C, i would like someone to port the TrackIR plugin for example. If you look at the C code over at the FaceTrackNoIR porject page the code its very close to the FreeTrack plugin (I guess the freetrack team "stole" the TrackIR implementation)... But the structs look more complex etc..

If someone with C experience can take a look I would be greatful
User avatar
cybereality
3D Angel Eyes (Moderator)
Posts: 11407
Joined: Sat Apr 12, 2008 8:18 pm

Re: GlovePie replacement ?

Post by cybereality »

I have C++ classes for the Vuzix tracker and also one for the Razer Hydra. I assume the best way would be to compile this class into a DLL and then call it from within C#. Is this correct, or is there a better way to do this?

I also sold my 1200VR, so I can't even test the Vuzix stuff at the moment (gonna put the money toward an HMZ-T1).
User avatar
brantlew
Petrif-Eyed
Posts: 2221
Joined: Sat Sep 17, 2011 9:23 pm
Location: Menlo Park, CA

Re: GlovePie replacement ?

Post by brantlew »

cybereality wrote:I have C++ classes for the Vuzix tracker and also one for the Razer Hydra. I assume the best way would be to compile this class into a DLL and then call it from within C#. Is this correct, or is there a better way to do this?

I also sold my 1200VR, so I can't even test the Vuzix stuff at the moment (gonna put the money toward an HMZ-T1).
CyberVillain wrote most of the code and he's an expert C# developer, so right now the project is heavily tilted towards C#. You could write a C dll and call it from C#, but you would still need to write a bunch of C# wrapper code. The Vuzix API is pretty straight forward so it's probably easiest to just directly link to the Vuzix dll and port code to the C# wrapper.

Sold so soon? I'm waiting for the ST1080 before I ditch mine. :)
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

I think the easiest way to call Cpp code is if you convert the lib to a static one..
Then you can import the lib with the DllImport C# attribute

[DllImport("mydll.dll")]
private static extern int StaticMethodInLib(double x, double y);

If you need it to be more complex like a OO lib, you can write a Managed Cpp wrapper around the unmanged one
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

I just commited plugin settings to the trunk. I think the GUI's main features are in place now, now we just need plugins :D

Image
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

I updated the FreePIE project page with a Wiki on howto do plugins for FreePIE, so lets start coding everyone :D

https://sourceforge.net/p/freepie/wiki/ ... velopment/" onclick="window.open(this.href);return false;
User avatar
brantlew
Petrif-Eyed
Posts: 2221
Joined: Sat Sep 17, 2011 9:23 pm
Location: Menlo Park, CA

Re: GlovePie replacement ?

Post by brantlew »

I'm going to try and get basic mouse and keyboard plugins done this week.

I also have integration code for Vuzix, Wiimote, and XBox 360 in various stages of development and can add those modules at some point in the coming weeks.
User avatar
cybereality
3D Angel Eyes (Moderator)
Posts: 11407
Joined: Sat Apr 12, 2008 8:18 pm

Re: GlovePie replacement ?

Post by cybereality »

I am busy for the next week or so, but I do plan on contributing at some point.
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

Im also trying to convince my little brother, who is good at C to port the TrackIR implemention in FaceTrackNoIR to C#

Nice that you have worked with WiiMote brantlew, we really need that in the core plugins.
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

Brantlew have done a great work with the mouse and keyboard plug-ins. So I think we are soon ready for a first alpha binary release!
User avatar
brantlew
Petrif-Eyed
Posts: 2221
Joined: Sat Sep 17, 2011 9:23 pm
Location: Menlo Park, CA

Re: GlovePie replacement ?

Post by brantlew »

I believe the keyboard is not "quite" ready for alpha. Currently you can only emulate keyboard presses on keys A-Z and 0-9. I will fix this soon.
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

brantlew wrote:I believe the keyboard is not "quite" ready for alpha. Currently you can only emulate keyboard presses on keys A-Z and 0-9. I will fix this soon.
Have you looked anything into Wiimote? How much effort would it be to do that?
User avatar
brantlew
Petrif-Eyed
Posts: 2221
Joined: Sat Sep 17, 2011 9:23 pm
Location: Menlo Park, CA

Re: GlovePie replacement ?

Post by brantlew »

Not that much work if you leverage it on a pre-existing project like WiimoteLib, but I need to spend some time on some of my other projects for a while. My telepresence robot needs a wireless upgrade and FriiSpace is way behind schedule.
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

brantlew, can you get latest and check if you can build? I've committed a pretty advanced batch script that should set the version of the program using SVN revision number. Try to build and see if the revision number is reflected into the core dll and the gui.exe version number

Thanks
User avatar
brantlew
Petrif-Eyed
Posts: 2221
Joined: Sat Sep 17, 2011 9:23 pm
Location: Menlo Park, CA

Re: GlovePie replacement ?

Post by brantlew »

I'm out of town on business right now, but I can do it when I get back home.
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

My brother gave the FaceTrackNoIR TrackIR code a try, but he couldnt get it to work, and hes a pretty experienced Cpp developer.
Anyone else wanna give the TrackIR plugin a shot? We need atleast WiiMote and TrackIR support before a official beta release
WiredEarp
Golden Eyed Wiseman! (or woman!)
Posts: 1498
Joined: Fri Jul 08, 2011 11:47 pm

Re: GlovePie replacement ?

Post by WiredEarp »

Did he get it to build? What part was he stuck on?

I hate setting up new build environments. I pulled down the source and had a look at the source... it looks pretty decent, theres a fair bit I dont understand exactly but generally speaking it looks like it sets up a fake trackir.exe, loads a couple of dlls, gets a memory mapped handle and uses that to do the tracker movement pushes with one of them. Thats just a guess tho based on a quick read through.

Whats the legality of using most of it verbatim, and just changing a few strings, removing a crapload of GUI specific stuff, and some other things, and massaging it into the format we require...? Full credit given etc of course...
CyberVillain
Petrif-Eyed
Posts: 2166
Joined: Mon Jun 22, 2009 8:36 am
Location: Stockholm, Sweden

Re: GlovePie replacement ?

Post by CyberVillain »

That code is crap, 90% of the code in those files arent even used (I hate it when people leave code that is not used), the memory mapped stuff is not used, they use the TIR dlls.. He ported the code using the TIR dlls code, but no go, since there is so much static noise in those code files from stuff not being he has probably overseen something. But I'm happy if you want to take a crack at it, but I will never allow code of that standard commited to FreePIE :P

So the best approach is to port it and clean it up, I will check on my brother to see the status of his progress to night...
WiredEarp
Golden Eyed Wiseman! (or woman!)
Posts: 1498
Joined: Fri Jul 08, 2011 11:47 pm

Re: GlovePie replacement ?

Post by WiredEarp »

Let us know how he gets on. Personally nowadays I like to start with a solution, then iterate it for efficiency if required. The perfect is the enemy of the good...
Post Reply

Return to “General VR/AR Discussion”