I "got CAN", but what is it?

From time to time I see this pattern in my LuaUPnP.log:

02  ZW_Send_Data node 46 USING ROUTE 12.0.0.0
01  ZWaveJobHandler::ReceivedFrame NONCE_GET flood node 46
01  got CAN
02  ZWaveSerial::Send m_iFrameID 8696 got a CAN -- Dongle is in a bad state.  Wait 1 second before continuing to let it try to recover.

Invariably, the “got CAN” message is a bad omen, and I’m in for a minute or so of missed messages and delays.

In one case, when my Schlage door/window sensor went into Tamper alarm (cover off), I had to power cycle the VeraLite to get it to recover. There were quite a few “got CAN” messages in the log.

So – what is CAN? Why do I get it, and how do I avoid getting CAN?

An actual NULL response from a Z-Wave request.
Not to be confused with a missing response.

Hi I have just noticed the following in the logs.

01 02/19/13 9:40:44.224 got CAN <0x2bd49680>
02 02/19/13 9:40:44.224 ZWaveSerial::Send m_iFrameID 152 got a CAN – Dongle is in a bad state. Wait 1 second before continuing to let it try to recover. <0x2b949680>

So CAN is a NULL response?
What is the Dongle? Is that the zwave chip/controller?

As this is a level 1 error should I (and any others) be concerned by it?

This is all part of the Z-Wave protocol.

Probably Vera initiated a command at the same time as some other Z-Wave device
woke up and tried to send a status.

I guess Vera1 had an external USB dongle to support Z-Wave. They still refer to this as a dongle … even though it’s an internal daughter board inside Vera2 and Vera3.

(“CAN” is often short for “cancel” in communication protocols. See also ASCII table code 0x18.)