You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mynewt.apache.org by Jan Rüth <ru...@comsys.rwth-aachen.de> on 2016/06/23 14:55:16 UTC

6LoWPAN over BLE

Hi (skip the first paragraph to get to the actual topic),

first of all thanks for the project, I came across it yesterday and it
was ridiculously easy to get it running on my nrf51 based blenano from
RedBearLabs. Even though the new Docker version on OS X isn't capable of
passing USB (the MK20 that comes with the blenano) devices to the VM, I
managed to flash the images using OpenOCD natively (after painfully
realizing that 0x800 and 0x8000 are two very different addresses).

Actual topic here:

I was wondering about the state of IPv6 over BLE in the project.
The BLE stack introduction lists it as a roadmap item:

"Enables users to assign an Internet Protocol (IP) address (complaint
with the IPv6 or 6LoWPAN standard) to a Bluetooth device through
Internet Protocol Support Profile (IPSP) Roadmap"

I could not find it in the JIRA tracker as an item, is this already
implemented? And if so, are there examples how to use it or can you
guide me to the appropriate APIs?

If not, do you guys know when this will be added to the OS?

I'm supervising a communications lab at my university in the next winter
term and I was thinking about using mynewt as the foundations for
various projects there and getting IP connectivity would be a big plus.
I could also imaging that the lab students implement parts of rfc7668
for mynewt, what is your opinion on that?

Best
 Jan

Re: 6LoWPAN over BLE

Posted by Sterling Hughes <st...@apache.org>.
Hi Jan,

Schoene Gruesse aus Kalifornien!

On 23 Jun 2016, at 7:55, Jan Rüth wrote:

> Hi (skip the first paragraph to get to the actual topic),
>
> first of all thanks for the project, I came across it yesterday and it
> was ridiculously easy to get it running on my nrf51 based blenano from
> RedBearLabs. Even though the new Docker version on OS X isn't capable 
> of
> passing USB (the MK20 that comes with the blenano) devices to the VM, 
> I
> managed to flash the images using OpenOCD natively (after painfully
> realizing that 0x800 and 0x8000 are two very different addresses).
>

:-)

> Actual topic here:
>
> I was wondering about the state of IPv6 over BLE in the project.
> The BLE stack introduction lists it as a roadmap item:
>
> "Enables users to assign an Internet Protocol (IP) address (complaint
> with the IPv6 or 6LoWPAN standard) to a Bluetooth device through
> Internet Protocol Support Profile (IPSP) Roadmap"
>
> I could not find it in the JIRA tracker as an item, is this already
> implemented? And if so, are there examples how to use it or can you
> guide me to the appropriate APIs?
>
> If not, do you guys know when this will be added to the OS?
>

I don’t think as a project we’ve planned IP support, however, I’ll 
tell you what Runtime is working on.

The plan is to integrate a socket API (marko recently posted to the 
dev-list): 
http://mail-archives.apache.org/mod_mbox/incubator-mynewt-dev/201606.mbox/%3C248CFDC8-021F-406D-A489-94C945541504%40runtime.io%3E

We’re doing this to support the new Arduino boards, which either have 
a WNC1000 from Atmel (Arduino MKR1000) or an ESP8266 on them.  These 
chips don’t require a full IP stack, but rather offer an AT interface 
to them.  We would abstract the API to these chips through our 
“standard” socket API.

Then, in the August/September timeframe we’ll start looking at adding 
IPv4 and IPv6 support to the Mynewt OS (for a post 1.0 release.)

_BUT_ if somebody wanted to get to this sooner, I think it would be 
awesome.  It’d be good to link up with Marko.

Current thoughts are to smash together uIP (good IPv6) and LWIP (good 
IPv4), and have them plug into this socket API.  Then, convert both of 
those stacks to use our MBUF APIs — so the BT stack and the IP stack 
would be using the same kernel buffering scheme.  We’d then start 
hammering on them to make sure the resulting stack was solid/optimize 
memory usage/test features/etc.

> I'm supervising a communications lab at my university in the next 
> winter
> term and I was thinking about using mynewt as the foundations for
> various projects there and getting IP connectivity would be a big 
> plus.
> I could also imaging that the lab students implement parts of rfc7668
> for mynewt, what is your opinion on that?
>

That would be awesome, and I think the timing here would work out.  
We’ll have the basics of the stack up & running by that point for 
sure.

Best,
Sterling