I'm trying to get the "net" mode running. First some info about the setup:
- I have a Digi ConnectPort X2D attached via Ethernet to my laptop and some other XBee chip to which I want to talk
- If I create a serial interface on my laptop using
socat to transport data sent to this serial interface via ethernet to the Connectport, I can talk to the remote XBee chip using the "xbee1" mode. No problems here at all
This serial interface seems unnecessary, so I naively assumed that replacing the line
if ((ret = xbee_setup(&xbee, "xbee1", "/path/to/serial/socket", 115200)) != XBEE_ENONE) {
by
if ((ret = xbee_setup(&xbee, "net", "10.42.0.2", 2101)) != XBEE_ENONE) { //IP and port are similar to what was given to socat as parameters
should work just fine, but it doesn't work at all. Using wireshark to look at the traffic on my laptop's ethernet interface I saw that indeed some TCP (SYN, ACK, PSH, ...) traffic is going on, but after a few seconds I always get this message:
0#[modes/net/mode.c:111] prepare_backchannel() 0x1f99030: Failed to initialize connection to server for an unknown reason...
ret: -17 (A timeout occured)
Do you think this is a bug? Or am I doing it wrong (I hope not - if so, sorry for bothering you!)? I'd be grateful for any reply, especially since I also couldn't find documentation about the "net" mode online.