Fuel level provider can be changed via a preference available for each configured fuel tank.
By default, depending on the protocol being used, the default provider will be set to "default" or "user".
"Default"- the app will try to get the information directly from the ECU, if it is supported and provided by the protocol as a percentage value 0-100% (not available on HOBD, HTS/eCtune/BMTune protocol; Hondata protocol may provide it on select ECUs; OBD2 protocol may provide it as a supported parameter).
"User" - the user must provide the information manually on each refuel.
It is possible to configure a custom parameter, which can be used as a fuel level provider, via in-app protocol configuration (available in Car → ECU → Advanced settings) for HOBD and HTS protocol.
However, this method is achievable only by highly experienced users who have sufficient knowledge about electronics and ECU inputs. Since the fuel level sending unit is not directly connected to the ECU and sends voltage to the dashboard gauge instead, it's necessary to tap into the wire that sends variable voltage values (0-12V) and via a resistor voltage divider (or similar solution) step down the voltage to safe input range (0-5V) and feed it to an input of the ECU (for example to the ELD input, which is usually unused on many Honda vehicles)
then it's possible to create a custom parameter to read incoming raw data from the memory address (ELD) interpreted as the current fuel level
the raw data must be converted to 0-100% values via a defined conversion table, as shown in the picture below; please be aware that the table contains estimated values for voltage to percentage conversion, which does not necessarily apply to a real world application; it's up to the user to provide their own (measured) conversion data points that fit their current application (depends on the used voltage divider, fuel level sending unit, etc.)