My first post was maybe not very clear, so i’ll try to be more specific.
I have in mind a project for a RF transceiver that connects to a PC through USB and communicates with an already existing remote piece of hardware:
[ PC application ↔ USB ↔ RF transceiver ] <<------------>> [ RF transceiver ↔ remote hardware ]
The nRF24LU1+ looks fine because it has USB, RF and a small micro, all in one package. On the remote side, i’d just hook a nRF24L01+ to the existing hardware with SPI.
However, i’d like to know how easy or difficult it is to program the nRF24LU1+ and use its USB capability, and i’d be quite interested to hear from people who gave a try.
Indeed, it’s maybe easier to use a collection of 3 chips instead of the nRF24LU1+: an FTDI + a PIC + nRF24L01+
→ FTDI has a comprehensive API that’s easy to interface
→ Microchip has good free development tools.
In clear: [nRF24LU1+] or [FTDI + PIC + nRF24L01+] ??
I’m surprised that Sparkfun is selling a breakout board for nRF24LU1+ if there’s no cheap and easy way to program the chip. That raises the question of what that board is useful for?
I’ll wait a little longer then i’ll contact the support.
What you suggest looks cool. However it’s using an open-source driver and i’m afraid to be faced with poor documentation and support (haven’t tried, so it’s just speculative assertion) and eventually spend my time debugging the USB rather than working on the project.
The cool thing with FTDI chips is that they provide drivers with API, exhaustive documentation and examples. Integration into an application is hassle free: just link the DLL to your code, call a few functions and bang! it’s all working. I was hoping something similar for nRF24LU1+ 8)
leon_heller:
That software works OK, lots of people have used it successfully.
I’m happy to believe that and i’ll maybe end giving a try. I had an other look at it and found that there’s the main project, libusb, which is platform independent. That’s really cool.
Do you know if there’s going to be a version compatible with 64 bit OS’s (Vista and 7)?
Also, how’s a ‘universal’ USB driver working? I mean, when you plug in a USB device in the computer, the host requests the device descriptor and according to the VID/PID the OS loads the appropriate driver. So i guess that with libusb you need to edit the inf file with custom PID/VID. What PID/VID are you using if you don’t own any?
leon_heller:
I’ve had problems with that compiler on my new laptop which has Win7 x64, so I haven’t been able to try it.
With the compiler, or with the driver? As far as i know, Windows locked one step further the driver verification process on 64 bit systems (except maybe XP 64-bit). I mean that a driver that is not digitally signed will not install. Digital signature costs several hundreds of USD, and has to be renewed every year.
The VID it comes with worked OK. You will presumably need to get your own if it is going into a product.
The driver is coming with a real VID? Are you sure that i’d need to get my own? (That’s an other USD 1500…)
I have used the nRF24LU1 pretty extensively. I know that last year, I was able to get a free CD with their SDK for the device for free (you just had to contact customer support to get it). I’m not sure if the disk contains code to program the chip, as I made my own programmer from an LPC2148 board (the device is extremely easy to program with SPI).
For a compiler, SDCC is available for free and works just fine. The only issue I ran into is that you have to do some work to get SDCC to initialize global variables properly with this chip, as it doesn’t have an XPAGE SFR (the nRF24LE1 does, though).
brennen:
I have used the nRF24LU1 pretty extensively. I know that last year, I was able to get a free CD with their SDK for the device for free (you just had to contact customer support to get it). I’m not sure if the disk contains code to program the chip, as I made my own programmer from an LPC2148 board (the device is extremely easy to program with SPI).
For a compiler, SDCC is available for free and works just fine. The only issue I ran into is that you have to do some work to get SDCC to initialize global variables properly with this chip, as it doesn’t have an XPAGE SFR (the nRF24LE1 does, though).
Hi Brennen, thanks for your post.
I was just now looking at the development kits from Nordic, they’re a bit expensive for just giving a try (about USD 500).
I don’t want to spend to much time setting up my custom environment. Would you recommend to try out the breakout board for nRF24LU1+, or rather go for a tandem such as PIC + nRF24L01+?
I would definitely not advocate buying Nordic’s development kit. Conctact Nordic’s technical support first to see if they are still not charging for the SDK disk. If not, then you could buy Sparkfun’s boards, have Nordic send you the SDK, and use the free SDCC compiler. You may or may not have to write a programmer (ask Nordic tech support if there’s an included programmer application with the SDK and whether or not it will work with the Sparkfun board), but I have posted the programmer I developed on my forum somewhere (forum.diyembedded.com). Whether that is a dealbreaker is up to you.
About the only advantage the 24LU1 has to other chips (IMHO) is the built-in AES unit, so you should probably weigh that against your other options. I personally prefer the 24LE1 chip, but it doesn’t have a full AES block, only an encryption/decryption accelerator block (I recently wrote my own AES library that uses the accelerator). However, Sparkfun (to my knowledge) doesn’t sell a 24LE1 breakout. The 24LE1 also doesn’t have built-in USB, but you could easily strap an FTDI chip to it.
I personally rarely use the SDK, as I prefer to write my own hardware libraries from scratch. The one place I did have to use it was to get the AES block to work, as the AES section in the spec is useless (at least in the spec version I was using at the time).
I also got the reply from the tech support at Sparkfun, so here it is:
So technically it is possible to get code onto these, however, it is
very difficult. No programmer/debugger exists for these so you would
have to make you own and find a suitable development environment.
I personally don’t understand the point of selling a breakout board without even a program loader, as putting a chip on a simple pcb is probably the easiest thing.
The nRF24LU1+ looks really cool, all these feautures in a single package - so it’s a pitty but i think i’ll stay away because of lack of development tools at an affordable price.
Mr. Brennen I’ve gone through ur tutorials. I am using nRF24l01+ RF module from Nordic. I am using LPC2148. I am very new to RF modules. I connected the module to the controller(It is a LPC kit from TITAN) and gave a supply to the module externally using a 3.3v supply. the module gets heated. what could be wrong?