Repository navigation
1. Project Overview
The Thrustmaster T248 steering wheel consists of two separate embedded systems:
- The Steering Wheel (inputs + display controller)
- The Wheelbase (motor control + USB interface + system master)
Both systems communicate through a dedicated UART interface.
This project analyzes that communication layer and reproduces it using a custom RP2040-based wheel emulator.
The original hardware configuration is structured as follows:
[Wheel PCB (STM32G030K6)] -> UART (115200, 8E1) -> [Wheelbase (STM32L412CB)] -> USB -> [PC / Console]
Main components:
- STM32G030K6 microcontroller
- Rubber dome buttons
- Hall-effect magnetic shifters
- Push button encoders
- I²C display
- UART interface to the wheelbase
- Reset control line
The wheel acts as an input device and display controller.
Main components:
- STM32L412CB microcontroller
- Motor driver hardware
- USB interface to PC / console
- Force feedback processing
- Communication controller for wheel UART
The wheelbase acts as the system master and initiates communication.
The emulator replaces the original STM32-based wheel PCB.
Instead of the STM32G030K6, a Raspberry Pi Pico (RP2040) is used to replicate the electrical and protocol behavior of the original wheel.
Architecture:
[Custom Buttons / Encoders] -> GPIO / Interrupts ->[RP2040 Emulator] -> UART (115200, 8E1) -> [ Stock T248 Wheelbase ]
The emulator must:
- Respond to the startup handshake
- Maintain keep-alive timing
- Transmit button and encoder frames
- Correctly handle display-related communication
Continue with: