AnsweredAssumed Answered

KW41Z host-controlled example THCI

Question asked by Ben Hefner on Jan 28, 2017

Hello,

 

I'm trying to use the ble_thread_host_controlled_device demo in the KW41Z connectivity software package. I'm able to build and flash the boards, and I've been able to get a network set up using the remote interface. Ping works, UDP echo works, but I haven't been able to send data back and forth between the devices using sockets, or at least I haven't been able to receive it. I've attached logs from both boards. So far I've only tried to control the devices using the Test Tool. I haven't made any changes to any of the build flags. I've only made changes to the .cproj file in order to get the project to build.

 

The attached logs go roughly as follows:

Several GetAttribute and other status requests to show the boards are connected to the same network and commissioned.

EchoUDP commands from both sides.

Set up UDP datagram sockets bound to port 60 on each side

Module A sends "ABC" to module B

Receive on module b returns no data.

 

What am I doing wrong here? Is there a more instructive guide I missed in the stack documentation, or am I just failing to understand sockets?

 

I tried following the code through the debugger, but stepping was leading to strange behavior, so I wasn't able to follow it very effectively. Is that something to do with FreeRTOS? I'm pretty new to that as well. I've only used FreeRTOS on an ESP8266, with no debugger.

 

As a side note, I want to mention that the project files generated by the project cloner had invalid relative paths. They escaped out to one directory higher than they should have (an extra ..\). They also didn't have the ProjDirPath variable in them, which I think is required, but I didn't test it without. I cloned the project to a drive other than the windows install drive (the SDK is installed on C: as well). I also had very strange issues with gcc returning paths that were missing a single character (e.g. "/middleware/wirless/" - missing an 'e' in wireless) and saying it couldn't find files. The actual paths were correct other than the issue I mentioned above. I worked around this in one project by adding another ../parentDirectory/ to the path somewhere. This happened with KDS 3.1 and 3.2.

 

Thanks,

Ben

Original Attachment has been moved to: module_b.log.zip

Original Attachment has been moved to: module_a.log.zip

Outcomes