As the title suggests I have a problem with using SpaceMouse in Chrome on Ubuntu. On Windows 10 it works fine. I've tried installing 3DxWare 10 and spacenavd but it still does not work. It is worth mentioning that the mouse works with Gazebo perfectly fine so it must be a problem with Chrome. Is there some flag in Chrome or additional software to make the SpaceMouse compatible with Gamepad api in javascript?
SpaceMouse Compact not working with js Gamepad api in Chrome on Ubuntu
247 Views Asked by Mateusz Goik At
1
There are 1 best solutions below
Related Questions in JAVASCRIPT
- Using Puppeteer to scrape a public API only when the data changes
- inline SVG text (js)
- An array of images and a for loop display the buttons. How to assign each button to open its own block by name?
- Storing the preferred font-size in localStorage
- Simple movie API request not showing up in the console log
- Authenticate Flask rest API
- Deploying sveltekit app with gunjs on vercel throws cannot find module './lib/text-encoding'
- How to request administrator rights?
- mp4 embedded videos within github pages website not loading
- Scrimba tutorial was working, suddenly stopped even trying the default
- In Datatables, start value resets to 0, when column sorting
- How do I link two models in mongoose?
- parameter values only being sent to certain columns in google sheet?
- Run main several times of wasm in browser
- Variable inside a Variable, not updating
Related Questions in GOOGLE-CHROME
- How to tweak the security policy of Chrome, in order to run "unsafe" snippets in the console?
- Is it possible to manipuate 3rd party Chrome Extensions Network Reqeuests?
- undetected_chromedriver urllib.error.URLError
- Load testing k6 browser + docker
- Editor texto estilo WYSIWYG
- NodeJS crashing chrome browser
- Difficulty Accessing HTTP URLs/IP Addresses Due to Browser Redirecting to HTTPS: Seeking Solutions
- Chrome extension MV3: persistent service worker die after wake up from hibernation
- Attempting to Bundle a Require Command For a Chrome Extension
- Launch URL from C# and detect when browser is closed
- Python selenium scrap data from dynamic website table
- Google Chrome is consuming a lot of CPU on a video call?
- Component drawing error React App on Android + Chrome
- Chrome Selenium CDP Bidi API - Next Commands sended to Target Session have no effect while the initial one does work
- Devtools not working when i try to inspect elements for selenium python it goes to previous page
Related Questions in UBUNTU
- Error: local variable 'bramka' referenced before assignment
- Compiling eBPF program in Docker fails due to missing '__u64' type
- Can't connect to local postgresql server from my docker container
- How to install libfuse2 on Ubuntu 22.04
- Error when trying to execute a binary compiled in a Kali Linux machine on an Ubuntu system
- Can anyoone help me with this problem while trying to install hadoop on ubuntu?
- Ubuntu wsl2 in windows, my /etc/fonts/fonts.conf keeps reloading
- psutil.sensors.temperatures() only delivers {}
- Issue with [proxy_fcgi:error] [pid 1539011] (70007)The timeout specified has expired
- Viber is not working on Ubuntu 22.04 Jammy
- why is ubuntu 18.4 still showing as a linux subsystem when i have uninstalled it?
- Why when I want to open a folder from Visual Studio Code does the screen go crazy?
- What is this error when trying to update Ubuntu?
- Angular on IONOS(?) throws an error with npm
- Tensorflow can't find TensoRT
Related Questions in PERIPHERALS
- Is there a difference in how bitfields behave depending on the underlying type width?
- What type is `peripherals.APB_SARADC.split()`?
- GD32F303RBT6 - TIMER_0 - PWM Settings
- Get the usage timestamps for previously connected external devices in PowerShell
- STM32- Can not initialize eMMC, because is stuck in performing GetCardCSD() function
- Bash script that detect when a joypad is plugged in and retrive its ID_MODEL in a variable, then execute commands
- STM32 SPDIFRX Peripheral problem (interupts not firing)
- Win32 Scard.h c++ - having issues with the api
- Peripheral BLE - Can Simulate BLE device on IOS using Flutter?
- If two computers have the same CPU ( same machine instructions ) then what prevents a program from being compatible for both computers?
- Connecting 3 uart peripherals with esp32
- Peripheral devices connection (COM connection) problem with Win 11
- Can't modify peripheral registers on the rp2040
- Razer Chroma POST Request hangs Python Script indefinitely
- Why are periperal registers 16 bit only on 32 bit MCUs such as STM32 and GD32VF103?
Related Questions in GAMEPAD-API
- Bypass interaction requirement for navigator.getGamepads in Electron
- Add gamepad/game controller support to flutter app tried many libraries but none working
- Array list stored in state is empty when accessed from the provider component in which it is defined
- How to disable other joystick buttons while one of them is being clicked Angular ngx Gamepad
- `requestAnimationFrame()` blocked by a gamepad
- Set steering wheel angle using Gamepad API
- How to know which button is which on most USB Gamepads?
- How can I request input data from a game controller via USB HID API?
- Is there a hack/workaround to communicate from Firefox to a USB device without the Gamepad API?
- Firefox / GeckoView Gamepad API not functional?
- how to read gamepad state in Chrome without creating a new object every time?
- Is there a way to detect motion controls in JavaScript?
- HTML5 Gamepad API TypeError
- Using the standard gamePad code, not finding sound files even though the path name is correct?
- Within the GameController API, is continuously polling of navigator.getGamepads() required?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Short answer: If your SpaceMouse isn't working with Gamepad API on Chrome for Linux, try relabsd.
Long answer: SpaceMouse is close enough to a gamepad that it sometimes works but sometimes doesn't. It would be nice if it worked, but getting it to work reliably in Gamepad API across all platforms is non-trivial and that kind of effort is better spent supporting real gamepads.
For this specific issue, the problem is how the device describes its inputs. Each input has a flag indicating whether the input is absolute (with a defined minimum and maximum value) or relative (meaning each input must be compared with the previous value). Absolute inputs are used for things like joysticks and touchscreen touch points while relative inputs are used for things like optical mice and trackpad movements.
Some SpaceMouse devices describe their axis inputs as relative, some as absolute. When it's an absolute axis, Chrome can fetch the bounds information and use it to normalize the axis to the range [-1,+1] as required by the Gamepad API. When it's a relative axis, bounds information is not available and the axis can't be normalized reliably.
SpaceMouse axes always behave like absolute axes, it's a bug when they're defined as relative. There's a third-party tool for mapping SpaceMouse relative axes to absolute axes, I haven't tested it but from the description it sounds like it does what you need:
https://github.com/nsensfel/relabsd
Some SpaceMouse devices (like SpaceMouse Wireless) report absolute axes and work with Gamepad API.