When I use a usb-8502 to do CAN frame input stream, I get no data unless I open XNET bus monitor and start it first. And when I stop bus monitor, frame data stops. Why? Hardware problem?
If it works with one piece of software and not with the other, I wouldn't focus on the possibility of a hardware problem.
It's a bit difficult to guess what is wrong with your program, as long as we don't see it. Can you please provide:
1) A minimal example of your program that still exhibits the error
2) A description of your bus. What is connected to it
3) A description of the signals you expect
Do you have any other CAN devices to check the bus communication?