Something you may want to try that is cheap and quick:
My first VStrom 1K was bought used with not many miles. Apparently, the gas got old and "varnish" and other crud coated the fuel gauge float. This made it heavier, and it sank rather than swim - making for a low reading. When this happened, fellow readers recommended strong fuel cleaner so I dumped in a bottle of Gumout or Techron (enough for a 15-gallon tank) and let it slosh around for a few days while I didn't put many miles on it. After several days, I took a good ride, and when I refilled, the fuel gauge magically jumped to "Full" and stayed there for 50 miles like it should.
Will this work for you? Maybe - maybe not. Not harm in trying.
Retired USAF MSgt (E-7)
Retired Rider - 2016 (3 V-Strom 1Ks, Concours, Burgman 650, 2 Honda 750 Nighthawks, and more over 40 years)
My website: www.RidingWV.com