GlovePIE Wii

From GameBrew
GlovePIE
Glovepiewii2.png
General
AuthorCarl Kenner
TypePC utilities
Version0.43
LicenseMixed
Last Updated2019/01/18
Links
Download
Website
Source

GlovePIE stands for Glove Programmable Input Emulator. It was originally started as a system for emulating Joystick and Keyboard Input using the Essential Reality P5 Glove. Now it supports emulating all kinds of input, using all kinds of devices, including Polhemus, Intersense, Ascension, WorldViz, 5DT, and eMagin products. It can also control MIDI or OSC output.

Features

  • Control games and applications any way you want.
  • Send fake keyboard keys, jostick actions, mouse moves, midi input or speech input to any program.
  • Use a VR Glove, Kinect, Wiimote, SIXAXIS, keyboard, joysticks, mice, touchpad or a microphone to control any program.

User guide

In the GlovePIE window you type or load a simple script. For example to control the WASD keys with a glove:

W = glove.z > -50 cm
S = glove.z < -70 cm
A = glove.x < -10 cm
D = glove.x > 10 cm

You can also use GlovePIE to play Joystick-only games without a joystick, or keyboard-only games with a joystick. Or you can use it to create macro buttons for complex keystrokes. You can even use it to control multiple mouse pointers with multiple mice.

Go to GlovePIE preservation project's Wiki for the complete GlovePIE Manual and detailed information.

See also Wiimote auto calibration script by Winko Erades van den Berg.

System requirements

  • Windows 98 or above (Windows 2000 or above to emulate keys in DirectInput games or use multiple fake cursors - Windows XP or above to get input from multiple mice or keyboards individually or to read some special keys).
  • DirectX 8 or above.
  • There is other optional software you might need for certain features. Joystick emulation requires PPJoy. Speech requires SAPI 5.1 with microsoft recogniser.
  • You don't need any special hardware.

Hardware supported

  • Nintendo Wii Remote (Wiimote).
  • Sony Dual Shock 3 (except for Gyro) or Sony SIXAXIS.
  • NaturalPoint (Or eDimensional) TrackIR, OptiTrack, SmartNav.
  • FakeSpace Pinch Gloves (9600 baud by default, but can be changed).
  • Concept 2 PM3 rowing machines (ergo or erg).
  • All joysticks or gamepads recognised by Windows.
  • Parallel port gamepads (with PPJoy).
  • All keyboards.
  • Mice with up to 5 buttons and 2 scroll wheels.
  • Most microphones (don't have to be high quality).
  • Most MIDI input or output devices.
  • Essential Reality P5 Glove.
  • 5DT Data Glove (all versions).
  • eMagin Z800 3D Visor HMD.
  • Polhemus trackers (must be set to 115200 baud): IsoTrak II, FasTrak, Liberty, Patriot, Liberty Latus.
  • Ascension trackers: Flock of Birds, MotionStar, etc.
  • Intersense trackers: InterTrax, InertiaCube, IS-300, IS-600, IS-900, IS-1200, etc.
  • WorldViz PPT trackers (all versions).
  • GameTrak (only as a joystick, no direct support).

It does not support VR920, Playstation Move, Playstation Navigation subcontrollers, Emotiv Epoc, 5DT Gloves, or Flock of Birds. It does not emulate XBox 360 controllers.

Screensbots

glovepiewii3.png

Media

GlovePie set up, Easy Cheap Fun. (O-M-G)

GlovePie 104 (Mattlekim)

Wii remote on pc using GlovePie (everythingdigital1)

Changelog

v0.45

  • Officially free.
  • Kinect support.
  • Import files from FAAST (not completely implemented though).
  • TrackIR emulation now works in DiRT 3, and Operation Flashpoint Red River.
  • TrackIR emulation might not work in some games it used to work in.
  • TrackIR emulation no longer uses or generates any haikus .
  • Smooth function bug fixed.
  • Uses Direct3D 9 instead of Direct3D 8.
  • Larger debug box.
  • PIE.DebugFontSize can be changed in scripts.
  • Troubleshooter > Diagnose menu, checks for problems with input devices.
  • Debug window now aligns itself with the main window.
  • Keyboard bug work-around for people with IR receivers on their laptops (this bug is present in all DirectInput or SDL programs except GlovePIE, but is most noticable in DOSBox, it stops [{ ]} \| '" `~ keys from working).
  • Multiple keyboards sorted better.
  • One MIDI bug fixed.
  • Cursor now supports FakeCursor / RealCursor.
  • WiiGuitar touch frets.
  • SIXAXIS strings work correctly when no SIXAXIS is connected.
  • Probably some other things I forgot.

v0.43

  • Drum Kits and DJ Hero Turntables should now be detected correctly.
  • Wiimotes wait slightly longer when checking which expansion is plugged in.
  • Nunchuk.Calibrated can now be set to false to recalibrate the Nunchuk joystick.
  • "0.1 is not a valid floating point number" bug fixed (only affected Europeans sometimes).
  • Variables can now have non-latin names.
  • Scanner has better unicode support.
  • Can double click in code completion list to select.
  • improved code completion detection.
  • Wild Divine Lightstone bug fixed.
  • BeginsWith and EndsWith functions no longer case sensitive.
  • "Any" object axes fixed.
  • Joystick not working on second run bug fixed.
  • Extra DualShock3 raw fields for testing.
  • New menus for new GlovePIE website.
  • Minimise-to-tray button moved from title/caption bar to menu bar.
  • Automatically runs as administrator again.
  • Uses external manifest file.
  • Maybe visual themes bug is fixed.
  • Extra mouse detected bug in multiple mouse support fixed.
  • MouseParty script included (multiple mouse pointers with multiple mice).
  • MouseVoiceCommands script included.

v0.42

  • Right click popup menu added to editor.
  • Switching tabs doesn't deactivate Wiimote and Sixaxis anymore.
  • Partial support (untested) for Wild Devine Lightstone (biometric device).
  • Support for Neurosky EEG device (untested).
  • Wii Motion Plus wrong calibration on second run bug fixed.
  • Wiimote and Sixaxis show middle 2 lights while calibrating gyros.
  • Nunchuk.Shake gesture added.
  • Nunchuk.SwingVertical gesture improved.
  • Wiimote.Battery now works again.
  • FakeMouse.DirectInputY is fixed.
  • FakeMouse and RealMouse now support vectors.
  • RealMouse now supports multiple mice individually.
  • Emotiv.RawGyroTotalX, RawGyroTotalY and RawGyroTotalXY added.
  • Lego Indiana Jones scripts included.
  • Wii Motion Plus mouse control script included.

v0.41

  • Emotiv Epoc support fixed.
  • Emotiv Epoc gyro support added (in theory).
  • Some Emotiv Epoc improvements.
  • Updated EDK.dll file (hopefully fixes false positives in AVG).
  • GlovePIE now always runs as administrator (otherwise you can't send keys and mouse to fullscreen games in Vista).

v0.40

  • GlovePIE 0.30 security bug fixed.
  • Autoconnect Wii Remotes with Microsoft Bluetooth stack.
  • Autodetect bluetooth stack.
  • Wii Motion Plus support.
  • Gesture recognition for Wiimotes, Nunchuks, and SIXAXISes.
  • Improved GUI autodetect feature.
  • Emotiv Epoc SDK version support (in theory, actually it didn't work).
  • DJ Hero Turntable (Wii) support (in theory).
  • Guitar Hero World Tour Drums (Wii) support (in theory).
  • Balance Board working.
  • Dual Shock 3 might work without rumbling if you don't use gyro.
  • VR920 and stereoscopic 3D support removed (protest to Vuzix and MTBS3D if you want it back).
  • Unicode support.
  • Lots of new fields.
  • Other bug fixes and improvements.
  • Improved copy protection (to stop it running in Israel).
  • Some new bugs added (I'm guessing).
  • Separated into two versions, one with 5DT and Flock of Birds support and one with Emotiv support (Emotiv won't work with 5DT or Birds).

v0.30

  • SIXAXIS support (USB only, everything working except bluetooth).
  • Wii Guitar Hero 3 controller support.
  • Wii Fit Balance Board support (broken, sorry).
  • Novint Falcon support.
  • VR920 Virtual Reality HMD support.
  • XBox 360 controller support (untested).
  • Touchpad support.
  • 3DConnexion SpaceBall support.
  • TrackIR emulation.
  • Improved TrackIR support (untested).
  • PS3 BD Remote support.
  • GlovePIE Can display 3D graphics for visualisation.
  • Swallow function for swallowing keyboard keys.
  • "Any" object, for any kind of wiimote/gamepad/sixaxis to seem the samne. eg. Any.Joy1x, Any.RightTrigger, etc.
  • Translation support, edit the INI files to add your language.
  • Vista support (mostly).
  • Fake Cursor roll (fake cursors can rotate like on a Wii).
  • Wii-like hand cursor available.
  • Fake cursors can be set to custom colours or images.
  • Fake keys now repeat like normal keys, or can be set to repeat multiple keys at once (unlike a real keyboard).
  • Smooth function doesn't crash so much.
  • Code completion doesn't pop up when empty (eg var.).
  • Wiimote is no longer counted in the joystick.count.
  • PPJoy digital goes up to 40 instead of 32 (needed for POV hat switches).
  • "/tray" command line option to minimize to system tray.
  • Euro and Dollar keys on Acer Laptops added (but need to close LaunchManager for GlovePIE to see them).
  • Units of weight and force added, unit multiplication fixed.
  • Matrix array elements now work.
  • Midi pitch wheel bug fixed.
  • Joystick.AnyButton.
  • Starting() function instead of "if not var.initialised".
  • Other things that I forgot.

v0.29

  • Minimize to System Tray button.
  • Recent Files menu.
  • OutputToFile( ) function to write values to output.txt.
  • Division by zero no longer crashes compiler.
  • Automatically connect Wiimotes when you press 1+2 (bluesoleil only, you need to do it manually with other stacks) Hold Power button to disconnect Wiimote.
  • Wiimote speaker supported (single notes only, no wave files).
  • Classic Controller support fixed and tested.
  • Wiimote.SmoothPitch and Wiimote.SmoothRoll now calculate angles without seperating out the acceleration, for smooth (but inaccurate) angles when your hand wobbles.
  • "Press X" now works without brackets .
  • "100Hz" now works without space.
  • Numbers allowed after dot, "Wiimote.1" works like "Wiimote.One".
  • Infinity and NaN are now valid numbers.
  • Other compiler improvements.
  • Improved documentation.
  • More scripts! Play old Zelda, Mario, or Metroid games with the exact same controls as the modern Wii game.

v0.28

  • Running scripts from command line works again.
  • New function: DeadZone(wiimote.nunchuk.joyX, 10%).
  • Wii Classic Controller support (theoretical).
  • Can now tell the difference between classic and nunchuk.
  • Nunchuk built-in calibration supported.
  • Nunchuk no longer reduces performance of other reports.
  • Note, when IR and Nunchuk are used together dot size is no longer available.

0.27

  • Nunchuk support.
  • Setting channel to 0x3E or 0x3F no longer prevents Wiimote forces from working.

0.26

  • TroubleShooter > BlueTooth Fix menu, for other bluetooth stacks.

0.25

  • WiimoteScripts folder.
  • Wiimote battery level.
  • Wiimote normalized gx, gy, gz force values (0=none, 1=gravity).
  • Wiimote pitch, roll, and rotation matrix, seperate from movement.
  • Wiimote raw accelerations in m/s/s with gravity.
  • Wiimote relative accelerations without gravity.
  • Calibrate Wiimote manually, or use Wiimote's own built in settings.
  • Access BlueSoleil window from CP-Settings > BlueTooth menu .
  • Extract Miis from Wiimote (From File menu).
  • MIDI no longer gives error if no input device.
  • Various other bugs fixed, and new bugs introduced.

v0.24

  • GlovePIE now runs in Europe without crashing on every decimal point.
  • Wiimote bugs fixed, and tested. It should work now.
  • Wiimote.Expansion is a number representing which expansion is plugged in.
  • WiimoteDumpBytes(wiimotenumber, address, count) reads count bytes from the Wiimote's memory and displays it in the debug window.
  • TestWiimote.PIE now shows IR cursors.

v0.23

  • Multiple Wiimote support.
  • Wiimote not working the second time bug fixed.
  • Support for Wiimote Sensor Bar (aka candles, christmas tree lights, IR remote controls, etc).
  • Nunchuk no longer stops Wiimote buttons from working.
  • Other Wiimote features.

v0.22

  • Included correct version of this file this time (Read the section below which wasn't included last time, oops).
  • Wiimote support (partial).
  • Wiimote works with "detect input" button in GUI.
  • Concept 2 PM3 Rowing Machine Support.
  • TrackIR, OptiTrack and SmartNav support.
  • FakeSpace Pinch Gloves support (9600 baud default) to use FakeSpace Pinch gloves at a different baud rate, set pinch.baud115200 to anything anywhere in your script, or whatever baud rate you have your dip switches set to.
  • WorldViz PPT added to GUI.
  • Flock of Birds fixed in GUI.
  • Fixed > being displayed as >= in GUI.

v0.21

  • eMagin Z800 3D Visor HMD support (partially tested).
  • 5DT DataGlove support (untested).
  • Intersense tracker and wand support (untested).
  • Ascension Flock Of Birds and other trackers support (untested).
  • Polhemus Fastrak and IsoTrak II trackers and others (untested).
  • WorldViz PPT tracker support (untested).
  • Even more improved GUI.
    • Auto-detect buttons! Just do the action you want to emulate, then the action you want to trigger it.
    • Hides parts of GUI until you need them.
    • Only lists most common values in drop-down box unless you click "More.." button.
    • Better selects most appropriate ranges and mappings.
  • Shortcut keys (when program isn't running).
  • Help menu links to GlovePIE website and Yahoo group.
  • New command line parameters /p: eg. "/r:notepad" "/p:whatever.txt", will open whatever.txt in notepad.
  • Apps specified on command line are now run after your script is started, so they are foreground.
  • More low level P5 support (p5.TopSensorHAngle, p5.HeadSeparation, p5.Led0err, etc.).
  • Running script from command line bug fixed. GlovePIE -script.pie no longer gives an error.
  • Multiple keyboards without multiple mice bug fixed (the lazy way).
  • Half-running, half-stopped bug fixed.
  • Can now import e-Speaking files (look in My Documents for the xml file).
  • Window.BeforeDash, Window.AfterDash, Window.AppName, Window.FileName.
  • License now prohibits cheating online.

v0.20

  • PIE SOMETIMES MINIMIZES DIFFERENTLY!!! With scripts involving multiple cursors, it will minimize to the desktop, not the taskbar. And you have to restore it from the desktop, not the taskbar. Sorry.
  • OSC Support.
  • Improved MIDI GUI.
  • More accurate and responsive frame rate, may use more CPU though, set PIE.FrameRate to change it.
  • Force Feedback Gamepad support.
  • Speech recognition bugs which stopped it recognising half the time have been fixed.
  • New AskedFor(" ") speech recognition function (only partially implemented).
  • Multiple mouse support (windows XP and above).
  • Multiple mouse cursors (windows 2000 and above).
  • Swallow mouse input (windows 2000 and above).
  • Horizontal mouse wheel support (in theory).
  • Mouse.WheelUp, Mouse.WheelDown, etc. now work (but not for multiple mice).
  • Delta function, tells you how much a variable has changed since last frame.
  • partial OSC support.
  • Fixed bug which required space before units.
  • Fixed bug with negative powers.
  • e^2 now works like you would expect.
  • Pie.Frame tells you what Frame PIE is up to.
  • Pie.Epsilon is now set to 1, meaning ~= only requires them to be within 1 unit.
  • Windows 95 is temporarily not supported (due to a bug in Delphi 6), although it may still work if you have updated some windows components.
  • Imports lots of different file formats.
  • Doesn't import the latest version of P5Midi yet. Sorry.

External links

Advertising: