Closed EricRemmerswaal closed 8 years ago
ARM Internal Ref: ONME-2707
@ericremmerswaal
Hi Eric, Is there a particular reason that you are using an older version of of the driver and sal-stack-nanostack ? The stable version of the driver is 2.0.0 which complies with sal-stack-nanostack 5.0.0. Can you please update your setup and try again ?
Hi, I am working on openAIS. I do not see that we limit the version of sal-stack-nanostack to 4.1.0. I do not get version 5.0.0 with the yotta update.
Because of API changes Devaraj (@devran01) set our "sal-nanostack-driver-k64f-eth" version to "^1.0.0". Building with "sal-nanostack-driver-k64f-eth" for the latest version result in errors for now.
Now running on latest modules but problem is still there.
My mbed module versions: | mbed-client 1.12.7 | | mbed-client-c 2.7.5 yottamodules\mbed-client-c | | nanostack-libservice 3.6.0 yottamodules\nanostack-libservice | | mbed-trace 1.2.1 yottamodules\mbed-trace | | mbed-client-mbed-os 3.0.1 yottamodules\mbed-client-mbed-os | | | mbed-drivers 1.5.0 yottamodules\mbed-drivers | | | | cmsis-core 1.2.0 yottamodules\cmsis-core | | | | cmsis-core-freescale 1.1.0 yottamodules\cmsis-core-freescale | | | | cmsis-core-k64f 1.1.0 yottamodules\cmsis-core-k64f | | | | ualloc 1.3.0 yottamodules\ualloc | | | | dlmalloc 1.1.0 yottamodules\dlmalloc | | | | minar 1.3.0 yottamodules\minar | | | | minar-platform 1.1.0 yottamodules\minar-platform | | | | minar-platform-mbed 1.3.0 yottamodules\minar-platform-mbed | | | | core-util 1.8.0 yottamodules\core-util | | | | compiler-polyfill 1.3.0 yottamodules\compiler-polyfill | | | greentea-client 1.1.0 yottamodules\greentea-client | | sockets 1.3.0 yottamodules\sockets | | sal 1.3.1 yottamodules\sal | mbed-client-mbedtls 3.0.1 yottamodules\mbed-client-mbedtls | mbedtls 2.3.1 yottamodules\mbedtls | mbed-mesh-api 3.0.1 | _ sal-iface-6lowpan 2.1.1 yottamodules\sal-iface-6lowpan | sal-nanostack-driver-k64f-eth 2.0.0 | sal-stack-nanostack 5.0.3 | | sal-stack-nanostack-eventloop 1.1.0 yottamodules\sal-stack-nanostack-eventloop | | mbed-6lowpan-eventloop-adaptor 1.2.4 yottamodules\mbed-6lowpan-eventloop-adaptor | | nanostack-randlib 1.1.0 yottamodules\nanostack-randlib | coap-service 4.0.1 yottamodules\coap-service mbed-hal 1.3.0 _ mbed-hal-freescale 1.1.0 yottamodules\mbed-hal-freescale mbed-hal-ksdk-mcu 1.3.0 yottamodules\mbed-hal-ksdk-mcu | uvisor-lib 2.1.2 yottamodules\uvisor-lib mbed-hal-k64f 1.3.0 yottamodules\mbed-hal-k64f mbed-hal-frdm-k64f 1.1.1 yotta_modules\mbed-hal-frdm-k64f
Today updated to sal-stack-nanostack@5.0.4 and sal-nanostack-driver-k64f-eth@2.0.0 Now when running with network cable attached and removed after boot-up, and re-inserted again the network communications recover. However, when booting without network cable attached and reinserted after boot-up the network communications still fails with "[ERR ][ethDrv]: TX buf descriptors full. Can't queue packet" error.
Hi @ericremmerswaal can you please share your module.json here with me ? And if you can a config.json too ?
My module.json
{
"name": "openais-mbed-philips",
"version": "0.1.0",
"description": "OpenAIS Philips",
"keywords": [
"mbed-client"
],
"author": "yogesh.pande@arm.com",
"license": "Apache-2.0",
"extraIncludes": [],
"dependencies": {
"mbed-client": "*",
"mbed-mesh-api": "^3.0.0",
"sal-nanostack-driver-k64f-eth": "^2.0.0",
"sal-stack-nanostack": "^5.0.0",
"openais-mbed-common": "openais-eu-project/openais-mbed-common",
"openais-mbed-vendor-interface": "*",
"openais-mbed-vendor-philips": "*",
"openais-driver-push-button" : "*"
},
"targetDependencies":{
"mbed": {
"mbed-hal": "*"
},
"/openais/vendor/philips": {
"openais-mbed-vendor-philips": "~0.1.0"
}
},
"bin": "./source/"
}
My config.json
{
"mbed-os": {
"net": {
"stacks": {
"lwip": false,
"nanostack": true
}
}
},
"debug": {},
"coap_duplication_max_msgs_count": 3,
"coap_max_blockwise_payload_size": 512,
"P2P": {
"listen_port": 5685,
},
"openais": {
"listen_port": 5683,
"lwm2m_server_uri" : "\"coap://aabb::30:5683\""
},
}
It seems I am unable to recreate the issue. I am testing with Ethernet driver version 2.0.0 and Nanostack v 5.0.4. Can you talk to me on skype ?
I am able to recreate the problem by power-up (NOT reset) the frdm-k64 board without network cable attached. After system boot-up the "[ERR ][ethDrv]: TX buf descriptors full. Can't queue packet." is reported. Plug-in network cable, error continues and no network communications happen.
I think you are not handling backhaul_interface_ready callbacks and stack events in your application. Can we use some other channel to look and fix your code ?
backhaul_interface_ready callbacks and stack events sounds like nanostack implementation. If that is the case, I do not have access to the nanostack sources, only linking the lib.
No. They are application callbacks. Application needs to handle those.
Fixed the problem after a screen-share session: Was not a driver problem but incorrect initialization in end_node_tasklet@application_event, causing a memory-leak.
Tnx for spotting the problem.
I have a wired setup using ipv6. When starting the mbed network stack without ethernet connected I get an "[ERR ][ethDrv]: TX buf descriptors full. Can't queue packet" error. After re-connecting the ethernet this error remains. No recovery. After reset the error is gone.
My mbed module versions: | mbed-client 1.12.4 | | mbed-client-c 2.7.3 yottamodules\mbed-client-c | | nanostack-libservice 3.5.3 yottamodules\nanostack-libservice | | mbed-trace 1.2.1 yottamodules\mbed-trace | | mbed-client-mbed-os 3.0.0 yottamodules\mbed-client-mbed-os | | | mbed-drivers 1.5.0 yottamodules\mbed-drivers | | | | cmsis-core 1.2.0 yottamodules\cmsis-core | | | | cmsis-core-freescale 1.1.0 yottamodules\cmsis-core-freescale | | | | cmsis-core-k64f 1.1.0 yottamodules\cmsis-core-k64f | | | | ualloc 1.3.0 yottamodules\ualloc | | | | dlmalloc 1.1.0 yottamodules\dlmalloc | | | | minar 1.3.0 yottamodules\minar | | | | minar-platform 1.1.0 yottamodules\minar-platform | | | | minar-platform-mbed 1.3.0 yottamodules\minar-platform-mbed | | | | core-util 1.8.0 yottamodules\core-util | | | | compiler-polyfill 1.3.0 yottamodules\compiler-polyfill | | | greentea-client 1.1.0 yottamodules\greentea-client | | sockets 1.3.0 yottamodules\sockets | | sal 1.3.1 yottamodules\sal | | sal-stack-lwip 1.4.1 yottamodules\sal-stack-lwip | | | sal-driver-lwip-k64f-eth 1.1.0 yottamodules\sal-driver-lwip-k64f-eth | | sal-iface-eth 1.1.0 yottamodules\sal-iface-eth | mbed-client-mbedtls 3.0.0 yottamodules\mbed-client-mbedtls | mbedtls 2.3.0 yottamodules\mbedtls | mbed-mesh-api 2.3.0 | _ sal-iface-6lowpan 2.1.1 yottamodules\sal-iface-6lowpan | sal-stack-nanostack 4.1.0 yottamodules\sal-stack-nanostack | | sal-stack-nanostack-eventloop 1.1.0 yottamodules\sal-stack-nanostack-eventloop | | mbed-6lowpan-eventloop-adaptor 1.2.4 yottamodules\mbed-6lowpan-eventloop-adaptor | | nanostack-randlib 1.1.0 yottamodules\nanostack-randlib | coap-service 2.2.0 yottamodules\coap-service | sal-nanostack-driver-k64f-eth 1.1.2