Read a DanFoss (Siemens?) Flow meter (HART Protocol)

If it works, do not try to make it better than good. You are right.
But for the future...never say never, the protocol is made in the 70s when computer where slow 8bit machines with a few kb of RAM. Sounds like the grandparents of arduino...
If you need to read only a few values, short static hexstrings are enough to request the answers, and the answers itself have only a few additional bytes.
In worst case, there seem to be an arduino library available:
https://playground.arduino.cc/Code/ModbusMaster?action=diff

Happy coding!