You can have multiple SPI devices connected to pins 11..13, you just need to manually
toggle different pins from pin 10 for the chip select.
Also, if you're only gonna be testing a device that uses CS other than pin 10, you still need
to configure pin 10 as OUTPUT, else the mega328 SPI peripheral will revert to slave mode.
I dont know if i followed exactly what you said. (english is not my main language)
So i can use my duemilanove with ethernet shield on top and also use nrf24l01 chip with no conflict between those two ?
didnt understand exactly what you mean by manually switching different pins from pin 10
Ok, may be i'll just connect my master node (custom pcb with nrf24l01 chip) to computer with ftdi cable and then it'll receive commands from serial via php page or something like that...it's not the best for sure, the best option would be connecting ethernet sield and nrf24 chip together, but i didnt understood how to do that.
You can use SPI pins 11..13 for more than 1 device, but you just have to use a
different chip-select pin for each different device, pin 10 for one and some other
pin for the others. So you have to make sure the nrf2401 shield uses a something
different from the ethernet board for chip-select.
One little catch is with Ethernet shields based on the Wiznet W5100 chipset, which includes the official Ethernet shield and many third-party shields. The W5100 has a design flaw that causes it to maintain control of the SPI bus even when another device has been selected, making it very tricky to combine the official Ethernet shield with other shields that use SPI. The Freetronics Ethernet Shield uses the W5100 chipset but includes a fix in hardware so it doesn't have that problem and will happily share the bus with other SPI devices.
So maybe there's a problem with ethernet shield, even if i can use another pin for CS (on the nrf24l01 chip), the ethernet shield wont let me use it :s
You're just gonna have to work that out between whatever shields you have. Check out
the schematics, etc. Many shields seem to have marginal designs. You may have to cut
some traces, and patch software, to get shields to play nice together, or toss some shields
in the closet, and buy something else. XBee shields are notorious for this kind of problem
too.
EDIT: the other option is, you can try using the software SPI commands to connect to the
NRF2401 module, and use a different set of pins than 10..13,
So maybe there's a problem with ethernet shield, even if i can use another pin for CS (on the nrf24l01 chip), the ethernet shield wont let me use it :s
The w5100 shield is what it is. As far as I know most shields are made with the idea of them being the only shield on the arduino. You start stacking shields and you are pretty much on your own to figure out the interfacing.
@ oric_dan , i just read the EDIT you made in that post before
i actually found a guy in the nrf24 maniacbug library post that has an arduino mega with ethernet shield and nrf24 working together.
I think i'll follow that
I've pretty much been working on the same setup with the exception of using RFM12Bs instead of the nrf24s (Form factor issue and availability at the moment). I haven't had any issues with the Ethernet Shield and the RFM12B after adjusting the library to use pin 9 as the SS, but I haven't tried doing that for the NRF24s yet.
Carlcox89:
@ oric_dan , i just read the EDIT you made in that post before
i actually found a guy in the nrf24 maniacbug library post that has an arduino mega with ethernet shield and nrf24 working together.
I think i'll follow that
Arrch:
I've pretty much been working on the same setup with the exception of using RFM12Bs instead of the nrf24s (Form factor issue and availability at the moment). I haven't had any issues with the Ethernet Shield and the RFM12B after adjusting the library to use pin 9 as the SS, but I haven't tried doing that for the NRF24s yet.
You mean the library for the RFM12, or for the ethernet module?
Also, which RFM12 library are you using? I tried the JeeLib library, but the examples don't work.
Carlcox89:
So, no one has an opinion on what could be the best approach ?
arduino w/ Ethernet shield + nrf24 chip
Nrf24 chip on custom pcb being connected to pc (serial) and a php that would handle the requests...etc
Nf24 chip on custom pcb connected (serial) to arduino with ethernet shield
Why don't you explore using Raspberry Pi as the central hub with built-in ethernet or USB wifi/BT adapter.. it is cheaper than an Eth Shield and a lot more powerful and flexible and runs an O/S...
If you need a longer bridge, you can have 2 Raspberry Pi running a wifi link to each other with external wifi antennas... flexible solution using common wifi products...
This HOWTO uses both the maniacbug libraries for both Arduino and ported to RPi so the codes looks similar...
My idea was to make the Arduino/nRF onto a PCB as remote notes connected to RPi with a nRF radio with external antenna for better range/coverage..