Uploaded image for project: ' AGL Development'
  1. AGL Development
  2. SPEC-2726

Cannot Receive engine speed from low-can

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: Major Major
    • None
    • None
    • None

      I am trying to develop my app which is using speed and engine speed from low-can in 8.0(Halibut).
      When testing the speed and engine speed, I have encountered the following three problems.

      1.Low-Can Started Without VCAN Port

      The low-can service started when the board started. But configuring the vcan port takes time,
      so that low-can started without vcan port happens often. And then my app will not receive any can data.

      I have tried to modify the config.xml.in as follow,

      	<feature name="urn:AGL:widget:required-permission">
      		<param name="urn:AGL:permission::partner:scope-platform" value="required" />
      		<param name="urn:AGL:permission::public:hidden" value="required" />
      		<param name="urn:AGL:permission::system:run-by-default" value="required" />       <-  delete this line
      		<param name="urn:AGL:permission::public:no-htdocs" value="required" />
      	</feature>
      

      and it will works. Is this modification OK? Is there other way to make the low-can start after vcan port created?

      2.Cannot Receive Engine Speed Data

      The engine speed cannot be set by the command cansend vcan0 3D9#ffffff. Error info:

      Aug 02 05:28:47 m3ulcb afbd-agl-service-can-low-level@7.99[4057]: NOTICE: [API low-can] is_engine_on: engine.speed CAN signal found, but engine seems off [/home/aglcompiler/AGL/agl-8.0.0/build/tmp/work/aarch64-agl-linux/agl-service-can-low-level/8.0.0-r0/git/low-can-binding/binding/application.cpp:110,isEngineOn]
      Aug 02 05:28:47 m3ulcb afbd-agl-service-can-low-level@7.99[4057]: NOTICE: [API low-can] is_engine_on: engine.speed diagnostic message found, but engine seems off [/home/aglcompiler/AGL/agl-8.0.0/build/tmp/work/aarch64-agl-linux/agl-service-can-low-level/8.0.0-r0/git/low-can-binding/binding/application.cpp:130,isEngineOn]
      Aug 02 05:28:47 m3ulcb afbd-agl-service-can-low-level@7.99[4057]: WARNING: [API low-can] signal: Engine is off, diagnostic_messages.engine.speed won't received responses until it's on [/home/aglcompiler/AGL/agl-8.0.0/build/tmp/work/aarch64-agl-linux/agl-service-can-low-level/8.0.0-r0/git/low-can-binding/binding/low-can-cb.cpp:206,subscribe_unsubscribe_diagnostic_messages]

      I have tried to modify the source file application-generated.cpp as follow,

      ,				{std::make_shared<can_message_definition_t>(can_message_definition_t{
      				 "hs",
      				 0x3D9,
      				 true,			<- change to false
      				 can_message_format_t::STANDARD,
      				 frequency_clock_t(5.00000f),
      				 true,
      

      and then my app can receive the engine speed. Is this modification OK? Or is there other way to make my app receive engine speed?

      3.Multiple Apps Cannot Get Can Data at the same time

      If I launch the dashboard first, then launch my app. Only the dashboard app can receive the speed info.
      Conversely, only my app can receive the speed info. How to make all the apps which are using low-can receive can info?

        1. can-dev.service
          0.2 kB
        2. can-dev.sh
          2 kB
        3. point3_low-can_log.txt
          12 kB
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            claneys Romain Forlot
            wanglu Wang Lu
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: