Currently the radar heatmap processing code is assuming that bytes are unsigned with a range or (0, 255), but java treats bytes as signed with the range (-128, 127).
This leads to problems like for example here, where this function will always return x because x is already always between -127 and 128
Currently the radar heatmap processing code is assuming that bytes are unsigned with a range or (0, 255), but java treats bytes as signed with the range (-128, 127).
This leads to problems like for example here, where this function will always return
x
because x is already always between -127 and 128https://github.com/AeroSenseSw/AeroSenseAssure/blob/3c62710b2215245e70540dfdd168e0918559bb7f/src/main/java/com/aerosense/radar/tcp/service/fromRadar/ReportHeatMapHandler.java#L64C23-L64C23
See here for how to convert to unsigned integer: https://mkyong.com/java/java-convert-bytes-to-unsigned-bytes/#:~:text=Java%20doesn't%20have%20unsigned,unsigned%20byte%20in%20an%20integer.