I use this:
try
<<Value:native-float, Bin2/binary>> = Bin,
{Value, Bin2};
catch error:{badmatch, _Bin} ->
BitCount = bit_size(<<0/native-float>>),
<<_Skip:BitCount, Bin2/binary>> = Bin,
{undefined, Bin2}
end.