Modification to replace the stock brake pedal sensor on a Logitech G29 pedal set with a load cell, the purpose of which is to more closely simulate a real brake system which is dependent on the force applied to the pedal and not the pedal position
I assume this would work on the G920 without any issues, and possibly the G27 and G25, however I have not had the opportunity to test.
It uses a cheap load cell with two closely matched 1k resistors arranged in a Wheatstone bridge and an Instrumentation Op-Amp. The cell is mounted in a 3D printed model that replaces the lower half of the brake piston assembly
There is a digital version by SkiDude88 using an HX711, that often comes bundled with the load cells, and an Arduino
Assembly re-uses the spring and rubber block, along with a short piece of M10 rod. The adjustment of the location of the washer and the protrusion of the top nut allow changes to the first stage of the pedal, which is designed to simulate the initial feel of the pedal as the pads move into contact with the disc.
Fully installed, with the amplifier circuit mounted in a small case
2020-10-22 UPDATE
Working on a 3D printed plunger to remove the need to cobble one together
The load cells are cheap bathroom scale variety. I got mine from Amazon:
https://www.amazon.co.uk/gp/product/B07TWLP3X8
Each cell is comprised of two resistors one which increases under load (white) and the other which decreases (black). Zero load is approx 1k, with about 2-3 Ohm change under heavy load
The loadcell is connected to the circuit as follows:
Since we need to output a higher voltage with no load on the cells we have to unbalance the bridge so that load brings it back into balance.
The 1k resistors for R1
and R2
should be measured and the larger of the two should
be used for R1
to allow R_BAL1
to adjust the link with R2
and force the bridge out of
balance with no load
R_REF
should be replaced with a link from the middle pin to the right pin. This
will tie the REF
pin on the INA122P to ground.
It was originally used when the design had two load cells
and the INA122P was inverting the gain.
Astute observers may have noticed the connections for the loadcell appear to be reversed in reference to V+ and V-. This is because the labelling on the PCB of V+ and V- was in reference to the dual load cell configuration and hence the labels on the PCB are not correct for a single cell.
The circuit also allows for simulating a clutch, allowing it to be removed if desired. The G29 has been known to glitch if the clutch is disconnected and the leads left hanging.
If you do not need this feature, you can leave R3
and R4
unpopulated on the board
The PCB design is a little tricky to manually etch, so we came up with a slightly larger design to help. Note that this is a mirror image to print and apply to the copper via toner transfer. You can find a pdf with the correct size here
Previous prints have been done with the model on it's side. This was to ensure the grain in the upper cylinder was along the length of the cylinder
The plunger is comprised of several sections. It is recommened to print the bottom section with 100% infill
From reading around it seems that there is not an agreed set of values for what represents min and max braking. Below is a table I took from attaching an AVO directly to the middle pin of the brake potentiometer on my set and monitoring the output on the PS4:
Level | Voltage |
---|---|
0% | 3.0 |
25% | 2.5 |
50% | 2.2 |
75% | 2.0 |
100% | 1.9 |
-----------------------
\ 1 2 3 4 5 /
\ 6 7 8 9 /
-----------------
Pin | Role | Colour |
---|---|---|
1 | Gnd | Black |
2 | Throttle | Orange |
3 | Brake | White |
4 | Clutch | Green |
5 | NC | |
6 | +3.3v | Red |
7 | NC | |
8 | NC | |
9 | +3.3v | Red |
The above values were taken by removing the wiring loom from the pedal set and measuring at the spade connectors. Note that these pin outs are different to those reported by others for the G27 with +3.3v and Gnd switched
This is a popular mod and others have come before with interesting designs that you may also want to take a look at: