Two's complement integers have no negative zero, but IEEE floating point values do have a negative zero, and it is encoded as 80 00 00 00
(hex, big-endian, single-precision). So if that really is the byte sequence you are getting from your device, then that is the correct result.
This and many other oddities of IEEE floating point are explained and justified in the paper What Every Computer Scientist Should Know About Floating Point, which, since you are a computer scientist, you should read.