daibach142 / fgfs_saitek_radio Goto Github PK
View Code? Open in Web Editor NEWMulti-platform handler for Saitek Radio Panel
License: GNU General Public License v3.0
Multi-platform handler for Saitek Radio Panel
License: GNU General Public License v3.0
DRIVER FOR SAITEK RADIO PANEL ============================= Two versions of the driver are provided: 1. Linux with or without using libudev 2. Raspberry Pi, probably for use with Windows To install this product on Linux, follow the instructions in INSTALL. For Windows, copy the download the file Raspberry.zip to your machine, unzip and follow the instructions given in the zip file. For Linux: ## run flightgear with options : ... --generic=socket,out,30,127.0.0.1,49001,udp,saitek_output --generic=socket,in,30,,49002,udp,saitek_input ... ## run driver - you will be asked to operate a control on the radio panel StartPanel The X windows configuration is modified so that the Radio Panel is ignored as a mouse device. The complete source code is also provided, but not required for installation I (Dave Attwood 2020 [email protected]) would like to acknowledge and was inspired by an original version of this software (Halim DJERROUD 2016 [email protected]) of which a few fragments remain. Robert Feal-Martinez inspired, tested (and contributed to) the development of the Raspberry Pi version. For problems or issues either enter an issue on Github, or email [email protected]. There is a new improved project running directly on Windows or Linux here:https://github.com/daibach142/SaitekRadio
Need to display Version tag on startup
Hi there,
The first three steps as found in the INSTALL file do not work properly, and error out.
the intiial ./configure does ask for the device ID and IP address (which I used the default and then 127.0.0.1 for IP).
However, the make command spits out a bunch of errors, after that the sudo make install command complains that the directory doesn't exist. Finally, the StartRadioPanel command complains the command cannot be found.
Any ideas?
lee@raspberrypi:~/Downloads/saitek_radio $ ./configure
Device address (default is /dev/hidraw0): /dev/hidraw0
Flightgear computer (default is 192.168.1.103): 127.0.0.1
StartRadioPanel created
lee@raspberrypi:~/Downloads/saitek_radio $ make
gcc *.c -o SaitekRadioPanel
/usr/bin/ld: /tmp/cc3C9ffc.o:(.bss+0x0): multiple definition of `device'; /tmp/ccpaHBed.o:(.bss+0x0): first defined here
/usr/bin/ld: /tmp/cc3C9ffc.o:(.bss+0x18): multiple definition of `server'; /tmp/ccpaHBed.o:(.bss+0x18): first defined here
/usr/bin/ld: /tmp/cc3C9ffc.o:(.bss+0x2c): multiple definition of `STKRPInput'; /tmp/ccpaHBed.o:(.bss+0x2c): first defined here
/usr/bin/ld: /tmp/cc3C9ffc.o:(.bss+0x30): multiple definition of `FGFSInput'; /tmp/ccpaHBed.o:(.bss+0x30): first defined here
/usr/bin/ld: /tmp/ccucYfJd.o:(.bss+0x0): multiple definition of `device'; /tmp/ccpaHBed.o:(.bss+0x0): first defined here
/usr/bin/ld: /tmp/ccucYfJd.o:(.bss+0x18): multiple definition of `server'; /tmp/ccpaHBed.o:(.bss+0x18): first defined here
/usr/bin/ld: /tmp/ccucYfJd.o:(.bss+0x2c): multiple definition of `STKRPInput'; /tmp/ccpaHBed.o:(.bss+0x2c): first defined here
/usr/bin/ld: /tmp/ccucYfJd.o:(.bss+0x30): multiple definition of `FGFSInput'; /tmp/ccpaHBed.o:(.bss+0x30): first defined here
/usr/bin/ld: /tmp/cckUY4Rb.o:(.bss+0x0): multiple definition of `device'; /tmp/ccpaHBed.o:(.bss+0x0): first defined here
/usr/bin/ld: /tmp/cckUY4Rb.o:(.bss+0x18): multiple definition of `server'; /tmp/ccpaHBed.o:(.bss+0x18): first defined here
/usr/bin/ld: /tmp/cckUY4Rb.o:(.bss+0x2c): multiple definition of `STKRPInput'; /tmp/ccpaHBed.o:(.bss+0x2c): first defined here
/usr/bin/ld: /tmp/cckUY4Rb.o:(.bss+0x30): multiple definition of `FGFSInput'; /tmp/ccpaHBed.o:(.bss+0x30): first defined here
/usr/bin/ld: /tmp/cckHQ7Kc.o:(.bss+0x0): multiple definition of `device'; /tmp/ccpaHBed.o:(.bss+0x0): first defined here
/usr/bin/ld: /tmp/cckHQ7Kc.o:(.bss+0x18): multiple definition of `server'; /tmp/ccpaHBed.o:(.bss+0x18): first defined here
/usr/bin/ld: /tmp/cckHQ7Kc.o:(.bss+0x2c): multiple definition of `STKRPInput'; /tmp/ccpaHBed.o:(.bss+0x2c): first defined here
/usr/bin/ld: /tmp/cckHQ7Kc.o:(.bss+0x30): multiple definition of `FGFSInput'; /tmp/ccpaHBed.o:(.bss+0x30): first defined here
collect2: error: ld returned 1 exit status
make: *** [Makefile:4: SaiteKRadioPanel] Error 1
lee@raspberrypi:~/Downloads/saitek_radio $ sudo make install
cp SaitekRadioPanel /usr/games
cp: cannot stat 'SaitekRadioPanel': No such file or directory
make: *** [Makefile:9: install] Error 1
lee@raspberrypi:~/Downloads/saitek_radio $ StartRadioPanel
bash: StartRadioPanel: command not found
lee@raspberrypi:~/Downloads/saitek_radio $
sudo apt install libudev1
Popular demand requests running on Windows. Klaus Hempe is developing this. After an intense week, conditional Windows/Linux code switches and adoption of hidapi, couldn't get it to write to the panel (reading was fine).
Closing this issue as not worth further effort. Attached are the Visual C project Klaus was working on, and the hidapi code.
Please feel free to have a go!
This report from Ovazor on FlightGear Forum:
Thank you, I tried your version with a single Saitek Radio device, a DC-3 on a FGFS 2020.3. 0 built from source code this evening, running on OpenSuse Leap 15.2.
Other functions worked, but turning the selector on DME or XPER (same result for both selectors) caused the SaitekRadioPanel exit with Segmentation fault. FlightGear was still OK, and the radio panel could be used by simply re-running the SaitekRadioPanel program.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.