that's a premier for me too, but we'll try.
With a toolchanger you could poll the diameter of the current tool in tpost#.g by using M118 S2 P"toolnumber"
Now the arduino reads this message and sends the aquired data, but here it get's shady for me. It is easy to receive messages and display them on DWC, but reading data into a global variable is unknown to me. I tried it over I2Cport, but fell into the same dark hole...
Maybe @dc42 has a solution now?