{ "bindings" : { "/actions/dualanalog" : { "sources" : [ { "inputs" : { "click" : { "output" : "/actions/dualanalog/in/leftclick" } }, "mode" : "button", "path" : "/user/hand/left/input/trigger" }, { "inputs" : { "click" : { "output" : "/actions/dualanalog/in/leftclick" }, "position" : { "output" : "/actions/dualanalog/in/leftvalue" }, "touch" : { "output" : "/actions/dualanalog/in/lefttouch" } }, "mode" : "joystick", "path" : "/user/hand/left/input/joystick" }, { "inputs" : { "click" : { "output" : "/actions/dualanalog/in/modeswitch1" } }, "mode" : "button", "path" : "/user/hand/left/input/grip" }, { "inputs" : { "click" : { "output" : "/actions/dualanalog/in/rightclick" }, "position" : { "output" : "/actions/dualanalog/in/rightvalue" }, "touch" : { "output" : "/actions/dualanalog/in/righttouch" } }, "mode" : "joystick", "path" : "/user/hand/right/input/joystick" }, { "inputs" : { "click" : { "output" : "/actions/dualanalog/in/modeswitch2" } }, "mode" : "button", "path" : "/user/hand/right/input/grip" }, { "inputs" : { "click" : { "output" : "/actions/dualanalog/in/rightclick" } }, "mode" : "button", "path" : "/user/hand/right/input/trigger" } ] }, "/actions/lasermouse" : { "sources" : [ { "inputs" : { "click" : { "output" : "/actions/lasermouse/in/leftclick" } }, "mode" : "button", "path" : "/user/hand/left/input/trigger" }, { "inputs" : { "click" : { "output" : "/actions/lasermouse/in/leftclick" } }, "mode" : "button", "path" : "/user/hand/right/input/trigger" }, { "inputs" : { "click" : { "output" : "/actions/lasermouse/in/rightclick" } }, "mode" : "button", "path" : "/user/hand/left/input/x" }, { "inputs" : {}, "mode" : "none", "path" : "/user/hand/right/input/x" }, { "inputs" : { "click" : { "output" : "/actions/lasermouse/in/home" } }, "mode" : "button", "path" : "/user/hand/left/input/y" }, { "inputs" : { "click" : { "output" : "/actions/lasermouse/in/rightclick" } }, "mode" : "button", "path" : "/user/hand/right/input/a" }, { "inputs" : { "click" : { "output" : "/actions/lasermouse/in/home" } }, "mode" : "button", "path" : "/user/hand/right/input/b" }, { "inputs" : { "position" : { "output" : "/actions/lasermouse/in/trackpadvalue" }, "touch" : { "output" : "/actions/lasermouse/in/trackpadtouch" } }, "mode" : "joystick", "path" : "/user/hand/left/input/joystick" } ], "poses": [ { "output": "/actions/lasermouse/in/Pointer", "path": "/user/hand/left/pose/tip" }, { "output": "/actions/lasermouse/in/Pointer", "path": "/user/hand/right/pose/tip" } ] }, "/actions/lasermouse_secondary" : { "sources" : [ { "inputs" : { "click" : { "output" : "/actions/lasermouse_secondary/in/switchlaserhand" } }, "mode" : "button", "path" : "/user/hand/left/input/trigger" }, { "inputs" : { "click" : { "output" : "/actions/lasermouse_secondary/in/switchlaserhand" } }, "mode" : "button", "path" : "/user/hand/right/input/trigger" }, { "inputs" : {}, "mode" : "none", "path" : "/user/hand/right/input/joystick" } ] }, "/actions/scroll_discrete": { "sources": [ { "path": "/user/hand/left/input/joystick", "mode": "scroll", "inputs": { "scroll": { "output": "/actions/scroll_discrete/in/scroll" } } }, { "path": "/user/hand/right/input/joystick", "mode": "scroll", "inputs": { "scroll": { "output": "/actions/scroll_discrete/in/scroll" } } } ] }, "/actions/scroll_smooth": { "sources": [ { "path": "/user/hand/left/input/joystick", "mode": "scroll", "parameters": { "scroll_mode": "smooth" }, "inputs": { "scroll": { "output": "/actions/scroll_smooth/in/scroll" } } }, { "path": "/user/hand/right/input/joystick", "mode": "scroll", "parameters": { "scroll_mode": "smooth" }, "inputs": { "scroll": { "output": "/actions/scroll_smooth/in/scroll" } } } ] }, "/actions/system" : { "chords" : [ { "inputs" : [ [ "/user/hand/left/input/system", "held" ], [ "/user/hand/left/input/trigger", "click" ] ], "output" : "/actions/system/in/TakeScreenshot" } ], "sources" : [ { "inputs" : { "long" : { "output" : "/actions/system/in/showpowermenu" }, "single" : { "output" : "/actions/system/in/toggledashboard" } }, "mode" : "complex_button", "path" : "/user/hand/left/input/system" }, { "inputs" : {}, "mode" : "none", "path" : "/user/hand/right/input/system" }, { "inputs" : {}, "mode" : "button", "path" : "/user/hand/left/input/trigger" } ] } }, "controller_type" : "oculus_touch", "description" : "", "name" : "Oculus Touch system bindings", "action_binds": [ { "action": "/actions/system/in/SystemButtonChord", "source": "/filters/system_button/held" }, { "action": "/actions/system/in/ToggleDashboard", "source": "/filters/system_button/single" }, { "action": "/actions/system/in/TakeScreenshot", "source": "/filters/screenshot_chord/result", "filters_to_cancel" : [ "system_button" ] }, { "action": "/actions/system/in/ShowPowerMenu", "source": "/filters/system_button/long" }, { "action": "/actions/system/in/ToggleRoomView", "source": "/filters/system_button/double" }, { "action": "/actions/lasermouse/in/Pointer", "source": "/user/hand/left/pose/tip" }, { "action": "/actions/lasermouse/in/Pointer", "source": "/user/hand/right/pose/tip" }, { "action": "/actions/lasermouse/in/LeftClick", "source": "/filters/primary_trigger_lasermouse_l/result" }, { "action": "/actions/lasermouse/in/LeftClick", "source": "/filters/primary_trigger_lasermouse_r/result" }, { "action": "/actions/lasermouse/in/RightClick", "source": "/user/hand/left/input/x/click" }, { "action": "/actions/lasermouse/in/RightClick", "source": "/user/hand/right/input/a/click" }, { "action": "/actions/lasermouse/in/Back", "source": "/filters/primary_grip_lasermouse_l/result" }, { "action": "/actions/lasermouse/in/Back", "source": "/filters/primary_grip_lasermouse_r/result" }, { "action": "/actions/lasermouse/in/Home", "source": "/user/hand/left/input/y/click" }, { "action": "/actions/lasermouse/in/Home", "source": "/user/hand/right/input/b/click" }, { "action": "/actions/lasermouse/in/TrackpadTouch", "source": "/user/hand/left/input/trackpad/touch" }, { "action": "/actions/lasermouse/in/TrackpadValue", "source": [ "/user/hand/left/input/trackpad/x", "/user/hand/left/input/trackpad/y" ] }, { "action": "/actions/lasermouse/in/TrackpadTouch", "source": "/user/hand/right/input/trackpad/touch" }, { "action": "/actions/lasermouse/in/TrackpadValue", "source": [ "/user/hand/right/input/trackpad/x", "/user/hand/right/input/trackpad/y" ] }, { "action": "/actions/lasermouse/in/TrackpadScroll", "source": [ "/filters/laser_scroll_l/x", "/filters/laser_scroll_l/y", "/filters/laser_scroll_l/repeat_count" ] }, { "action": "/actions/lasermouse/in/TrackpadScroll", "source": [ "/filters/laser_scroll_r/x", "/filters/laser_scroll_r/y", "/filters/laser_scroll_r/repeat_count" ] }, { "action": "/actions/lasermouse_secondary/in/SwitchLaserHand", "source": "/filters/secondary_trigger_lasermouse_l/result" }, { "action": "/actions/lasermouse_secondary/in/SwitchLaserHand", "source": "/filters/secondary_trigger_lasermouse_r/result" }, { "action": "/actions/dualanalog/in/LeftValue", "source": [ "/user/hand/left/input/trackpad/x", "/user/hand/left/input/trackpad/y" ] }, { "action": "/actions/dualanalog/in/RightValue", "source": [ "/user/hand/right/input/trackpad/x", "/user/hand/right/input/trackpad/y" ] }, { "action": "/actions/dualanalog/in/LeftTouch", "source": "/user/hand/left/input/trackpad/touch" }, { "action": "/actions/dualanalog/in/RightTouch", "source": "/user/hand/right/input/trackpad/touch" }, { "action": "/actions/dualanalog/in/LeftClick", "source": "/user/hand/left/input/trackpad/click" }, { "action": "/actions/dualanalog/in/RightClick", "source": "/user/hand/right/input/trackpad/click" }, { "action": "/actions/dualanalog/in/ModeSwitch1", "source": "/user/hand/left/input/grip/click" }, { "action": "/actions/dualanalog/in/ModeSwitch2", "source": "/user/hand/right/input/grip/click" } ], "filters" :[ { "name" : "all_system_buttons", "type" : "boolean_or", "action_sets" : [ "/actions/system", "/actions/lasermouse", "/actions/dualanalog" ], "input" : { "1":"/user/hand/left/input/system/click", "2":"/user/hand/right/input/system/click" }, "output" : "result" }, { "name" : "system_button", "type" : "boolean_button_press_state", "input" : "/filters/all_system_buttons/result", "action_sets" : [ "/actions/system", "/actions/lasermouse", "/actions/dualanalog" ], "parameters" : { "long_press_delay" : 1.5 }, "output" : { "long" : "long", "double" : "double", "single" : "single", "held" : "held" } }, { "name" : "any_trigger_chord", "type" : "boolean_threshold", "action_sets" : [ "/actions/system" ], "input" : "/user/hand/*/input/trigger/value", "output" : "result" }, { "name" : "primary_trigger_lasermouse_l", "type" : "boolean_threshold", "action_sets" : [ "/actions/lasermouse" ], "input" : "/user/hand/left/input/trigger/value", "output" : "result" }, { "name" : "primary_trigger_lasermouse_r", "type" : "boolean_threshold", "action_sets" : [ "/actions/lasermouse" ], "input" : "/user/hand/right/input/trigger/value", "output" : "result" }, { "name" : "primary_grip_lasermouse_l", "type" : "boolean_threshold", "action_sets" : [ "/actions/lasermouse" ], "input" : "/user/hand/left/input/grip/value", "output" : "result" }, { "name" : "primary_grip_lasermouse_r", "type" : "boolean_threshold", "action_sets" : [ "/actions/lasermouse" ], "input" : "/user/hand/right/input/grip/value", "output" : "result" }, { "name" : "secondary_trigger_lasermouse_r", "type" : "boolean_threshold", "action_sets" : [ "/actions/lasermouse_secondary" ], "input" : "/user/hand/right/input/trigger/value", "output" : "result" }, { "name" : "secondary_trigger_lasermouse_l", "type" : "boolean_threshold", "action_sets" : [ "/actions/lasermouse_secondary" ], "input" : "/user/hand/left/input/trigger/value", "output" : "result" }, { "name" : "laser_scroll_l", "type" : "trackpad_scroll", "input" : { "x" : "/user/hand/left/input/trackpad/x", "y" : "/user/hand/left/input/trackpad/y", "touch" : "/user/hand/left/input/trackpad/touch" }, "output" : { "x" : "x", "y" : "y", "repeat_count" : "repeat_count" } }, { "name" : "laser_scroll_r", "type" : "trackpad_scroll", "input" : { "x" : "/user/hand/right/input/trackpad/x", "y" : "/user/hand/right/input/trackpad/y", "touch" : "/user/hand/right/input/trackpad/touch" }, "output" : { "x" : "x", "y" : "y", "repeat_count" : "repeat_count" } }, { "name" : "screenshot_chord", "type" : "boolean_and", "action_sets" : [ "/actions/system" ], "input" : { "1":"/filters/system_button/held", "2":"/filters/any_trigger_chord/result" }, "output" : "result" } ] }