ARMmbed / mbed-os-example-mesh-minimal

Simplest Mesh capable test application for mbed OS
Apache License 2.0
38 stars 42 forks source link

Bootstrap start failed #18

Closed cyliangtw closed 8 years ago

cyliangtw commented 8 years ago

Using K64F & default mbed_app.json, the gateway firmware is "gateway6LoWPANDynamic.bin" from https://github.com/ARMmbed/mbed-os-example-client. Then, got "Bootstrap start failed", details log as below. It seems failed at arm_nwk_interface_up(int8_t interface_id). The same hardware combination could work in mbed OS 3.0 sal-iface-6lowpan-test-nanostack_tcp.

Log:

Connecting...
[DBG ][core]: Allocate Root Tasklet
[DBG ][6lo ]: P.Init

[DBG ][evlp]: event_loop_thread
[DBG ][core]: NS Root task Init
[DBG ][sck ]: Socket Tasklet Generated
[DBG ][m6La]: init()
[DBG ][m6La]: connect()
[DBG ][m6LND]: Link-layer security NOT enabled.
[DBG ][m6LND]: Channel: 12
[DBG ][m6LND]: Channel page: 0
[DBG ][m6LND]: Channel mask: 4096
[ERR ][m6LND]: Bootstrap start failed, -5
Connection failed!
hasnainvirk commented 8 years ago

@cyliangtw Did you let it make more attempts to reconnect ? Channel 12 is right in the middle of 1st Wifi channel , that's why sometimes because of interference you might see the device trying multiple times to connect to corresponding Border Router

hasnainvirk commented 8 years ago

@cyliangtw This log looks a bit weird. Rather than bootstrap failure, you should have got something like this:

Connecting...

[DBG ][m6LND]: Link-layer security NOT enabled. [DBG ][m6LND]: Channel: 12 [DBG ][m6LND]: Channel page: 0 [DBG ][m6LND]: Channel mask: 4096 [INFO][m6LND]: Start 6LoWPAN ND Bootstrap [DBG ][m6LND]: app_parse_network_event() 8 [DBG ][m6LND]: ND/RPL scan new network [DBG ][m6LND]: Restart bootstrap [DBG ][m6LND]: Link-layer security NOT enabled. [DBG ][m6LND]: Channel: 12 [DBG ][m6LND]: Channel page: 0 [DBG ][m6LND]: Channel mask: 4096 [INFO][m6LND]: Start 6LoWPAN ND Bootstrap [DBG ][m6LND]: app_parse_network_event() 0 [INFO][m6LND]: 6LoWPAN ND bootstrap ready [DBG ][m6LND]: ND Access Point: 2001:999:1:8f5d:0:ff:fe00:e985 [DBG ][m6LND]: ND Prefix 64: 20:01:09:99:00:01:8f:5d [DBG ][m6LND]: GP IPv6: 2001:999:1:8f5d:fec2:3d00:5:3244 [DBG ][m6LND]: MAC 16-bit: ff:ff [DBG ][m6LND]: PAN ID: 06:91 [DBG ][m6LND]: MAC 64-bit: fc:c2:3d:00:00:05:32:44 [DBG ][m6LND]: IID (Based on MAC 64-bit address): fe:c2:3d:00:00:05:32:44 [DBG ][m6LND]: Channel: 12

connected. IP = 2001:999:1:8f5d:fec2:3d00:5:3244

So you can see that it made at least one try to reconnect. I just tried to reproduce your issue on K64F with Atmel-rf-shield. And that's the result I got. Please tell me more about your setup, components compiler etc. Are you sure you loaded 6LoWPAN Dynamic binary on your BR ? Because to me, it seems you loaded Thread binary there. And that's why your node was not able to get connected.

cyliangtw commented 8 years ago

My mbed-os was downloaded on 07/28, so the log is different from yours. After re-load the last mbed-os and rebuild, it could work, like this. Thanks a lot.

Connecting...
[DBG ][m6La]: init()
[DBG ][m6La]: connect()
[DBG ][evlp]: event_loop_thread
[DBG ][m6LND]: Link-layer security NOT enabled.
[DBG ][m6LND]: Channel: 12
[DBG ][m6LND]: Channel page: 0
[DBG ][m6LND]: Channel mask: 4096
[INFO][m6LND]: Start 6LoWPAN ND Bootstrap
[DBG ][m6LND]: app_parse_network_event() 0
[INFO][m6LND]: 6LoWPAN ND bootstrap ready
[DBG ][m6LND]: ND Access Point: 2001:db8:100:f101:0:ff:fe00:2575
[DBG ][m6LND]: ND Prefix 64: 20:01:0d:b8:01:00:f1:01
[DBG ][m6LND]: GP IPv6: 2001:db8:100:f101:fec2:3d00:5:2070
[DBG ][m6LND]: MAC 16-bit: ff:ff
[DBG ][m6LND]: PAN ID: 06:91
[DBG ][m6LND]: MAC 64-bit: fc:c2:3d:00:00:05:20:70
[DBG ][m6LND]: IID (Based on MAC 64-bit address): fe:c2:3d:00:00:05:20:70
[DBG ][m6LND]: Channel: 12
[DBG ][m6LND]: getOwnIpAddress()
connected. IP = 2001:db8:100:f101:fec2:3d00:5:2070
hasnainvirk commented 8 years ago

Pleasure is all mine.