Crates.io | g29 |
lib.rs | g29 |
version | 0.2.1 |
source | src |
created_at | 2024-01-31 19:45:47.71774 |
updated_at | 2024-02-09 20:08:38.02828 |
description | A library offering an interface for Logitech G29 wheel/pedal and force feedback control. |
homepage | |
repository | https://github.com/misarb/g29rs/ |
max_upload_size | |
id | 1122115 |
size | 190,948 |
Rust driver for Logitech G29
This library provides a Rust interface for Logitech G29 wheel/pedal and force feedback control.
use g29::controller::Controller;
fn main() {
// Create a new G29 instance
let mut g29 = Controller::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());
}
}
Interacting with the driver without starting a thread to set force feedback.
use g29::interface::G29Interface;
fn main() {
// Create a new G29 driver instance
let mut g29 = G29Interface::new();
// set ForceFeedback
g29.force_feedback_constant(0.5);
// Reset the G29 device, including steering wheel calibration
g29.reset();
// Example: Set autocenter with a strength of 0.5 and a rate of 0.05
g29.set_autocenter(0.5, 0.05);
}
Reading input from the Logitech G29 in the main thread , and geting the state input in carla format
use g29::controller::Controller;
fn main() {
// Create a new G29 instance
let mut g29 = Controller::new();
// set G29 Steer to the center
g29.g29.lock().unwrap().set_autocenter(0.5,0.05);
// reading
loop {
// reading every 10ms from the G29
g29.g29.lock().unwrap().pump(10);
// get the readed values
println!("Carla_controle = {:?}", g29.g29.lock().unwrap().carla_vehicle_controle());
}
}
Contributions are welcome! If you have improvements, bug fixes, or new features to propose, please submit a pull request.
Only G29 logitech controller Driving wheel/pedals is supported for now, and also the force Feedback with the PS3 mode
Support Force feedback