Hi all
I'm currently spying a CAN network through USB PEAK PCAN-USB Pro FD interface. I developed a custom Python 3.x application that relies on the PCANBasic.dll library under Windows 10. I log all the CAN traffic that occurs on bus by polling (250 kbits/sec, 2 nodes). The bus is not heavy loaded.
In my log I keep the timestamp of each message as given by the API ie : 1) milliseconds, 2) "milliseconds overflow", and 3) microseconds.
- milliseconds overflow is always 0...
- most of the time I can log all messages. According to the timestamps given by the PCAN-USB Pro FD I can even log 2 messages separated only by ~230 microseconds.
BUT it happens sometimes that I get the PCAN_ERROR_QOVERRUN error. In API code it's commented as "Receive queue was read too late".
What's the meaning of PCAN_ERROR_QOVERRUN ?
- PEAK-Support
- Sales & Support
- Posts: 1646
- Joined: Fri 10. Sep 2010, 19:34
Re: What's the meaning of PCAN_ERROR_QOVERRUN ?
As you could read in the documentation and also in all our samples, you have to read the driver queue in a loop as long as they are messages in the queue.
If you read in every call only one message you will end up in th eproblem you are talkung about - and this have nothing to do with the timestamp / oveflow information...
Best is to use a real programming language, use the Event driven reading (see documentation) and alway read all frames in the queue when this event happened.
If you read in every call only one message you will end up in th eproblem you are talkung about - and this have nothing to do with the timestamp / oveflow information...
Best is to use a real programming language, use the Event driven reading (see documentation) and alway read all frames in the queue when this event happened.
--------------------------------
PEAK-System Technik
Technical Support Team
support[at]peak-system.com
-------------------------------
PEAK-System Technik
Technical Support Team
support[at]peak-system.com
-------------------------------