PCAN-Basic: Testing LabVIEW with One PCAN-USB Device

Daniel Price2 min read
Industrial NetworkingOther ManufacturerTroubleshooting
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Use one physical PCAN-USB channel for both PCAN-View and the LabVIEW application. Connect both clients to the same hardware channel, then transmit frames from PCAN-View and decode them through PCAN-Basic in LabVIEW. PCAN-Basic does not support the PCAN Virtual driver, so this test still requires real PCAN hardware.

Supported test arrangements

Arrangement Purpose Constraint
PCAN-View and LabVIEW on one PCAN-USB channel Test application reads and bidirectional communication Both clients must use the same physical channel.
LabVIEW connected to a real CAN network Read and write frames exchanged on the network Requires PCAN hardware and an operating CAN network.
Two PCAN hardware channels connected by a CAN cable Run one application instance on each channel Requires a second hardware channel and a correctly connected CAN network.
PCAN Virtual driver Hardware-free simulation Unsupported by PCAN-Basic.

Test LabVIEW reads with one PCAN-USB device

  1. Connect PCAN-View and the PCAN-Basic-based LabVIEW application to the same PCAN-USB hardware channel.
  2. Transmit a known CAN frame from PCAN-View.
  3. Read the frame through the LabVIEW API built against PCAN-Basic.dll 4.0.3.75.
  4. Verify that the received identifier, message type, data length, and payload match the transmitted frame.
  5. For the reverse test, transmit from LabVIEW and confirm reception in PCAN-View.

This arrangement is sufficient for functional API testing without purchasing a second interface. Use two connected hardware channels when the test must represent communication between separate CAN nodes.

Handle PCAN status messages in software

A received message with MSGTYPE=80h (128d) is a PCAN_MESSAGE_STATUS message. The cited PCAN-Basic parameter cannot suppress only these status messages: disabling reception affects all received messages. Keep reception enabled and inspect each message's MSGTYPE in the LabVIEW code.

Read message
If MSGTYPE = 80h then
    Handle or discard PCAN_MESSAGE_STATUS
Else
    Decode the CAN frame
End if

Apply this check before normal frame decoding so a status indication is not treated as CAN payload data.

Event-driven reception verification

The available evidence does not establish whether a PCAN_MESSAGE_STATUS reception triggers the planned event mechanism. Verify this before relying on event counts: register the existing receive event, produce a condition that yields a status message, and record whether the event fires and whether the subsequent read returns MSGTYPE=80h. Regardless of the result, retain the message-type check because the receive filter cannot selectively remove status messages.

FAQ

Can PCAN-View and LabVIEW use one PCAN-USB device?

Yes. Connect PCAN-View and the PCAN-Basic-based LabVIEW application to the same physical PCAN channel, transmit a known frame, and verify it in the other client.

Can PCAN-Basic communicate through the PCAN Virtual driver?

No. PCAN-Basic does not support the PCAN Virtual driver and requires real PCAN hardware.

How do I filter PCAN_MESSAGE_STATUS messages in PCAN-Basic?

Read each message and discard or separately handle entries whose MSGTYPE is 80h (128d). The cited receive parameter disables all reception rather than filtering status messages alone.

Back to blog