The online racing simulator
Well I'm updating my kernel version in about 5/10 minutes, I'll be updating to 2.6.39 so I guess I could patch that version right?
I built a patched 2.6.38 kernel for 64bit Ubuntu 11.04. I haven't changed anything except from adding the necessary patches. The kernel and headers can be downloaded here:

Kernel image
Kernel headers

You can install these packages by copying it into the same directory and running

sudo dpkg -i linux-*.deb

If you're using proprietary nVidia or ATI display driver, you'll most likely have to reinstall it.
I'll try to set up a more suitable mirror for these files as sharegadget deletes your files after 19 days.
I've installed the kernel heads & image, they didn't seem to make a difference. I'm still getting the same FFB as before but it keeps pulling to the left, I can't play properly unless I turn the force down to 0% or turn off FFB altogether in game.

Edit if you want I can try take a video of what I'm meaning.
That's a bit of a setback. Perhaps I improperly backported the patches. Can you open the terminal, plug your wheel in, run

dmesg | tail -n 20

and post the output?

Expected behaviour is that when you plug the wheel in
1) Your wheel switches to native mode (not sure how you can check that with DFGT)
2) Range is set to 900 deg automatically
3) Autocentering is disabled
4) There is a "/sys/module/hid_logitech/drivers/hid:logitech/<device>/range" file present where <device>=000x:046D:C29A.000y (x and y will vary). You write to this file using "echo 720 > (path to the file)" to change the range.

Does anything of this happen when you plug the wheel in? Also, could you post the output of "lsmod" when you wheel is connected?

I'd be glad for any feedback you can get me, there's still still time till the 3.2 kernel merge window opens.

EDIT: If you're having issues with games played through WINE, please make sure you have the lastest 1.3 version. IIRC Natty ships with 1.2 stable branch of WINE which has serious issues with FFB. You can get 1.3 WINE for Ubuntu here
As requested out from
dmesg | tail -n 20

Quote from Terminal :75033.549984] logitech 0003:046D:C294.001D: input,hidraw3: USB HID v1.00 Joystick [Driving Force GT] on usb-0000:00:1d.1-2/input0
[75033.550059] logitech 0003:046D:C294.001D: Switched to native mode
[75033.550077] logitech 0003:046D:C294.001D: Force feedback for Logitech Speed Force Wireless by Simon Wood <[email protected]>
[75033.950186] usb 6-2: USB disconnect, address 11
[75034.310126] usb 6-2: new full speed USB device using uhci_hcd and address 12
[75034.496359] input: Driving Force GT as /devices/pci0000:00/0000:00:1d.1/usb6/6-2/6-2:1.0/input/input38
[75034.496724] logitech 0003:046D:C29A.001E: input,hidraw3: USB HID v1.11 Joystick [Driving Force GT] on usb-0000:00:1d.1-2/input0
[75034.496753] logitech 0003:046D:C29A.001E: Force feedback for Logitech Speed Force Wireless by Simon Wood <[email protected]>

and the output from
lsmod

Quote from Terminal :Module Size Used by
nls_iso8859_1 12713 0
nls_cp437 16991 0
vfat 21575 0
fat 61126 1 vfat
usb_storage 53285 0
uas 17815 0
hid_sony 12711 0
snd_usb_audio 111390 0
snd_usbmidi_lib 24919 1 snd_usb_audio
saa7115 22879 0
ir_lirc_codec 12898 0
lirc_dev 19232 1 ir_lirc_codec
ir_sony_decoder 12549 0
ir_jvc_decoder 12546 0
em28xx 108094 0
ir_rc6_decoder 12546 0
v4l2_common 17647 2 saa7115,em28xx
ir_rc5_decoder 12546 0
videobuf_vmalloc 13589 1 em28xx
ir_nec_decoder 12546 0
videobuf_core 26025 2 em28xx,videobuf_vmalloc
rc_core 26839 7 ir_lirc_codec,ir_sony_decoder,ir_jvc_decoder,em28xx,ir_rc6_decoder,ir_rc5_decoder,ir_nec_decoder
tveeprom 21249 1 em28xx
ipt_MASQUERADE 12759 0
xt_state 12578 0
ipt_REJECT 12541 0
xt_tcpudp 12603 0
iptable_filter 12810 0
nf_nat_h323 17002 0
nf_conntrack_h323 58101 1 nf_nat_h323
nf_nat_pptp 12629 0
nf_conntrack_pptp 13839 1 nf_nat_pptp
nf_conntrack_proto_gre 13606 1 nf_conntrack_pptp
nf_nat_proto_gre 12767 1 nf_nat_pptp
nf_nat_tftp 12489 0
nf_conntrack_tftp 12953 1 nf_nat_tftp
nf_nat_sip 17087 0
nf_conntrack_sip 29412 1 nf_nat_sip
nf_nat_irc 12643 0
nf_conntrack_irc 13349 1 nf_nat_irc
nf_nat_ftp 12649 0
nf_conntrack_ftp 13359 1 nf_nat_ftp
iptable_nat 13182 0
nf_nat 25416 9 ipt_MASQUERADE,nf_nat_h323,nf_nat_pptp,nf_nat_proto_gre,nf_nat_tftp,nf_nat_sip,nf_nat_irc,nf_nat_ftp,iptable_nat
nf_conntrack_ipv4 19589 3 iptable_nat,nf_nat
nf_conntrack 81469 18 ipt_MASQUERADE,xt_state,nf_nat_h323,nf_conntrack_h323,nf_nat_pptp,nf_conntrack_pptp,nf_conntrack_proto_gre,nf_nat_tftp,nf_conntrack_tftp,nf_nat_sip,nf_conntrack_sip,nf_nat_irc,nf_conntrack_irc,nf_nat_ftp,nf_conntrack_ftp,iptable_nat,nf_nat,nf_conntrack_ipv4
nf_defrag_ipv4 12729 1 nf_conntrack_ipv4
ip_tables 26957 2 iptable_filter,iptable_nat
x_tables 29538 7 ipt_MASQUERADE,xt_state,ipt_REJECT,xt_tcpudp,iptable_filter,iptable_nat,ip_tables
snd_seq_dummy 12798 0
cryptd 20352 0
aes_x86_64 17208 1
aes_generic 38279 1 aes_x86_64
binfmt_misc 17456 1
parport_pc 36823 0
ppdev 17069 0
vesafb 13761 1
snd_hda_codec_realtek 331704 1
nvidia 10709116 72
snd_hda_intel 32881 4
joydev 17412 0
snd_hda_codec 103315 2 snd_hda_codec_realtek,snd_hda_intel
snd_hwdep 13604 2 snd_usb_audio,snd_hda_codec
hid_logitech 26427 0
snd_pcm 95911 4 snd_usb_audio,snd_hda_intel,snd_hda_codec
snd_seq_midi 13324 0
arc4 12529 2
ff_memless 12966 1 hid_logitech
hid_apple 13237 0
snd_rawmidi 30435 2 snd_usbmidi_lib,snd_seq_midi
snd_seq_midi_event 14899 1 snd_seq_midi
psmouse 72840 0
serio_raw 13166 0
usbhid 46693 1 hid_logitech
hid 90763 4 hid_sony,hid_logitech,hid_apple,usbhid
snd_seq 61397 3 snd_seq_dummy,snd_seq_midi,snd_seq_midi_event
iwlagn 331644 0
iwlcore 167108 1 iwlagn
snd_timer 29396 2 snd_pcm,snd_seq
snd_seq_device 14462 4 snd_seq_dummy,snd_seq_midi,snd_rawmidi,snd_seq
snd 67204 18 snd_usb_audio,snd_usbmidi_lib,snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
uvcvideo 67214 0
videodev 81982 4 saa7115,em28xx,v4l2_common,uvcvideo
v4l2_compat_ioctl32 16728 1 videodev
soundcore 12680 1 snd
snd_page_alloc 18484 2 snd_hda_intel,snd_pcm
video 19176 0
mac80211 286741 2 iwlagn,iwlcore
lp 17825 0
parport 46339 3 parport_pc,ppdev,lp
cfg80211 177524 3 iwlagn,iwlcore,mac80211
atl1e 37225 0
ahci 25854 3
libahci 26563 1 ahci

As for when I plug in my wheel; The following behaviours happen.

Wheel sets to non-native mode;
Only 90* range;
Auto-centering disabled;
There is a "range" (attached) file in
/sys/module/hid_logitech/drivers/hid_logitech/0003:046D:C29A.001E

It seems that it still doesn't enable native mode when plugged in, so I can goto 90* each way without auto-centering and any motor resistance. However as soon as I go all the way to full lock there is a lot of resistance and auto-centering is there.

I'm currently using WINE 1.3.15, I upgraded to it when I changed to the 64-bit version of Ubuntu a couple of days ago, when I installed the kernel heads & image as well.
Thanks for the logs. From what I can tell from dmesg the driver picks the wheel up fine and the wheel actually is switched to the native mode - you can tell that because it identifies itself as 046D:C29A. All Logitech wheels in fallback mode have 046D:C294 VID/PID.

The "range" file contains only one value which is the current range of the wheel. "cat range" should print the current range, "echo 720 > range" should set range to 720 degrees etc, you get the idea.
Can you set the range with LTWC?

FFB in WINE has been fixed in 1.3.19 or so if you can, please update to the latest version 1.3.28 (the PPA a linked should contain it).
I can set the range fine with LTWC, and I've downloaded wine 1.3.28 just now. Although I have to find 32-bit development files to install it
You shouldn't have to compile WINE from sources. Check out the link I posted 2 posts above, it describes how to add a software repository with the latest version of WINE.
If you can set range with LTWC, can you also set it like this? "echo 720 > /sys/module/... .../range"
Quote from MadCatX :You shouldn't have to compile WINE from sources. Check out the link I posted 2 posts above, it describes how to add a software repository with the latest version of WINE.
If you can set range with LTWC, can you also set it like this? "echo 720 > /sys/module/... .../range"

Just tried it, seems to have worked I think. I'll go check the range file. FFB isn't an issue anymore I have WINE 1.3.28

EDIT: Yes, range is at 720.
Perfect, you should be able to set any range from 40 to 900 degrees like that. In fact, the range should set to 900 degrees automatically, I dunno why it doesn't seem to be working for you... Please let me know if you come across any other issues.
I will do, but just now things seem to be fine
Ok doke, came across another annoyance. Whenever I first load up LFS or pit, the peddles seem to be on full even though I haven't touched them. I notice as soon as I press them down, the problem goes away. Although the brake peddle can stick sometimes.
Quote from bkss :Ok doke, came across another annoyance. Whenever I first load up LFS or pit, the peddles seem to be on full even though I haven't touched them. I notice as soon as I press them down, the problem goes away. Although the brake peddle can stick sometimes.

this seems to be a problem within wine; everytime i toggle fullscreen (or start the game), i have to calibrate my wheel/pedals. hasn't annoyed me enough to look into it :-)
It has occurred to me some time ago that WINE picks up the wheel twice. It reads both /dev/jsX and /dev/inputX and doesn't check if they belong to the same device. /dev/jsX is a legacy interface, has deadzone around the center and requires some calibration. /dev/inputX works much better for me(it only requires the "initial" calibration when you launch the game, but LFS needs that in windows too). If you can, please check that you're using /dev/inputX, you can tell that by moving the wheel or pressing the pedals, axes read from the legacy interface will have a noticeable deadzone around the center if you look carefully.
Can't set range on G27
I use Arch Linux and after today's update, LTWheelConf won't set the range. I usually use -r 270 but now it stays at 900. My guess is that it's the new drivers in kernel 3.2 but we also got a minor bump to Wine 1.37-1.1 so that's not out of the question.

The good news is that echo works.
echo 270 > /sys/module/hid_logitech/drivers/hid:logitech/0003:046D:C29B.0010/range

dmesg
[ 1357.346649] usb 4-1: new full-speed USB device number 6 using ohci_hcd
[ 1357.544055] input: G27 Racing Wheel as /devices/pci0000:00/0000:00:12.0/usb4/4-1/4-1:1.0/input/input18
[ 1357.544160] logitech 0003:046D:C29B.000E: input,hidraw3: USB HID v1.11 Joystick [G27 Racing Wheel] on usb-0000:00:12.0-1/input0
[ 1357.544169] logitech 0003:046D:C29B.000E: Force feedback for Logitech Speed Force Wireless by Simon Wood <[email protected]>
[ 1367.743483] input: G27 Racing Wheel as /devices/pci0000:00/0000:00:12.0/usb4/4-1/4-1:1.0/input/input19
[ 1367.743611] logitech 0003:046D:C29B.000F: input,hidraw3: USB HID v1.11 Joystick [G27 Racing Wheel] on usb-0000:00:12.0-1/input0
[ 1367.743631] logitech 0003:046D:C29B.000F: Force feedback for Logitech Speed Force Wireless by Simon Wood <[email protected]>
[ 1367.842394] input: G27 Racing Wheel as /devices/pci0000:00/0000:00:12.0/usb4/4-1/4-1:1.0/input/input20
[ 1367.842525] logitech 0003:046D:C29B.0010: input,hidraw3: USB HID v1.11 Joystick [G27 Racing Wheel] on usb-0000:00:12.0-1/input0
[ 1367.842537] logitech 0003:046D:C29B.0010: Force feedback for Logitech Speed Force Wireless by Simon Wood <[email protected]>

lsusb -v

Bus 004 Device 006: ID 046d:c29b Logitech, Inc. G27 Racing Wheel
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 16
idVendor 0x046d Logitech, Inc.
idProduct 0xc29b G27 Racing Wheel
bcdDevice 12.38
iManufacturer 0
iProduct 2 G27 Racing Wheel
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 41
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 98mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 254 NV=046D,NP=C29B,ND=1238,HV=046D,HP=FE01,HD=0005
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 33 US
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 133
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 2
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 2
Device Status: 0x0000
(Bus Powered)

Quote from rowdog :I use Arch Linux and after today's update, LTWheelConf won't set the range. I usually use -r 270 but now it stays at 900. My guess is that it's the new drivers in kernel 3.2 but we also got a minor bump to Wine 1.37-1.1 so that's not out of the question.

You're right about the kernel causing LTWC to no longer work. The updated driver sets wheel's range to the maximum upon initialization, so when LTWC returns the wheel back to the kernel, the driver reinitializes the wheel and sets the range back to 900. Setting the range via sysfs is the preferred way now.
Ah, I see. I knew there was a driver for DFGT in 3.2 but I didn't realize it would impact the G27 as well. It's nice to see some proper kernel support. Thanks for all your work on this MadCatX.
-
(Captain_Muratti) DELETED by Captain_Muratti
Hi,
First of all, thanks for all the work gone into making LFS usable under linux! :-)


I've used the installer on this thread, with wine 1.3.37 instead, this is a Mint (Debian wheezy/sid variant), with Linux 2.6.32-5-686, with a G25.

However the FFB is not working correctly. It seems to be either full-force, or no force at all. Sometimes it's somewhere in between, but it definitely does not feel any similar to FFB on windows.

Any idea what to do to fix it? Please let me know if you need any more information.
Thanks in advance!
A 2.6.32 is a rather old kernel and although I don't recall the history of changes that far back, a recent kernel might be worth a try. Is your force feedback experience better with a native linux game or a testing tools?
Quote from STenyaK :Hi,
First of all, thanks for all the work gone into making LFS usable under linux! :-)

I've used the installer on this thread, with wine 1.3.37 instead, this is a Mint (Debian wheezy/sid variant), with Linux 2.6.32-5-686, with a G25.

However the FFB is not working correctly. It seems to be either full-force, or no force at all. Sometimes it's somewhere in between, but it definitely does not feel any similar to FFB on windows.

Any idea what to do to fix it? Please let me know if you need any more information.
Thanks in advance!

Hi, i haven't used the script in ages, so most likely it has done some (now) unwanted stuff (i.e. the udev rules won't be necessary anymore, you don't need G25manage and so on). As MadCatX said, right now all you should need is a recent kernel and wine > 1.3.17.
The script tho installs wine from source, and the launcher explicitly uses that version, so you should not have to worry about that. I updated the script so that it won't install udev-rules and G25manage anymore, and also updated the versions of wine to 1.4_rc5 and LFS to the most recent one. You can remove the udev-rules in /etc/udev/rules.d/ (sudo rm /etc/udev/rules.d/90-*-wheel.rules) if you like.
I modified the startscript, too, so just download and run the installer again. It should work again (with a proper kernel).
Quote from MadCatX :A 2.6.32 is a rather old kernel and although I don't recall the history of changes that far back, a recent kernel might be worth a try.

Quote from slim.one :Hi, i haven't used the script in ages, so most likely it has done some (now) unwanted stuff (i.e. the udev rules won't be necessary anymore, you don't need G25manage and so on). As MadCatX said, right now all you should need is a recent kernel and wine > 1.3.17.

Thanks both. I decided to uninstall my old Mint/Debian, and go for a Debian Sid this time (keeping my home directory intact).

Just replaced the nouveau drivers with nvidia drivers, rebooted, clicked the handy LFS icon on the menu, and voila, perfect FFB in LFS :-D
Question, wasn't the patch supposed to be added to kernel 3.2?

I not to long ago update to kernel 3.3, and I was hoping that my DFGT wouldn't need LTWC to set it too native mode, but it still does.

Also when trying to compile LTWC I get fatal errors:

bally@bally-laptop ~/LTWC $ sudo make
gcc -Wall -c main.c
In file included from main.c:30:0:
wheelfunctions.h:24:31: fatal error: libusb-1.0/libusb.h: No such file or directory
compilation terminated.
make: *** [main.o] Error 1

Kernel 3.2 and above should handle DFGT just fine, although the patch has never been tested with that wheel. If you add "hid.debug=1" parameter to the kernel boot line, you should get some extra debugging info in dmesg which should help us figure out what's going on.

You're probably missing something like "libusb1-dev" package, that's why LTWC won't compile.
Will test that out in a second then. What's the dmesg command to gain such info?

grep | dmesg ?

Plug the wheel in and type "grep", the last few lines in the log should tell you if and how was the wheel picked up.

EDIT: Whooops, I was quite tired when I wrote this, the correct command is of course "dmesg" (or you could use something like "dmesg | tail -n 10"). Thanks stan.distortion for warning me

FGED GREDG RDFGDR GSFDG