g29 0.1.0

A library offering an interface for Logitech G29 wheel/pedal and force feedback control.
Documentation

G29rs

Rust driver for logitech G29

This library provides a Rust interface for Logitech G29 wheel/pedal and force feedback control. It utilizes the hidapi crate to interact with the G29 hardware

Getting Started

Prerequisites

  • Rust
  • Hidapi : "2.5.0"

How to use

 use g29::{G29, G29Driver};

 fn main() {
     // Create a new G29 instance
     let mut g29 = G29::new();
     // set force feedback for G29 controller - make sure to set the Logitech to PS3 Mode
     g29.g29.lock().unwrap().force_feedback_constant(0.6);
     // Start the reading thread to continuously read input from the G29 device
     g29.start_pumping();
     loop {
           println!("steering = {:?}", g29.g29.lock().unwrap().get_state());
      }
 }

TODO

  • Thread for reading data from G29
  • Writing Test
  • Make it as Lib after testing the full code
  • Reading reverse mode from button in the G29 controller
  • Make methode to transform the State for Carla user "throttle [0 -> 1] brake [0 -> 1] brake[0->1]"

Contributing

Contributions are welcome! If you have improvements, bug fixes, or new features to propose, please submit a pull request.

support

only G29 logitech controller Driving wheel and pedals is support for PS3 mode

support Force feedback