My simulation model communicates with an actual ECU using Veristand. ECU sends CAN frames to the simulated model with a help of Veristand. Because I need to act on when a new frame is received, I added Frame Information -> Receive Time data into my incoming CAN message. This way, only when Receive Time is changed, I can respond.
The problem is that even though I am receiving the frames correctly (confirmed by Veristand Panel and CANoe device), 'Receive Time' remains zero and never updates (can tell this by dropping Receive Time on Veristand UI panel). Therefore I cannot know when a new data is received.
I am not sure if it helps but when this happens, 'Receive Time' on other frame was saturated to some number 4+e9 and never moved from there. But it is not always reproducible.
Any advise is highly appreciated. Thank you in advance.
Just so you know, this week is NI Week, our big conference, so many of the experts who are normally on the forums are probably there.
You mentioned and ECU. Are you using the ECU MC toolkit? Regardless if you are or not, I recommend cross posting here: https://forums.ni.com/t5/Automotive-and-Embedded-Networks/bd-p/30/page/2
Is it just your UI isn't updating? Or are you not receiving the Recieve Time data? Or is just VeriStand not recieving the data? It might be a good idea to open up a service request with our support team on this topic.
Hello, I am having the same problem with the rcv time value, did you manage to solve it?
Problem disappeared after a while. Not sure why 😞
If your CAN frame has no payload (no data in the frame), then try to use raw option when you import it into veristand tree. Then Receive time updates correctly.
You need to have a signal defined in the frame, even if its not a useful signal in anyway
I have the same problem... a valid XNET Frame including signals, that does not update the Receive Time channel. I tried to delete and then re-add it to the Sysdef, but to no avail. I definitely have signals in the frame. I even tried to import only some and all of them into the Sysdef file. Didn't help either 😞
At the same time, the other frames behave just fine.
Any new ideas on this?
I'm using Veristand 2020R5.
So here are the things I've tried:
So it seems to be somewhat depending on the other CAN frames in the System Definition File. Unfortunately, I didn't see any systematic as to which other CAN frames I have to delete to make it work. All in all, I cannot put the XNET functionality to good use.
Since you're using a version beyond VeriStand 2020 R3, maybe the Status Channels for XNET Comms State feature we added will help you debug the situation? You can access it like like this, and then drop those on a VeriStand screen to see XNET port state.
thanks for the advice. I tried just that but get an error on deployment as result:
Hi Markus -
In order to get a deployable SD that has CAN ports with CAN port status channels, you must set the Sleep Mode Control Channel field here:
to some existing channel to get the SD into a deployable state.
Please comment on this thread if that doesn't do the trick for you.