Demonstration of the LifeOn2 Development FFB controller logic subsystem.
Steering input is fed from a rotary encoder to a standalone HW prototype of the FFB controller logic. iRacing is used as demo SW. Steering update rate to PC host is 1000 Hz.
After a number of months of research, planning and implementation LifeOn2 Development is happy to present the results of his latest project: implementation of a FFB wheel controller.
The controller is built around an ARM 32 bit RISC processor, the Cortex M3. The M3 has a wealth of peripherals, including an USB 2.0 interface, which he has programmed to communicate with a PC host.
The Cortex M3 is paired with a base board which has an electric motor drive stage and monitoring capabilities. The drive stage can be controlled via the Cortex M3 to power a variety of motor types, including brushed DC motors (Found in the Fanatec, Frex and ECCI FFB wheels) as well as brushless servo motors. The drive stage can output 300W, which is more than the Fanatec CSW and I think also the Frex TypeG and ECCI 7000.
The LifeOn2 Development plan has been to use a high performance type servo motor also for this initial FFB controller prototype, but as sourcing of a servo motor with the specifications he wanted has been an issue, He decided to use a brushed DC motor instead. It will drive a proper servo motor going forward.
The status of the project now is that LifeOn2 Development has a FFB controller capable of driving a brushed DC motor (the FFB) and reading of a rotary encoder for steering wheel position.
He has also worked with a brushless DC motor, which is closer to the type of servo he will use going forward. But, as the BLDC motor has some properties not suitable for FFB application, he uses the brushed DC motor instead for now.
LifeOn2 Development has furthermore implemented USB communication between the FFB controller and the PC, and the FFB controller presents itself to the PC as a FFB device.
He has followed the specification from USB-IF on FFB/haptic devices. This means he did not have to implement USB device drivers in Windows, as Windows includes FFB device drivers for USB-IF FFB/haptic devices.
The drawback of using the USB-IF specification is however that the specification and its communication protocol is quite complex and has too many features not used in an FFB simulator steering wheel.
Here is a screenshot of the FFB controller (wheel) attached in Windows 7:
The FFB controller is capable of receiving FFB commands at 1000 Hz, and it can report wheel position to the PC at 500 Hz. I plan to increase that to 1000 Hz too though.
On top of this article is a video of the FFB controller connected to the brushed DC motor and rotary encoder and used as a FFB wheel in iRacing.
As you can see, LifeOn2 Development has not bothered to attach any gearing and other devices (belts etc) to create a proper wheel, but the important stuff is all there. Gearing and other mechanical stuff are the easy parts.. So he says …
|Article submitted by LifeOn2 Development