diff options
author | Mykola Korniichuk (GitHub) <42380041+mkorniichuk@users.noreply.github.com> | 2020-08-06 23:44:59 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-08-06 16:44:59 -0400 |
commit | 5c0fa709061cabc89ab235193dc62121bd0cca3e (patch) | |
tree | 6054ffdf097caedc69751a45f91606cf62c7d23f | |
parent | 049a101431de6112912efb5765a7f32f321e122e (diff) | |
download | sdl_core-5c0fa709061cabc89ab235193dc62121bd0cca3e.tar.gz |
SDL Core implementation of feature - 0266 New vehicle data gearStatus (#3401)
* New vehicle data: GearStatus
* Add the new parameter into the rpc_spec
* Add the new parameter into the sdl_preloaded_pt and policy_table_interface_ext
files
* Update the sdl_preloaded_pr.json file with the new schema item
These changes are not as necessary, but to keep project in consistent state,
they were added.
* TMP: Update rpc_spec
This commit should be removed before merge
* fixup! Add the new parameter into the rpc_spec
* Update prndl parameter description
* fixup! Update the sdl_preloaded_pr.json file with the new schema item
* fixup! Update the sdl_preloaded_pr.json file with the new schema item
* Update src/appMain/sdl_preloaded_pt.json
Co-authored-by: Shobhit Adlakha <ShobhitAd@users.noreply.github.com>
* Update submodules
Co-authored-by: Igor Gapchuk <igapchuck@luxoft.com>
Co-authored-by: LitvinenkoIra <ilytvynenko@luxoft.com>
Co-authored-by: Shobhit Adlakha <ShobhitAd@users.noreply.github.com>
Co-authored-by: Andrii Kalinich <AKalinich@luxoft.com>
7 files changed, 117 insertions, 12 deletions
diff --git a/src/appMain/sdl_preloaded_pt.json b/src/appMain/sdl_preloaded_pt.json index dbe134958c..0d42fdd8a3 100644 --- a/src/appMain/sdl_preloaded_pt.json +++ b/src/appMain/sdl_preloaded_pt.json @@ -506,7 +506,8 @@ "myKey", "prndl", "rpm", - "steeringWheelAngle" + "steeringWheelAngle", + "gearStatus" ] }, "OnVehicleData": { @@ -523,7 +524,8 @@ "myKey", "prndl", "rpm", - "steeringWheelAngle" + "steeringWheelAngle", + "gearStatus" ] }, "SubscribeVehicleData": { @@ -540,7 +542,8 @@ "myKey", "prndl", "rpm", - "steeringWheelAngle" + "steeringWheelAngle", + "gearStatus" ] }, "UnsubscribeVehicleData": { @@ -557,7 +560,8 @@ "myKey", "prndl", "rpm", - "steeringWheelAngle" + "steeringWheelAngle", + "gearStatus" ] } } @@ -3443,7 +3447,36 @@ "name": "prndl", "key": "OEM_REF_PRNDL", "type": "PRNDL", - "mandatory": false + "mandatory": false, + "since": "2.0", + "until": "7.0" + }, + { + "name": "gearStatus", + "params": [ + { + "name": "userSelectedGear", + "key": "OEM_REF_USER_GEAR", + "type": "PRNDL", + "mandatory": false + }, + { + "name": "actualGear", + "key": "OEM_REF_ACT_GEAR", + "type": "PRNDL", + "mandatory": false + }, + { + "name": "transmissionType", + "key": "OEM_REF_TR_TYPE", + "type": "TransmissionType", + "mandatory": false + } + ], + "key": "OEM_REF_GEAR_STATUS", + "type": "Struct", + "mandatory": false, + "since": "7.0" }, { "name": "tirePressure", diff --git a/src/components/application_manager/include/application_manager/smart_object_keys.h b/src/components/application_manager/include/application_manager/smart_object_keys.h index f23e62832c..cfec80cac8 100644 --- a/src/components/application_manager/include/application_manager/smart_object_keys.h +++ b/src/components/application_manager/include/application_manager/smart_object_keys.h @@ -296,6 +296,7 @@ extern const char* cloud_app_vehicle_id; extern const char* external_temp; extern const char* turn_signal; extern const char* vin; +extern const char* gearStatus; extern const char* prndl; extern const char* tire_pressure; extern const char* odometer; diff --git a/src/components/application_manager/src/message_helper/message_helper.cc b/src/components/application_manager/src/message_helper/message_helper.cc index 97fda4a6e3..e5fe2d14a7 100644 --- a/src/components/application_manager/src/message_helper/message_helper.cc +++ b/src/components/application_manager/src/message_helper/message_helper.cc @@ -189,6 +189,8 @@ std::pair<std::string, mobile_apis::VehicleDataType::eType> mobile_apis::VehicleDataType::VEHICLEDATA_TURNSIGNAL), std::make_pair(strings::vin, mobile_apis::VehicleDataType::VEHICLEDATA_VIN), + std::make_pair(strings::gearStatus, + mobile_apis::VehicleDataType::VEHICLEDATA_GEARSTATUS), std::make_pair(strings::prndl, mobile_apis::VehicleDataType::VEHICLEDATA_PRNDL), std::make_pair(strings::tire_pressure, diff --git a/src/components/application_manager/src/smart_object_keys.cc b/src/components/application_manager/src/smart_object_keys.cc index bef092392d..7bfd14ca83 100644 --- a/src/components/application_manager/src/smart_object_keys.cc +++ b/src/components/application_manager/src/smart_object_keys.cc @@ -263,6 +263,7 @@ const char* cloud_app_vehicle_id = "cloudAppVehicleID"; const char* external_temp = "externalTemperature"; const char* turn_signal = "turnSignal"; const char* vin = "vin"; +const char* gearStatus = "gearStatus"; const char* prndl = "prndl"; const char* tire_pressure = "tirePressure"; const char* odometer = "odometer"; diff --git a/src/components/interfaces/HMI_API.xml b/src/components/interfaces/HMI_API.xml index 5d207a7fa0..2bec97ee93 100644 --- a/src/components/interfaces/HMI_API.xml +++ b/src/components/interfaces/HMI_API.xml @@ -945,6 +945,7 @@ <description>No gear</description> </element> <element name="DRIVE"> + <description>Regular Drive mode</description> </element> <element name="SPORT"> <description>Drive Sport mode</description> @@ -968,12 +969,44 @@ </element> <element name="EIGHTH"> </element> + <element name="NINTH"> + </element> + <element name="TENTH"> + </element> <element name="UNKNOWN"> </element> <element name="FAULT"> </element> </enum> +<enum name="TransmissionType"> + <description>Type of transmission used in the vehicle.</description> + <element name="MANUAL"> + <description>Manual transmission.</description> + </element> + <element name="AUTOMATIC"> + <description>Automatic transmission.</description> + </element> + <element name="SEMI_AUTOMATIC"> + <description>Semi automatic transmission.</description> + </element> + <element name="DUAL_CLUTCH"> + <description>Dual clutch transmission.</description> + </element> + <element name="CONTINUOUSLY_VARIABLE"> + <description>Continuously variable transmission(CVT).</description> + </element> + <element name="INFINITELY_VARIABLE"> + <description>Infinitely variable transmission.</description> + </element> + <element name="ELECTRIC_VARIABLE"> + <description>Electric variable transmission.</description> + </element> + <element name="DIRECT_DRIVE"> + <description>Direct drive between engine and wheels.</description> + </element> +</enum> + <enum name="VehicleDataEventStatus"> <description>Reflects the status of a vehicle data event; e.g. a seat belt event status.</description> <element name="NO_EVENT" internal_name="VDES_NO_EVENT"> @@ -1157,6 +1190,7 @@ <element name="VEHICLEDATA_FUELCONSUMPTION" /> <element name="VEHICLEDATA_EXTERNTEMP" /> <element name="VEHICLEDATA_VIN" /> + <element name="VEHICLEDATA_GEARSTATUS" /> <element name="VEHICLEDATA_PRNDL" /> <element name="VEHICLEDATA_TIREPRESSURE" /> <element name="VEHICLEDATA_ODOMETER" /> @@ -4188,6 +4222,18 @@ </param> </struct> + <struct name="GearStatus"> + <param name="userSelectedGear" type="Common.PRNDL" mandatory="false"> + <description>Gear position selected by the user i.e. Park, Drive, Reverse</description> + </param> + <param name="actualGear" type="Common.PRNDL" mandatory="false"> + <description>Actual Gear in use by the transmission</description> + </param> + <param name="transmissionType" type="Common.TransmissionType" mandatory="false"> + <description>Tells the transmission type</description> + </param> + </struct> + </interface> <interface name="Buttons" version="1.3.0" date="2017-07-18"> @@ -6037,8 +6083,11 @@ <param name="turnSignal" type="Boolean" mandatory="false"> <description>See TurnSignal</description> </param> + <param name="gearStatus" type="Boolean" mandatory="false"> + <description>See GearStatus</description> + </param> <param name="prndl" type="Boolean" mandatory="false"> - <description>See PRNDL</description> + <description>See PRNDL. This parameter is deprecated and it is now covered in `gearStatus`</description> </param> <param name="tirePressure" type="Boolean" mandatory="false"> <description>See TireStatus</description> @@ -6136,8 +6185,11 @@ <param name="turnSignal" type="Common.VehicleDataResult" mandatory="false"> <description>See TurnSignal</description> </param> + <param name="gearStatus" type="Common.VehicleDataResult" mandatory="false"> + <description>See GearStatus</description> + </param> <param name="prndl" type="Common.VehicleDataResult" mandatory="false"> - <description>See PRNDL</description> + <description>See PRNDL. This parameter is deprecated and it is now covered in `gearStatus`</description> </param> <param name="tirePressure" type="Common.VehicleDataResult" mandatory="false"> <description>See TireStatus</description> @@ -6238,8 +6290,11 @@ <param name="turnSignal" type="Boolean" mandatory="false"> <description>See TurnSignal</description> </param> + <param name="gearStatus" type="Boolean" mandatory="false"> + <description>See GearStatus</description> + </param> <param name="prndl" type="Boolean" mandatory="false"> - <description>See PRNDL</description> + <description>See PRNDL. This parameter is deprecated and it is now covered in `gearStatus`</description> </param> <param name="tirePressure" type="Boolean" mandatory="false"> <description>See TireStatus</description> @@ -6337,8 +6392,11 @@ <param name="turnSignal" type="Common.VehicleDataResult" mandatory="false"> <description>See TurnSignal</description> </param> + <param name="gearStatus" type="Common.VehicleDataResult" mandatory="false"> + <description>See GearStatus</description> + </param> <param name="prndl" type="Common.VehicleDataResult" mandatory="false"> - <description>See PRNDL</description> + <description>See PRNDL. This parameter is deprecated and it is now covered in `gearStatus`</description> </param> <param name="tirePressure" type="Common.VehicleDataResult" mandatory="false"> <description>See TireStatus</description> @@ -6440,8 +6498,11 @@ <param name="vin" type="Boolean" mandatory="false"> <description>Vehicle identification number</description> </param> + <param name="gearStatus" type="Boolean" mandatory="false"> + <description>See GearStatus</description> + </param> <param name="prndl" type="Boolean" mandatory="false"> - <description>See PRNDL</description> + <description>See PRNDL. This parameter is deprecated and it is now covered in `gearStatus`</description> </param> <param name="tirePressure" type="Boolean" mandatory="false"> <description>See TireStatus</description> @@ -6542,8 +6603,11 @@ <param name="vin" type="String" maxlength="17" mandatory="false"> <description>Vehicle identification number</description> </param> + <param name="gearStatus" type="Common.GearStatus" mandatory="false"> + <description>See GearStatus</description> + </param> <param name="prndl" type="Common.PRNDL" mandatory="false"> - <description>See PRNDL</description> + <description>See PRNDL. This parameter is deprecated and it is now covered in `gearStatus`</description> </param> <param name="tirePressure" type="Common.TireStatus" mandatory="false"> <description>See TireStatus</description> @@ -6645,8 +6709,11 @@ <param name="vin" type="String" maxlength="17" mandatory="false"> <description>Vehicle identification number.</description> </param> + <param name="gearStatus" type="Common.GearStatus" mandatory="false"> + <description>See GearStatus</description> + </param> <param name="prndl" type="Common.PRNDL" mandatory="false"> - <description>See PRNDL</description> + <description>See PRNDL. This parameter is deprecated and it is now covered in `gearStatus`</description> </param> <param name="tirePressure" type="Common.TireStatus" mandatory="false"> <description>See TireStatus</description> diff --git a/src/components/policy/policy_external/include/policy/policy_table_interface_ext.xml b/src/components/policy/policy_external/include/policy/policy_table_interface_ext.xml index 8349b1475d..a723177c33 100644 --- a/src/components/policy/policy_external/include/policy/policy_table_interface_ext.xml +++ b/src/components/policy/policy_external/include/policy/policy_table_interface_ext.xml @@ -40,6 +40,7 @@ <element name="beltStatus" /> <element name="electronicParkBrakeStatus" /> <element name="driverBraking" /> + <element name="gearStatus" /> <element name="prndl" /> <element name="rpm" /> <element name="steeringWheelAngle" /> diff --git a/tools/rpc_spec b/tools/rpc_spec -Subproject 49247bf3cd55aa46f10ab4d3abb21e1b2d340a2 +Subproject a2043db1771752ce7089ac9601c76b49ef38a9d |