A couple of weeks ago I ordered a Joystick Shield V2.4 from elecfreaks and it arrived yesterday. This shield with baked in nRF24L01 support looked quite promising as the basis for a handheld remote control for a robot or quadcopter. The shield also has a Nokia 5100 display connector but I’m not planning on using that.
The other end of the remote control link will be based on an embedded coolness nRF24L01 shield which I have looked at in a previous post. The robot radio link would use a pair of short range nRF24L01 modules and the quadcopter would use long range nRF24L01 modules.
When I checked the wiring diagram for the shield, the interrupt pin of the nRF24L01 socket was not connected to anything. The Nordic nRF24L01 .Net Micro Framework Driver on Codeplex (used for the both ends of the link) is interrupt driven so a small modification to the shield was required. I connected the interrupt pin (pin 8) of the nRF24L01 socket to DIO Pin1
The sample application from the previous post requires a small change to the initialisation code to work with the Joystick shield.
public void Run()
_module.OnDataReceived += OnReceive;
_module.OnTransmitFailed += OnSendFailure;
_module.OnTransmitSuccess += OnSendSuccess;
_module.Initialize(SPI.SPI_module.SPI1, Pins.GPIO_PIN_D10, Pins.GPIO_PIN_D9, Pins.GPIO_PIN_D1);
All of the buttons (A to F & Joystick push) are connected to digital inputs and the input voltage (3.3V or 5V) for the joystick x & y is selected using a switch which is perfect for my Netduino based project
Bill of materials (prices as at Jan 2014)