G05
BMW X5
29.5KVIEWS
75REPLIES
29APPRECIATES
23ACTIVE PEOPLE
04-03-2026LAST POST
05-04-2023
Does anyone know if soft closing of the tailgate can be coded on a G05. I know it can be on F15 but I couldn’t find anything about it for G05 online. This coding company claims to be able to code it - https://www.codemybimmer.ca/g-chassis-coding/, so it seems like a possibility.
05-04-2023
I first looked into this almost 2y ago. still no joy.
05-05-2023
Wow, if they can, I think a lot of members would be interested.

I have an infant and a toddler who often fall asleep in the back of my car, getting rid of that THUNK would really help!
05-07-2023
If someone needs assistance i can help out.
05-07-2023
TheNine90 wrote
If someone needs assistance i can help out.
Meaning? Can you tell us if we can code tailgate soft close using expert mode in BimmerCode?
05-07-2023
If you can access the HFKM module then look under HKL section. You should find the parameters related to speed.
05-09-2023
Did few F95 s and G05 , originally closing slam was to hard ,after coding closes smooth as butter
05-09-2023
What is changed? Is it much slower?
05-09-2023
MaximK wrote
Did few F95 s and G05 , originally closing slam was to hard ,after coding closes smooth as butter
How do you code it on a G05?
05-09-2023
E91toG05 wrote
What is changed? Is it much slower?
at the end closes smooth as softclose doors . i designed my own script in Esys
05-09-2023
Does anyone know how to do it using BimmerCode?
05-11-2023
anyway to do it with protool ?
05-12-2023
Here is method for G05
This is how part of the cafd will look like
3011 APPL_PLG_SPEED_PROFILE, 64(Top tailgate)
ProfileCloseStartNode1PosPlg		 wert0000
ProfileCloseStartNode1PwmPlg wert00FA
ProfileCloseStartNode2PosPlg wert003C
ProfileCloseStartNode2PwmPlg wert0262
ProfileCloseStartNode3PosPlg wert0000
ProfileCloseStartNode3PwmPlg wert0000
ProfileCloseStartNode4PosPlg wert0000
ProfileCloseStartNode4PwmPlg wert0000
ProfileCloseStartNode5PosPlg wert0000
ProfileCloseStartNode5PwmPlg wert0000
ProfileCloseStartNode6PosPlg wert0000
ProfileClosestartNode6PwmPlg wert0000

ProfileCloseStopNode1PosPlg wert0000
ProfileCloseStopNode1PwmPlg wert0262
ProfileCloseStopNode2PosPlg wert00C8
ProfileCloseStopNode2PwmPlg wert0262
ProfileCloseStopNode3PosPlg wert0000
ProfileCloseStopNode3PwmPlg wert0000
ProfileCloseStopNode4PosPlg wert0000
ProfileCloseStopNode4PwmPlg wert0000
ProfileCloseStopNode5PosPlg wert0000
ProfileCloseStopNode5PwmPlg wert0000
ProfileCloseStopNode6PosPlg wert0000
ProfileCloseStopNode6PwmPlg wert0000

3072 APPL_LTG_SPEED_PROFILE, 69(Lower tailgate)
ProfileCloseStartNode1Pos	 wert0000
ProfileCloseStartNode2Pos wert0096
ProfileCloseStartNode3Pos wert0000
ProfileCloseStartNode4Pos wert0000
ProfileCloseStartNode5Pos wert0000
ProfileCloseStartNode6Pos wert0000
ProfileCloseStartNode1Pwm wert0096
ProfileCloseStartNode2Pwm wert02EE
ProfileCloseStartNode3Pwm wert0000
ProfileCloseStartNode4Pwm wert0000
ProfileCloseStartNode5Pwm wert0000

ProfileCloseStopNode1Pos wert0000
ProfileCloseStopNode2Pos wert015E
ProfileCloseStopNode3Pos wert0000
ProfileCloseStopNode4Pos wert0000
ProfileCloseStopNode5Pos wert0000
ProfileCloseStopNode6Pos wert0000
ProfileCloseStopNode1Pwm wert02EE
ProfileCloseStopNode2Pwm wert02EE
ProfileCloseStopNode3Pwm wert0000
ProfileCloseStopNode4Pwm wert0000
ProfileCloseStopNode5Pwm wert0000
ProfileCloseStopNode6Pwm wert0000

Node refers to sections of the tailgate movement.
Node1 starts from tailgate lock. Node6 is top most. It moves from bottom to top.
This cafd has only two nodes activated. So the whole movement is controlled by two nodes only.

Pwm is the power value that corresponds to speed of spindle.

If you want to lower the speed of tailgate close, change all pwm entries above. Just change the wert value in hex to a lower number i.e You can change it to decimal and divide by 2. Convert it to hex and write it back. The tailgate should close 2 times slower.
If you lower the speed too much it will trigger the maximum time allocated for closing tailgate.
You can overwrite it in MaxTimeClose by increasing the the wert value. Also change TimeoutCloseMov to same value.


ProfileCloseStartNode_X_PosPlg refers to the position in the top tailgate where a section starts.
ProfileCloseStartNode_X_Pos refers to the position in the lower tailgate where a section starts.
ProfileCloseStopNode_X_PosPlg refers to the position in the top tailgate where a section ends.
ProfileCloseStopNode_X_Pos refers to the position in the lower tailgate where a section ends.

To change lower speed only when near tailgate is nearly closed
1.Change the StopNode1PosPlg value to match StartNode2PosPlg so that when tailgate reaches to StartNode2PosPlg it will switch to profile of node1. (Nodes go from bottom to top, StartNode1PosPlg is at tailgate lock StopNode2PosPlg is tailgate fully open)
2.Lower value of ProfileCloseStartNode1PwmPlg and ProfileCloseStopNode1PwmPlg.

Using this setup tailgate will go normal speed and only reduce speed when StopNode1PosPlg is reached(It might be somewhere close to the tailgate lock). If the tailgate reduces speed too early, reduce values of StopNode1PosPlg and StartNode2PosPlg.

Remember to do for both lower and top tailgate.
If you miscalculate, the tailgates might collide if you setup the speed of the top and lower tailgate independently or the top tailgate moves faster than the lower tailgate.
Always be there at the back to monitor the movement of the two tailgates.

Here is my setup
Top tailgate
ProfileCloseStartNode1PwmPlg	Werte=00, 3E
ProfileCloseStopNode1PwmPlg Werte=00, 98
ProfileCloseStartNode2PosPlg Werte=00, 32
ProfileCloseStopNode1PosPlg Werte=00, 32

Lower tailgate
ProfileCloseStartNode1Pwm  	Werte=00, 25
ProfileCloseStopNode1Pwm Werte=00, BB
ProfileCloseStopNode1Pos Werte=00, 96
ProfileCloseStartNode2Pos Werte=00, 96
05-12-2023
any before/after videos of the hard (default) vs. soft closing?
05-12-2023
TheNine90 wrote
Here is method for G05
This is how part of the cafd will look like
3011 APPL_PLG_SPEED_PROFILE, 64(Top tailgate)
ProfileCloseStartNode1PosPlg		 wert0000
ProfileCloseStartNode1PwmPlg wert00FA
ProfileCloseStartNode2PosPlg wert003C
ProfileCloseStartNode2PwmPlg wert0262
ProfileCloseStartNode3PosPlg wert0000
ProfileCloseStartNode3PwmPlg wert0000
ProfileCloseStartNode4PosPlg wert0000
ProfileCloseStartNode4PwmPlg wert0000
ProfileCloseStartNode5PosPlg wert0000
ProfileCloseStartNode5PwmPlg wert0000
ProfileCloseStartNode6PosPlg wert0000
ProfileClosestartNode6PwmPlg wert0000

ProfileCloseStopNode1PosPlg wert0000
ProfileCloseStopNode1PwmPlg wert0262
ProfileCloseStopNode2PosPlg wert00C8
ProfileCloseStopNode2PwmPlg wert0262
ProfileCloseStopNode3PosPlg wert0000
ProfileCloseStopNode3PwmPlg wert0000
ProfileCloseStopNode4PosPlg wert0000
ProfileCloseStopNode4PwmPlg wert0000
ProfileCloseStopNode5PosPlg wert0000
ProfileCloseStopNode5PwmPlg wert0000
ProfileCloseStopNode6PosPlg wert0000
ProfileCloseStopNode6PwmPlg wert0000

3072 APPL_LTG_SPEED_PROFILE, 69(Lower tailgate)
ProfileCloseStartNode1Pos	 wert0000
ProfileCloseStartNode2Pos wert0096
ProfileCloseStartNode3Pos wert0000
ProfileCloseStartNode4Pos wert0000
ProfileCloseStartNode5Pos wert0000
ProfileCloseStartNode6Pos wert0000
ProfileCloseStartNode1Pwm wert0096
ProfileCloseStartNode2Pwm wert02EE
ProfileCloseStartNode3Pwm wert0000
ProfileCloseStartNode4Pwm wert0000
ProfileCloseStartNode5Pwm [...]
Thank you!! This worked perfectly!
05-13-2023
alabesky wrote
Thank you!! This worked perfectly!
Did you use bimmercode to do this? Any video? Thanks
05-13-2023
BobsM3Coupe wrote
Did you use bimmercode to do this? Any video? Thanks
Yah, i used bimmercode.
I just followed his instructions and used his parameters. It closes kinda like a soft close door i had on my f15 now.
05-13-2023
Thanks for sharing , will give it a try : )
TheNine90 wrote
Here is method for G05
This is how part of the cafd will look like
3011 APPL_PLG_SPEED_PROFILE, 64(Top tailgate)
ProfileCloseStartNode1PosPlg		 wert0000
ProfileCloseStartNode1PwmPlg wert00FA
ProfileCloseStartNode2PosPlg wert003C
ProfileCloseStartNode2PwmPlg wert0262
ProfileCloseStartNode3PosPlg wert0000
ProfileCloseStartNode3PwmPlg wert0000
ProfileCloseStartNode4PosPlg wert0000
ProfileCloseStartNode4PwmPlg wert0000
ProfileCloseStartNode5PosPlg wert0000
ProfileCloseStartNode5PwmPlg wert0000
ProfileCloseStartNode6PosPlg wert0000
ProfileClosestartNode6PwmPlg wert0000

ProfileCloseStopNode1PosPlg wert0000
ProfileCloseStopNode1PwmPlg wert0262
ProfileCloseStopNode2PosPlg wert00C8
ProfileCloseStopNode2PwmPlg wert0262
ProfileCloseStopNode3PosPlg wert0000
ProfileCloseStopNode3PwmPlg wert0000
ProfileCloseStopNode4PosPlg wert0000
ProfileCloseStopNode4PwmPlg wert0000
ProfileCloseStopNode5PosPlg wert0000
ProfileCloseStopNode5PwmPlg wert0000
ProfileCloseStopNode6PosPlg wert0000
ProfileCloseStopNode6PwmPlg wert0000

3072 APPL_LTG_SPEED_PROFILE, 69(Lower tailgate)
ProfileCloseStartNode1Pos	 wert0000
ProfileCloseStartNode2Pos wert0096
ProfileCloseStartNode3Pos wert0000
ProfileCloseStartNode4Pos wert0000
ProfileCloseStartNode5Pos wert0000
ProfileCloseStartNode6Pos wert0000
ProfileCloseStartNode1Pwm wert0096
ProfileCloseStartNode2Pwm wert02EE
ProfileCloseStartNode3Pwm wert0000
ProfileCloseStartNode4Pwm wert0000
ProfileCloseStartNode5Pwm wert0000

ProfileCloseStopNode1Pos wert0000
ProfileCloseStopNode2Pos wert015E
ProfileCloseStopNode3Pos wert0000
ProfileCloseStopNode4Pos wert0000
ProfileCloseStopNode5Pos wert0000
ProfileCloseStopNode6Pos wert0000
ProfileCloseStopNode1Pwm wert02EE
ProfileCloseStopNode2Pwm wert02EE
ProfileCloseStopNode3Pwm wert0000
ProfileCloseStopNode4Pwm wert0000
ProfileCloseStopNode5Pwm wert0000
ProfileCloseStopNode6Pwm wert0000

Node refers to sections of the tailgate movement.
Node1 starts from tailgate lock. Node6 is top most. It moves from bottom to top.
This cafd has only two nodes activated. So the whole movement is controlled by two nodes only.

Pwm is the power value that corresponds to speed of spindle.

If you want to lower the speed of tailgate close, change all pwm entries above. Just change the wert value in hex to a lower number i.e You can change it to decimal and divide by 2. Convert it to hex and write it back. The tailgate should close 2 times slower.
If you lower the speed too much it will trigger the maximum time allocated for closing tailgate.
You can overwrite it in MaxTimeClose by increasing the the wert value. Also change TimeoutCloseMov to same value.


ProfileCloseStartNode_X_PosPlg refers to the position in the top tailgate where a section starts.
ProfileCloseStartNode_X_Pos refers to the position in the lower tailgate where a section starts.
ProfileCloseStopNode_X_PosPlg refers to the position in the top tailgate where a section ends.
ProfileCloseStopNode_X_Pos refers to the position in the lower tailgate where a section ends.

To change lower speed only when near tailgate is nearly closed
1.Change the StopNode1PosPlg value to match StartNode2PosPlg so that when tailgate reaches to StartNode2PosPlg it will switch to profile of node1. (Nodes go from bottom to top, StartNode1PosPlg is at tailgate lock StopNode2PosPlg is tailgate fully open)
2.Lower value of ProfileCloseStartNode1PwmPlg and ProfileCloseStopNode1PwmPlg.

Using this setup tailgate will go normal speed and only reduce speed when StopNode1PosPlg is reached(It might be somewhere close to the tailgate lock). If the tailgate reduces speed too early, reduce values of StopNode1PosPlg and StartNode2PosPlg.

Remember to do for both lower and top tailgate.
If you miscalculate, the tailgates might collide if you setup the speed of the top and lower tailgate independently or the top tailgate moves faster than the lower tailgate.
Always be there at the back to monitor the movement of the two tailgates.

Here is my setup
Top tailgate
ProfileCloseStartNode1PwmPlg	Werte=00, 3E
ProfileCloseStopNode1PwmPlg Werte=00, 98
ProfileCloseStartNode2PosPlg Werte=00, 32
ProfileCloseStopNode1PosPlg Werte=00, 32

Lower tailgate
ProfileCloseStartNode1Pwm  	Werte=00, 25
ProfileCloseStopNode1Pwm Werte=00, BB
ProfileCloseStopNode1Pos Werte=00, 96
ProfileCloseStartNode2Pos Werte=00, 96
05-15-2023
algino289 wrote
Thanks for sharing , will give it a try : )
Can someone explain how to apply the below using BimmerCode?