EDx52display
EDx52display copied to clipboard
Posible linux support?
The X52 HOTAS also is supported on linux (with open source drivers)
i dont know the go coding language so i cant help too much but im very willing to help testing
currently when trying to run go build
> go build
package github.com/peterbn/EDx52display
imports github.com/peterbn/EDx52display/conf
imports golang.org/x/sys/windows/registry: build constraints exclude all Go files in /home/noah/go/pkg/mod/golang.org/x/[email protected]/windows/registry
~/github/EDx52display master !1 ?1 >
a (i think) equivalent bash script to the release.ps1
#!/bin/sh
go clean
rm -fr ./EDx52Display
rm -fe ./Release.zip
mkdir EDx52Display
go build
cp -r "$PWD/EDx52Display.* $PWD/conf.yaml $PWD/LICENSE $PWD/README.md $PWD/names $PWD/DepInclude" "$PWD/EDx52Display"
# i dont remember a zip command
Hi,
I didn't know there were open-source drivers. Do you know if they also support the MFD write API? Can you link to the documentation for those drivers?
To set expectations, I don't have a linux gaming PC myself, or a linux development environment at home, so I don't know if I will be looking at this, but if you link to the resources then I'm more than happy to help someone from the community get up and running to implement this, including refactoring the code so it's possible to cross-build for both windows and linux.
And if this is a large request from the community, then I'm not ruling out trying to set up a virtual machine or some other setup so I can give it a go.
The FOSS drivers support the MFD write API, indeed (in fact, it supports everything, from controlling individual diodes to mouse emulation via throttle mini-stick). Your program could either simply call command-line functions from that project: https://github.com/nirenjan/libx52/tree/master/libx52
52cli
Usage: x52cli <command> [arguments]
Commands:
led <led-id> <state>
bri {mfd | led} <brightness level>
mfd <line> <text in quotes>
blink { on | off }
shift { on | off }
clock {local | gmt} {12hr | 24hr} {ddmmyy | mmddyy | yymmdd}
offset {2 | 3} <offset from clock 1 in minutes> {12hr | 24hr}
time <hour> <minute> {12hr | 24hr}
date <dd> <mm> <yy> {ddmmyy | mmddyy | yymmdd}
raw <wIndex> <wValue>
WARNING: raw command may damage your device
...Or call to a daemon: https://github.com/nirenjan/libx52/blob/master/daemon/protocol.dox
Full documentation of everything that would be needed is inside various directories of the main libx52 github.
O7 and cheers,
Hi @Cat-Lady
Thank you for the extra information here.
As mentioned in my previous post, I don't have the setup to implement and test this on my own, but if anyone is interested in adapting the code to use the Linux driver (either as CLI or by building it as a library and calling it directly), then I'd be happy to support that effort.