code: public static Float getFloatValue(@NonNull byte[] value, @FloatFormatType int formatType, @IntRange(from = 0) int offset) {
          if ((offset + getTypeLen(formatType)) > value.length) {
              RxBleLog.w(
                      "Float formatType (0x%x) is longer than remaining bytes (%d) - returning null", formatType, value.length - offset
              );
              return null;
          }
  
          switch (formatType) {
              case FORMAT_SFLOAT:
                  return bytesToFloat(value[offset], value[offset + 1]);
  
              case FORMAT_FLOAT:
                  return bytesToFloat(value[offset],   value[offset + 1],
                          value[offset + 2], value[offset + 3]);
              default:
                  RxBleLog.w("Passed an invalid float formatType (0x%x) - returning null", formatType);
                  return null;
          }
      }
docs: Return the float value interpreted from the passed byte array.
  
  @param value The byte array from which to interpret value.
  @param formatType The format type used to interpret the value.
  @param offset Offset at which the float value can be found.
  @return The value at a given offset or null if the requested offset exceeds the value size.