You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
So the precision of float16 for numbers such has 298 is around 0.2 or bigger.
Since uavcan is using Kelvin and motor temperature is certainly larger than 273.15, maybe it makes sense to change the definition of uavcan.equipment.esc.Status.temperature to float32, otherwise the digit 0.05 in 273.15 will definitely be lost. float32 doesn't have this issue.
In
bldc/libcanard/canard_driver.c
Line 119 in b460fa0
298.0000
which looks like precesion is lost.Even I changed code to
status.temperature = 24.9219 + 273.15;
in bldc, the parsed temperature in https://github.com/UAVCAN/gui_tool is still298.0000
Here is the screenshot in gui_tool.
Maybe something wrong with
canardConvertNativeFloatToFloat16
?@pavel-kirienko do you mind also having a look? Thanks.
The text was updated successfully, but these errors were encountered: