Reference - AndersMalmgren/FreePIE GitHub Wiki

Reference

This page contains the full reference for each of FreePIE's built-in plugins and libraries.

Devices

ahrsImu

  • pitch Single pitch
  • roll Single roll
  • update Event
  • yaw Single yaw

android

  • googlePitch Double googlePitch
  • googleRoll Double googleRoll
  • googleYaw Double googleYaw
  • pitch Double pitch
  • raw RawGlobal raw
    • ax Double ax
    • ay Double ay
    • az Double az
    • gx Double gx
    • gy Double gy
    • gz Double gz
    • mx Double mx
    • my Double my
    • mz Double mz
  • roll Double roll
  • update Event
  • yaw Double yaw

cinemizer

  • pitch Single pitch
  • roll Single roll
  • update Event
  • yaw Single yaw

freeImu

  • pitch Single pitch
  • roll Single roll
  • update Event
  • yaw Single yaw

freespace

  • continuousYawMode Boolean continuousYawMode
  • pitch Double pitch
  • roll Double roll
  • yaw Double yaw

freeTrack

  • pitch Single pitch
  • roll Single roll
  • update Event
  • x Single x
  • y Single y
  • yaw Single yaw
  • z Single z

hydra

  • bumper Boolean bumper
  • enabled Boolean enabled
  • enableHemisphereTracking void enableHemisphereTracking ()
  • four Boolean four
  • isDocked Boolean isDocked
  • joybutton Boolean joybutton
  • joyx Single joyx
  • joyy Single joyy
  • one Boolean one
  • pitch Single pitch
  • q0 Single q0
  • q1 Single q1
  • q2 Single q2
  • q3 Single q3
  • roll Single roll
  • side Char side
  • start Boolean start
  • three Boolean three
  • trigger Single trigger
  • two Boolean two
  • update Event
  • x Single x
  • y Single y
  • yaw Single yaw
  • z Single z

iPad

  • continuousYawMode Boolean continuousYawMode
  • pitch Double pitch
  • roll Double roll
  • yaw Double yaw

iPhone

  • continuousYawMode Boolean continuousYawMode
  • pitch Double pitch
  • roll Double roll
  • yaw Double yaw

iPod

  • continuousYawMode Boolean continuousYawMode
  • pitch Double pitch
  • roll Double roll
  • yaw Double yaw

joystick

  • getDown Boolean getDown (Int32 button)
  • getPressed Boolean getPressed (Int32 button)
  • pov Int32[] pov
  • setRange void setRange (Int32 lowerRange,Int32 upperRange)
  • sliders Int32[] sliders
  • x Int32 x
  • xRotation Int32 xRotation
  • y Int32 y
  • yRotation Int32 yRotation
  • z Int32 z
  • zRotation Int32 zRotation

keyboard

  • getKeyDown Boolean getKeyDown (Key key)
  • getKeyUp Boolean getKeyUp (Key key)
  • getPressed Boolean getPressed (Key key)
  • setKey void setKey (Key key,Boolean down)
  • setKeyDown void setKeyDown (Key key)
  • setKeyUp void setKeyUp (Key key)
  • setPressed void setPressed (Key key)

midi

  • data DataGlobal data<
    • buffer Byte[] buffer<
    • channel Byte channel<
    • status MidiStatus status<
    • timestamp Int64 timestamp<
  • update Event

mouse

  • deltaX Double deltaX
  • deltaY Double deltaY
  • getButton Boolean getButton (Int32 button)
  • getPressed Boolean getPressed (Int32 button)
  • leftButton Boolean leftButton
  • middleButton Boolean middleButton
  • rightButton Boolean rightButton
  • setButton void setButton (Int32 button,Boolean pressed)
  • setPressed void setPressed (Int32 button)
  • wheel Int32 wheel
  • wheelDown Boolean wheelDown
  • wheelMax Int32 wheelMax
  • wheelUp Boolean wheelUp

The mouse plugin allows you to control and get the status of the mouse from your script.

However, controlling the mouse is often inaccurate using this library, since you can only control the mouse's "delta", or speed into a specific direction, and Python's execution timing isn't always 100% accurate. Consequently, you also cannot move it to a specific position. Check out this guide on accurately controlling your mouse.

oculusVR

  • center void center ()
  • pitch Single pitch
  • roll Single roll
  • update Event
  • x Single x
  • y Single y
  • yaw Single yaw
  • z Single z

ppJoy

  • setAxis void setAxis (AxisTypes axisType,Int32 value)
  • setButton void setButton (Int32 button,Boolean pressed)
  • setPressed void setPressed (Int32 button)
  • setRange void setRange (Int32 lowerRange,Int32 upperRange)

speech

  • said Boolean said (String text)
  • said Boolean said (String text, Single confidence)
  • say void say (String text)
  • selectVoice void selectVoice (String name)

trackIR

  • pitch Single pitch
  • roll Single roll
  • update Event
  • x Single x
  • y Single y
  • yaw Single yaw
  • z Single z

wiimote

  • acceleration AccelerationGlobal acceleration
    • calibrated Event
    • update Event
    • x Double x
    • y Double y
    • z Double z
  • ahrs EulerAngles ahrs
    • pitch Double pitch
    • roll Double roll
    • yaw Double yaw
  • buttons WiimoteButtonState buttons
    • button_down Boolean button_down (WiimoteButtons b)
    • button_pressed Boolean button_pressed (WiimoteButtons b)
    • update Event
  • enable void enable (WiimoteCapabilities flags)
  • motionplus MotionPlusGlobal motionplus
    • calibrated Event
    • pitch_left Double pitch_left
    • roll_left Double roll_left
    • update Event
    • yaw_down Double yaw_down
  • nunchuck NunchuckGlobal nunchuck
    • acceleration Acceleration acceleration
      • x Double x
      • y Double y
      • z Double z
    • buttons NunchuckButtonState buttons
      • button_down Boolean button_down (NunchuckButtons b)
    • stick NunchuckStick stick
      • x Double x
      • y Double y
    • update Event

vJoy

  • axisMax Int32 axisMax
  • continuousPovMax Int32 continuousPovMax
  • dial Int32 dial
  • rx Int32 rx
  • ry Int32 ry
  • rz Int32 rz
  • setAnalogPov void setAnalogPov (Int32 pov, Int32 value)
  • setButton void setButton (Int32 button, Boolean pressed)
  • setDigitalPov void setDigitalPov (Int32 pov, VJoyPov direction)
  • setPressed void setPressed (Int32 button)
  • slider Int32 slider
  • version VJoyVersionGlobal version
    • api UInt32 api
    • driver UInt32 driver
  • x Int32 x
  • y Int32 y
  • z Int32 z

vuzix

  • continuousYawMode Boolean continuousYawMode
  • DataUnits VuzixDataUnits DataUnits
  • pitch Double pitch
  • roll Double roll
  • x Double x
  • y Double y
  • yaw Double yaw
  • z Double z

xbox360

  • a Boolean a
  • b Boolean b
  • back Boolean back
  • down Boolean down
  • left Boolean left
  • leftShoulder Boolean leftShoulder
  • leftStickX Double leftStickX
  • leftStickY Double leftStickY
  • leftThumb Boolean leftThumb
  • leftTrigger Double leftTrigger
  • right Boolean right
  • rightShoulder Boolean rightShoulder
  • rightStickX Double rightStickX
  • rightStickY Double rightStickY
  • rightThumb Boolean rightThumb
  • rightTrigger Double rightTrigger
  • start Boolean start
  • up Boolean up
  • x Boolean x
  • y Boolean y

yei

  • button0 Boolean button0
  • button1 Boolean button1
  • pitch Double pitch
  • roll Double roll
  • tareSensor void tareSensor ()
  • update Event
  • yaw Double yaw

Enums

AxisTypes

  • Dial Dial = 7
  • Slider Slider = 4
  • X X = 0
  • XRotation XRotation = 5
  • Y Y = 1
  • YRotation YRotation = 6
  • ZAxis ZAxis = 2
  • ZRotation ZRotation = 3

Key

  • A A = 10
  • AbntC1 AbntC1 = 36
  • AbntC2 AbntC2 = 37
  • Apostrophe Apostrophe = 38
  • Applications Applications = 39
  • AT AT = 40
  • AX AX = 41
  • B B = 11
  • Backslash Backslash = 43
  • Backspace Backspace = 42
  • C C = 12
  • Calculator Calculator = 44
  • CapsLock CapsLock = 45
  • Colon Colon = 46
  • Comma Comma = 47
  • Convert Convert = 48
  • D D = 13
  • D0 D0 = 0
  • D1 D1 = 1
  • D2 D2 = 2
  • D3 D3 = 3
  • D4 D4 = 4
  • D5 D5 = 5
  • D6 D6 = 6
  • D7 D7 = 7
  • D8 D8 = 8
  • D9 D9 = 9
  • Delete Delete = 49
  • DownArrow DownArrow = 50
  • E E = 14
  • End End = 51
  • Equals Equals = 52
  • Escape Escape = 53
  • F F = 15
  • F1 F1 = 54
  • F10 F10 = 63
  • F11 F11 = 64
  • F12 F12 = 65
  • F13 F13 = 66
  • F14 F14 = 67
  • F15 F15 = 68
  • F2 F2 = 55
  • F3 F3 = 56
  • F4 F4 = 57
  • F5 F5 = 58
  • F6 F6 = 59
  • F7 F7 = 60
  • F8 F8 = 61
  • F9 F9 = 62
  • G G = 16
  • Grave Grave = 69
  • H H = 17
  • Home Home = 70
  • I I = 18
  • Insert Insert = 71
  • J J = 19
  • K K = 20
  • Kana Kana = 72
  • Kanji Kanji = 73
  • L L = 21
  • LeftAlt LeftAlt = 77
  • LeftArrow LeftArrow = 76
  • LeftBracket LeftBracket = 74
  • LeftControl LeftControl = 75
  • LeftShift LeftShift = 78
  • LeftWindowsKey LeftWindowsKey = 79
  • M M = 22
  • Mail Mail = 80
  • MediaSelect MediaSelect = 81
  • MediaStop MediaStop = 82
  • Minus Minus = 83
  • Mute Mute = 84
  • MyComputer MyComputer = 85
  • N N = 23
  • NextTrack NextTrack = 86
  • NoConvert NoConvert = 87
  • NumberLock NumberLock = 88
  • NumberPad0 NumberPad0 = 89
  • NumberPad1 NumberPad1 = 90
  • NumberPad2 NumberPad2 = 91
  • NumberPad3 NumberPad3 = 92
  • NumberPad4 NumberPad4 = 93
  • NumberPad5 NumberPad5 = 94
  • NumberPad6 NumberPad6 = 95
  • NumberPad7 NumberPad7 = 96
  • NumberPad8 NumberPad8 = 97
  • NumberPad9 NumberPad9 = 98
  • NumberPadComma NumberPadComma = 99
  • NumberPadEnter NumberPadEnter = 100
  • NumberPadEquals NumberPadEquals = 101
  • NumberPadMinus NumberPadMinus = 102
  • NumberPadPeriod NumberPadPeriod = 103
  • NumberPadPlus NumberPadPlus = 104
  • NumberPadSlash NumberPadSlash = 105
  • NumberPadStar NumberPadStar = 106
  • O O = 24
  • Oem102 Oem102 = 107
  • P P = 25
  • PageDown PageDown = 108
  • PageUp PageUp = 109
  • Pause Pause = 110
  • Period Period = 111
  • PlayPause PlayPause = 112
  • Power Power = 113
  • PreviousTrack PreviousTrack = 114
  • PrintScreen PrintScreen = 128
  • Q Q = 26
  • R R = 27
  • Return Return = 117
  • RightAlt RightAlt = 119
  • RightArrow RightArrow = 118
  • RightBracket RightBracket = 115
  • RightControl RightControl = 116
  • RightShift RightShift = 120
  • RightWindowsKey RightWindowsKey = 121
  • S S = 28
  • ScrollLock ScrollLock = 122
  • Semicolon Semicolon = 123
  • Slash Slash = 124
  • Sleep Sleep = 125
  • Space Space = 126
  • Stop Stop = 127
  • T T = 29
  • Tab Tab = 129
  • U U = 30
  • Underline Underline = 130
  • Unknown Unknown = 144
  • Unlabeled Unlabeled = 131
  • UpArrow UpArrow = 132
  • V V = 31
  • W W = 32
  • Wake Wake = 135
  • WebBack WebBack = 136
  • WebFavorites WebFavorites = 137
  • WebForward WebForward = 138
  • WebHome WebHome = 139
  • WebRefresh WebRefresh = 140
  • WebSearch WebSearch = 141
  • WebStop WebStop = 142
  • VolumeDown VolumeDown = 133
  • VolumeUp VolumeUp = 134
  • X X = 33
  • Y Y = 34
  • Yen Yen = 143
  • Z Z = 35

The naming scheme is taken from the .NET Key Enum.

MidiStatus

  • ChannelAftertouch ChannelAftertouch = 13
  • Control Control = 11
  • None None = 0
  • NoteOff NoteOff = 8
  • NoteOn NoteOn = 9
  • PitchBendChange PitchBendChange = 14
  • PolyphonicAftertouch PolyphonicAftertouch = 10
  • ProgramChange ProgramChange = 12

NunchuckButtons

  • C C = 2
  • Z Z = 1

TimingTypes

  • HighresSystemTimer HighresSystemTimer = 3
  • SystemTimer SystemTimer = 1
  • ThreadYield ThreadYield = 2

Units

  • Degrees Degrees = 1
  • Radians Radians = 2

WiimoteButtons

  • A A = 8
  • B B = 4
  • DPadDown DPadDown = 1024
  • DPadLeft DPadLeft = 256
  • DPadRight DPadRight = 512
  • DPadUp DPadUp = 2048
  • Home Home = 128
  • Minus Minus = 16
  • One One = 2
  • Plus Plus = 4096
  • Two Two = 1

WiimoteCapabilities

  • Extension Extension = 4
  • IR IR = 8
  • MotionPlus MotionPlus = 2
  • None None = 0

VJoyPov

  • Down Down = 2
  • Left Left = 3
  • Nil Nil = -1
  • Right Right = 1
  • Up Up = 0

VuzixDataUnits

  • DEGREES DEGREES = 1
  • RADIANS RADIANS = 2
  • RAW RAW = 0

Utility

diagnostics

  • debug void debug (String format, Object[] args), void debug (Object arg) Sends a message to the Console tab in FreePIE.
  • notify void notify (String title), (String title, String message), (String title, String message, Object[] args) Launches a Windows Notification, with an optional title.
  • watch void watch (Object value) Sends a given value to FreePIE's Watch tab.

diagnostics allows scripts to communicate debug info, watch values, and notifications to FreePIE's UI and as Windows notifications.

filters

  • continuousRotation Double continuousRotation (Double x), Double continuousRotation (Double x, Units unit)
  • deadband Double deadband (Double x, Double deadZone, Double minY, Double maxY), Double deadband (Double x,Double deadZone)
  • delta Double delta (Double x)
  • ensureMapRange Double ensureMapRange (Double x, Double xMin, Double xMax, Double yMin, Double yMax)
  • mapRange Double mapRange (Double x, Double xMin, Double xMax, Double yMin, Double yMax)
  • simple Double simple (Double x, Double smoothing)
  • stopWatch Boolean stopWatch (Boolean state, Int32 milliseconds)

freePieIO

  • pitch Single pitch
  • roll Single roll
  • update Event
  • x Single x
  • y Single y
  • yaw Single yaw
  • z Single z

This utility allows you to write and read values to and from FreePIE 1.0.355.0 or greater. This is a generic way of games and software to support a wide range of trackers.

A guide for using this library can be found here.

The source code for the client library can be found here.

system

  • setThreadTiming void setThreadTiming (TimingTypes timing)
  • threadExecutionInterval Int32 threadExecutionInterval