Beginning of work of get central configuration object
[apps/agl-service-can-low-level.git] / src / diagnostic / diagnostic-message.cpp
index bfca85b..656a868 100644 (file)
@@ -15,9 +15,9 @@
  * limitations under the License.
  */
 
-#include "obd2-signals.hpp"
+#include "obd2/obd2-signals.hpp"
 
-#include "signals.hpp"
+#include "utils/signals.hpp"
 
 const char *UNIT_NAMES[10] = {
        "POURCENT",
@@ -32,46 +32,14 @@ const char *UNIT_NAMES[10] = {
        "NM"
 };
 
-/*
-* Pre-defined OBD-II PIDs to query for if supported by the vehicle.
-*/
- std::vector<obd2_signals_t> OBD2_PIDS = {
-       { 0x04, "obd2.engine.load", 0, 100, POURCENT, 5, false},
-       { 0x05, "obd2.engine.coolant.temperature", -40, 215, DEGREES_CELSIUS, 1, false},
-       { 0x0a, "obd2.fuel.pressure", 0, 765, KPA, 1, false},
-       { 0x0b, "obd2.intake.manifold.pressure", 0, 255, KPA, 1, false},
-       { 0x0c, "obd2.engine.speed", 0, 16383, RPM, 5, false},
-       { 0x0d, "obd2.vehicle.speed", 0, 255, KM_H, 5, false},
-       { 0x0f, "obd2.intake.air.temperature", -40, 215, DEGREES_CELSIUS, 1, false},
-       { 0x10, "obd2.mass.airflow", 0, 655, GRAMS_SEC, 5, false},
-       { 0x11, "obd2.throttle.position", 0, 100, POURCENT, 5, false},
-       { 0x1f, "obd2.running.time", 0, 65535, SECONDS, 1, false},
-       { 0x2d, "obd2.EGR.error", -100, 99, POURCENT, 0, false},
-       { 0x2f, "obd2.fuel.level", 0, 100, POURCENT, 1, false},
-       { 0x33, "obd2.barometric.pressure", 0, 255, KPA, 1, false},
-       { 0x4c, "obd2.commanded.throttle.position", 0, 100, POURCENT, 1, false},
-       { 0x52, "obd2.ethanol.fuel.percentage", 0, 100, POURCENT, 1, false},
-       { 0x5a, "obd2.accelerator.pedal.position", 0, 100, POURCENT, 5, false},
-       { 0x5b, "obd2.hybrid.battery-pack.remaining.life", 0, 100, POURCENT, 5, false},
-       { 0x5c, "obd2.engine.oil.temperature",-40, 210, DEGREES_CELSIUS, 1, false},
-       { 0x63, "obd2.engine.torque", 0, 65535, NM, 1, false}
-};
-
 obd2_signals_t::obd2_signals_t(uint8_t pid, const char* generic_name, const int min, const int max, enum UNIT unit, int frequency, bool supported)
        :       pid_{pid}, generic_name_{generic_name}, min_{min}, max_{max}, unit_{unit}, frequency_{frequency}, supported_{supported}
 {
 }
 
-void obd2_signals_t::init_diagnostic_shims(can_bus_dev_t& can_bus_dev)
+uint32_t obd2_signals_t::get_pid()
 {
-       DiagnosticShims shims_ = diagnostic_init_shims(shims_logger, can_bus_dev.send_can_message, NULL);
-
-       int n_pids_, i_;
-
-       n_pids_ = size(Obd2Pid);
-       for(i_=0; i_<=n_pids_; i_++)
-       {
-       }
+       return (uint32_t)pid_;
 }
 
 /**
@@ -83,7 +51,7 @@ void obd2_signals_t::init_diagnostic_shims(can_bus_dev_t& can_bus_dev)
  *
  * @return std::vector<std::string> Vector of signals name found. 
  */
-void obd2_signals_t::find_obd2_signals(const openxc_DynamicField &key, std::vector<Obd2Pid*>& found_signals)
+void obd2_signals_t::find_obd2_signals(const openxc_DynamicField &key, std::vector<obd2_signals_t*>& found_signals)
 {
        switch(key.type)
        {
@@ -100,27 +68,9 @@ void obd2_signals_t::find_obd2_signals(const openxc_DynamicField &key, std::vect
        DEBUG(binder_interface, "Found %d signal(s)", (int)found_signals.size());
 }
 
-std::vector<Obd2Pid>& get_obd2_signals()
-{
-       return OBD2_PIDS;
-}
-
-uint32_t get_signal_id(const Obd2Pid& sig)
-{
-       return (uint32_t)sig.pid;
-}
-
-void shims_logger(const char* m, const struct afb_binding_interface *interface)
-{
-       DEBUG(interface, "%s", m);
-}
-
-void shims_timer()
-{
-}
-
 bool obd2_signals_t::is_obd2_response(can_message_t can_message)
 {
+       /*
        if(can_message.get_id() >= 0x7E8 && can_message.get_id() <= 0x7EF)
        {
                openxc_VehicleMessage message = {0};
@@ -156,13 +106,16 @@ bool obd2_signals_t::is_obd2_response(can_message_t can_message)
        {
                debug("Sent message ID is outside the valid range for emulator (7DF to 7E7)");
                status=false;
-};
+       }
+       return false;
+       */
+}
 
 void obd2_signals_t::add_request(int pid)
 {
        DiagnosticRequest request = {
        arbitration_id: OBD2_FUNCTIONAL_BROADCAST_ID,
-       mode: 0x1, has_true, pid};
+       mode: 0x1, has_pid: true, pid_ };
 }
 
 /**