Adding signal for vehicle engine oil level #271
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a follow up to #180 to cover the need for a signal on oil level
Having oil level seems to be quite common in APIs, see examples below. Many use enums, some use percent plus boolean indicator. The proposed change here is reasonably aligned with the Volvo and Android representation.
In my view a "subjective" enum makes more sense than an "objective" percentage value, as percentage value might be difficult to interpret as it might be very vehicle dependent. Assume for example an engine with a nominal oil capacity (EngineOilCapacity) of 5 liters. Then oil level might be "critically low" already at 70% (if we consider 0% to mean a vehicle without any oil at all). Also, how sensitive a vehicle is for overfilling with oil might vary.
The intention with the proposed enum comments is to let "normal" indicate that oil is within expected range. I.e if you just have had an oil change and the garage has added EngineOilCapacity liters of oil, then the OilLevel shall be "normal", not "high". I.e. low and high shall indicate something that needs to be addressed, although not critically.
Volvo (https://developer.volvocars.com/volvo-api/extended-vehicle/#Oil_Level)
Android (https://android.googlesource.com/platform/hardware/interfaces/+/master/automotive/vehicle/2.0/types.hal)
Mercedes (https://developer.mercedes-benz.com/products/connect_your_fleet/details)