Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Do not succeed in reading and writting frames with peak system
Forum Updated to NodeBB v4.3 + New Features

Do not succeed in reading and writting frames with peak system

Scheduled Pinned Locked Moved Unsolved General and Desktop
16 Posts 3 Posters 1.9k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Jules31

    I've done these tests with the following source code:

        while(1)
        {
        qDebug()<<device->writeFrame(frame);
        qDebug()<<device->errorString();
        Sleep(500);
        }
    

    writFrame() returns "true".
    error() returns "QCanBusDevice::NoError".

    aha_1980A Offline
    aha_1980A Offline
    aha_1980
    Lifetime Qt Champion
    wrote on last edited by
    #6

    Hi @Jules31,

    please try the CAN example first. You can also start it from Qt Creator.

    Note that for 64 bit Qt you will need a 64 bit pcanbasic.dll.

    As said before, don't use sleep in event driven programs. It will block the event loop and that blocks the correct program execution.

    Regards

    Qt has to stay free or it will die.

    1 Reply Last reply
    2
    • J Offline
      J Offline
      Jules31
      wrote on last edited by
      #7

      Hi,

      The example does not compile.

      I now use a signal but it still does not word:

      connect(device, &QCanBusDevice::framesReceived, this, &can::onFramesReceived);
      
      void can::onFramesReceived() {
          qDebug() << "[Frame received] !";
      }
      
      
      jsulmJ aha_1980A 2 Replies Last reply
      0
      • J Jules31

        Hi,

        The example does not compile.

        I now use a signal but it still does not word:

        connect(device, &QCanBusDevice::framesReceived, this, &can::onFramesReceived);
        
        void can::onFramesReceived() {
            qDebug() << "[Frame received] !";
        }
        
        
        jsulmJ Offline
        jsulmJ Offline
        jsulm
        Lifetime Qt Champion
        wrote on last edited by
        #8

        @Jules31 Are you sure the other side is responding?

        https://forum.qt.io/topic/113070/qt-code-of-conduct

        J 1 Reply Last reply
        0
        • J Jules31

          Hi,

          The example does not compile.

          I now use a signal but it still does not word:

          connect(device, &QCanBusDevice::framesReceived, this, &can::onFramesReceived);
          
          void can::onFramesReceived() {
              qDebug() << "[Frame received] !";
          }
          
          
          aha_1980A Offline
          aha_1980A Offline
          aha_1980
          Lifetime Qt Champion
          wrote on last edited by
          #9

          Hi @Jules31,

          The example does not compile.

          Please post the exact compiler error. The example should compile and run just fine.

          Also, in your first post you wrote:

          Then, I imported PCANBasic.lib from the PCAN_Basic_API into my Qt Project

          That is not needed. The pcanbasic.dll is loaded dynamically at runtime.

          Qt has to stay free or it will die.

          J 1 Reply Last reply
          0
          • aha_1980A aha_1980

            Hi @Jules31,

            The example does not compile.

            Please post the exact compiler error. The example should compile and run just fine.

            Also, in your first post you wrote:

            Then, I imported PCANBasic.lib from the PCAN_Basic_API into my Qt Project

            That is not needed. The pcanbasic.dll is loaded dynamically at runtime.

            J Offline
            J Offline
            Jules31
            wrote on last edited by
            #10

            @aha_1980

            I disabled the "ResetCanController" option and I now get the error "Cannot load library pcanbasic".

            ed88eb9a-b009-473f-9f9c-3d1f958bc440-image.png

            aha_1980A 1 Reply Last reply
            0
            • jsulmJ jsulm

              @Jules31 Are you sure the other side is responding?

              J Offline
              J Offline
              Jules31
              wrote on last edited by
              #11

              @jsulm
              Yes, it is responding because I receivre frames with Pcan-View.

              1 Reply Last reply
              0
              • J Jules31

                @aha_1980

                I disabled the "ResetCanController" option and I now get the error "Cannot load library pcanbasic".

                ed88eb9a-b009-473f-9f9c-3d1f958bc440-image.png

                aha_1980A Offline
                aha_1980A Offline
                aha_1980
                Lifetime Qt Champion
                wrote on last edited by
                #12

                @Jules31 said in Do not succeed in reading and writting frames with peak system:

                I disabled the "ResetCanController" option

                What is that? Are you using a newer example than the one provided with Qt 5.12?

                and I now get the error "Cannot load library pcanbasic".

                As said, check that the DLL has the correct bitness.

                Regards

                Qt has to stay free or it will die.

                J 1 Reply Last reply
                0
                • aha_1980A aha_1980

                  @Jules31 said in Do not succeed in reading and writting frames with peak system:

                  I disabled the "ResetCanController" option

                  What is that? Are you using a newer example than the one provided with Qt 5.12?

                  and I now get the error "Cannot load library pcanbasic".

                  As said, check that the DLL has the correct bitness.

                  Regards

                  J Offline
                  J Offline
                  Jules31
                  wrote on last edited by
                  #13

                  @aha_1980
                  That works, I put the correct dll:

                  eb8a4587-9aee-467c-8ece-1fe48eed5c59-image.png

                  73d0ad15-bc3e-41e0-bc87-cdcb05ad5847-image.png

                  However, it still does not work in my Qt Project.

                  J aha_1980A 2 Replies Last reply
                  0
                  • J Jules31

                    @aha_1980
                    That works, I put the correct dll:

                    eb8a4587-9aee-467c-8ece-1fe48eed5c59-image.png

                    73d0ad15-bc3e-41e0-bc87-cdcb05ad5847-image.png

                    However, it still does not work in my Qt Project.

                    J Offline
                    J Offline
                    Jules31
                    wrote on last edited by
                    #14

                    @Jules31

                    Another question: Does the PCAN-Basic_API also works with the PCAN-Ethernet Gateway DR from peak system ?

                    Thanks in advance.

                    1 Reply Last reply
                    0
                    • J Jules31

                      @aha_1980
                      That works, I put the correct dll:

                      eb8a4587-9aee-467c-8ece-1fe48eed5c59-image.png

                      73d0ad15-bc3e-41e0-bc87-cdcb05ad5847-image.png

                      However, it still does not work in my Qt Project.

                      aha_1980A Offline
                      aha_1980A Offline
                      aha_1980
                      Lifetime Qt Champion
                      wrote on last edited by aha_1980
                      #15

                      Hi @Jules31,

                      However, it still does not work in my Qt Project.

                      Then please incorporate the fixes we mentioned above and show your modified code.

                      Does the PCAN-Basic_API also works with the PCAN-Ethernet Gateway DR from peak system ?

                      Currently not. Do you have such a device and could provide the needed adoptions to the peakcan plugin?

                      Regards

                      Qt has to stay free or it will die.

                      1 Reply Last reply
                      0
                      • J Offline
                        J Offline
                        Jules31
                        wrote on last edited by
                        #16

                        Hi,

                        I will incorporate your fixes today.

                        I've just checked on peak-system website and it seems that the access to the CAN channels of a PCAN-Gateway is enabled via the new PCAN-LAN hardware type from PCAN-Basic library:

                        https://www.peak-system.com/PCAN-Basic.239.0.html?&L=1

                        Does anyone has tested to use P-CAN-Gateway with PCAN-Basic library yet ?

                        Thank you

                        1 Reply Last reply
                        0

                        • Login

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • Users
                        • Groups
                        • Search
                        • Get Qt Extensions
                        • Unsolved