A controller for estimating axle weights of a rail vehicle comprising a number of wheel axles (131, 132, 133, 134) and a set of drive units (101, 102, 103) configured to apply a respective traction force to each wheel axle in a driving subset of the wheel axles (131, 132, 133) so as to cause acceleration of the rail vehicle, which controller is configured to obtain: a power signal (P m) indicating an amount of power produced by the set of drive units (101, 102, 103) to accelerate the rail vehicle from a first speed (v 1) to a second speed (v 2), a speed signal indicating respective values of the first and second speeds (v 1, v 2), and based thereon estimate an overall weight (m tot) of the rail vehicle, characterized in that the controller is further configured to estimate how the overall weight (m tot) is distributed over the number of wheel axles (131, 132, 133, 134) by: (a) obtaining wheel speed signals indicating respective rotational speeds (ω 1, ω 2, ω 3) of the wheel axles in the driving subset of the wheel axles (131, 132, 133), (b) producing an acceleration control signal to a specific drive unit in the set of drive units such that this drive unit applies a gradually increasing traction force to a specific wheel axle of the wheel axles in the driving subset of the wheel axles (131, 132, 133), (c) determining, repeatedly during production of the acceleration control signal, an absolute difference (| ω 1 - ω a |) between the rotational speed of the specific wheel axle and an average rotational speed (ω a) of the wheel axles (132, 133) in the driving subset of the wheel axles except the specific wheel axle; and in response to the absolute difference (| ω 1 - ω a |) exceeding a threshold value (d) determining a parameter (μ m) reflecting a friction coefficient (μ e) between a pair of wheels (121a, 121b) on the specific wheel axle and a pair of rails (191, 192) upon which the rail vehicle travels, repeating steps (a) to (c) for each of the wheel axles in the driving subset of the wheel axles, and based thereon estimate a respective fraction (m 1, m 2, m 3) of the overall weight (m tot) carried by each of wheel axles in the driving subset of the wheel axles (131, 132, 133). a power signal (P m) indicating an amount of power produced by the set of drive units (101, 102, 103) to accelerate the rail vehicle from a first speed (v 1) to a second speed (v 2), a speed signal indicating respective values of the first and second speeds (v 1, v 2), and (a) obtaining wheel speed signals indicating respective rotational speeds (ω 1, ω 2, ω 3) of the wheel axles in the driving subset of the wheel axles (131, 132, 133), (b) producing an acceleration control signal to a specific drive unit in the set of drive units such that this drive unit applies a gradually increasing traction force to a specific wheel axle of the wheel axles in the driving subset of the wheel axles (131, 132, 133), (c) determining, repeatedly during production of the acceleration control signal, an absolute difference (| ω 1 - ω a |) between the rotational speed of the specific wheel axle and an average rotational speed (ω a) of the wheel axles (132, 133) in the driving subset of the wheel axles except the specific wheel axle; and in response to the absolute difference (| ω 1 - ω a |) exceeding a threshold value (d) determining a parameter (μ m) reflecting a friction coefficient (μ e) between a pair of wheels (121a, 121b) on the specific wheel axle and a pair of rails (191, 192) upon which the rail vehicle travels,