Not able to access a Aeon Multisensor via Zwave

Jun 29, 2014 at 12:09 AM
Edited Jun 29, 2014 at 12:11 AM
I'm trying to connect an Aeon multisensor to the LoT platform via Zwave. However, the zwave driver seems to behave unstably that I kept running into different situations:
  1. Sometimes when I pressed pair on the UI, it showed device not found--I did press the zwave button on the sensor. Sometimes an exception would be thrown which asked me about the FrameLayer.cs code, however, I didn't have the access to Zensys's Zwave SDK, and therefore not able to see where the bug is. I did also use ZWaveController to remove a device cleanly before pairing, however, most of the time it still did not work.
  2. Occasionally I would be able to connect to the device, or the device would just show up in the "Add device" page without even pairing (very weird!). However, I'm not able to see the device shown up in the portList, therefore not able to invoke any method the device support. I have no idea why once configured, they were not added to the portList. It seems to me that when the UI call "Add ZWave Device", GuiService.cs should call a zwave driver method "AddDevice" to create a device and at the same time add the device to the platform's portList. However, since I don't have the Zensys SDK, I'm not able to debug the driver part code.
Could someone point me to the potential problem? Thanks!
Coordinator
Jun 30, 2014 at 3:05 AM

Hi,

That is pretty odd. The Aeon Multisensor is a pretty well-tested device, and we use it a lot in our internal experiments and deployments.

Does the sensor behave normally when you add/remove it from zwavecontroller.exe? I am wondering about battery issues (which can be circumvented for testing purposes using the USB cable) or hardware issues. Do you have another sensor to test with? If you’ve ruled out these issues, let us know if the problem still persists.

As to your other observation, the device can show up in the Add Devices page if the sensor was paired with a stick (either through the Dashboard or externally) but it wasn’t fully configured. The Platform will remember that this happened, and this memory can persist across Platform restarts.

Cheers.

Jun 30, 2014 at 8:04 PM
Hi,
I don't have another sensor to test with. To give more detail, I run the LoT using a virtual machine (VMWare Fusion, Windows 8.1). I'm not sure if using VM would create any problem

I tried the pairing today, if I follow the steps below, most of the time it would work (however, there is still problem).
  1. Make sure in the ZWaveController all the nodes are removed.
  2. Make sure in the Device Manager, the ZWaveController is removed, and then plugged it back again.
  3. Run LoT, Add ZWave, try it multiple times, then the device would be detected.
  4. Under debugging mode, I would be able to access the zensys zwave port in my app.
However, if I turned the platform down and restart it (which I usually do while coding/debugging), my app won't be able to detect the zensys zwave port anymore, while I could still detect other ports running other drivers.

If I remove and plug back the Zwave stick multiple times during step 3, sometimes LoT would throw an exception that requires the FrameLayer.cs, and then LoT would be shut down.

Could you please explain more about the port finding mechanism? I understand that when the driver is created, it would register the device with a port, I think this is why the above steps would work, but when I restart the platform, my platform could no longer detect the zwave device, and since I don't have access to the driver code in run time, I'm not sure whether the method RegisterPortwithPlatform is correctly called.

Do you have any suggestion?
Jun 30, 2014 at 8:59 PM
Okay, I figure out the problem.

Basically if I restart the platform, the platform won't be able to access the ZWave controller anymore, it might be a problem with VMWare. If I unplug and plug the ZWave Controller again, LoT would be able to detect the device and create a new port.

Thanks!
Coordinator
Jun 30, 2014 at 10:50 PM

Ok, glad that it works! And thanks much for reporting this issue; will likely help others.