NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

ucom, umodem and conbee II



Dear hive-mind,

I recently procured a conbee II zigbee controller and some sensors to switch my aging 433MHz system over to something neater.

For fun I thought I'd plug it into my netbsd laptop and see if I could talk to it, and maybe build some lightweight control software that could plug into my existing system instead of having to use the nodejs monstrosities that are so popular these days. The manufacturer provides documentation for the serial device protocol so it seemed viable.

The device is detected just fine by netbsd 9.3_STABLE (althoug always twice, for some reason, it attaches, then detaches and then attaches again, I suspect that the first time is a firmware update mode)

However the device refuses to reply to any message.

I tried prototyping in python using the serial library but it never responds with anything. I know it wants 8N1 and I've tried various speeds but no response what so ever. Reads always hang, but writes seem to work.

Code here: https://git.shangtai.net/staffan/pydeconz

From what I can read from the official software's linux or "posix" or windows code, the python serial library does everything that they do with regards to open flags and tcsetattr.

What's more, I tried the official flash tool and it also seems to hang on NetBSD just like my code (even after I changed it so that it sets the speed to 115200 even if the device name is called "ttyU" and not "ttyACM" so there's an indication that it may also be flawed in other ways).

Just to eliminate hardware failures, I tried it under windows, and that worked fine.

I also tried building a GENERIC-derived kernel with options USBVERBOSE, options USB_DEBUG and options UCOM_DEBUG but that didn't seem to provide any more information, even after setting hw.ucom.debug to 1.

Any ideas to what I'm doing wrong? Is it something with NetBSD's umodem driver that needs special attention?

Staffan

dmesg below:

[    29.364000] umodem3 at uhub5 port 2 configuration 1 interface 0
[ 29.364000] umodem3: dresden elektronik ingenieurtechnik GmbH (0x1cf1) ConBee II (0x30), rev 2.01/1.00, addr 4, iclass 2/2
[    29.364000] umodem3: data interface 1, has CM over data, has no break
[    29.364000] umodem3: status change notification available
[    29.364000] ucom3 at umodem3
[    32.235155] ucom3: detached
[    32.235155] umodem3: detached
[    32.235155] umodem3: at uhub5 port 2 (addr 4) disconnected
[    33.335597] umodem3 at uhub5 port 2 configuration 1 interface 0
[ 33.335597] umodem3: dresden elektronik ingenieurtechnik GmbH (0x1cf1) ConBee II (0x30), rev 2.01/1.00, addr 4, iclass 2/2
[    33.335597] umodem3: data interface 1, has CM over data, has no break
[    33.335597] umodem3: status change notification available
[    33.335597] ucom3 at umodem3




Home | Main Index | Thread Index | Old Index