Nrf24l01 and xbee

What is difference between xbee and nrf24l01 ?

Price...?

mh201994:
What is difference between xbee and nrf24l01 ?

Well, yes, there’s price (which is not insignificant!), but more fundamentally, the Xbee is implemented as a serial stream device, while the the nRF24L01 is natively a packet device, limited to sending messages of 32 bytes or less for each transmission.

It is possible to write a protocol that extends the functionality of the packet devices to support streams, analogous to implementing TCP over IP, for example, but that’s not something you get out of the box – but it is an idea near and dear to my heart (follow the links in my sig to see an implementation of this if interested.)

I’ve even got a sketch I call “RFXbee” that converts a nRF24L01+ into a Xbee-like radio that sends and receives via simple reads and writes to the Arduino serial port. But mostly the RFXduino protocol is designed to allow WiFi connectivity via TCP/IP (sending emails, accessing web pages, implementing web servers etc.) using nRF24L01+ radios in place of expensive things like WiFi shields.

pico: fundamentally, the Xbee is implemented as a serial stream device

Beg to differ. XBees are fundamentally packet mode devices. In transparent operation, the incoming data is buffered and packetized. This is explained in the XBee product manuals. Transparent operation can be thought of as a layer on top of the more native API functionality, making a packet-based device appear to be stream oriented.

[quote author=Jack Christensen link=topic=196372.msg1449210#msg1449210 date=1383174578]

pico: fundamentally, the Xbee is implemented as a serial stream device

Beg to differ. XBees are fundamentally packet mode devices. In transparent operation, the incoming data is buffered and packetized. This is explained in the XBee product manuals. Transparent operation can be thought of as a layer on top of the more native API functionality, making a packet-based device appear to be stream oriented. [/quote]

Yes, of course. That's why I said "implemented as". Just like TCP is ultimately packetized, but presents a stream interface to the programmer.