[Mark] recently finished his latest project, where he encrypts wireless communications between the new Intel Galileo and a Texas Instruments MSP430. The wireless interfaces used are the very common nRF24L01+ 2.4GHz transceivers, that had a direct line of sight 15 feet range during [Mark]‘s tests. In his demonstration, the MSP430 sends an encrypted block of data representing the state of six of its pins configured as inputs. This message is then received by a sketch running on the Galileo and stored in shared memory. A python script then wakes up and is in charge of decrypting the message. The encryption is done using AES-128bits in Electronic Codebook mode (ECB) and semaphores are used to prevent simultaneous accesses to the received data. As it is the first project using an Intel Galileo we received, don’t hesitate to send us a tip if you found other ones.
nRF24L01+ modules like the one shown above are a great way to send data wirelessly between your projects. They can be found on many websites for less than $1.50
a piece and many libraries exist for them. After having thoroughly looked at the Bluetooth Low Energy (BLE) specifications, [Dimitry] managed to find a way to broadcast BLE data with an nRF24L01+.
Luckily enough, BLE and nRF24L01+ data packets have the same preambles. However, the latter can’t send more than 32bytes in a packet and can’t hop between frequencies as fast as the BLE specification wants. [Dimitry] found the solution when he discovered that he could send unsolicited advertisements on three specific channels. In the end, considering the 32 bytes the nRF24L01+ can send, you’ll need to use 3 bytes for the CRC, 2 for the packet header, 6 for the MAC address and 5 for devices attributes. This leaves us with 16 bytes of pure data or 14 bytes to split between data and name if you want your project to have one.
This project is a study in connecting several different families of hobby electronic hardware. The image above shows the Electric Imp side of things. It bridges its Internet connection with the RF connections of the rest of the project.
The Imp is a peculiar (intriguing?) piece of hardware. Take a look at [Brian Benchoff's] hand’s on experience with the SD form factor hardware which is not an SD card at all. It’s an embedded system which uses light programming and a cloud-based software setup to bring wireless Internet to your projects.
In this case [Stanley Seow] started wondering if he needed multiple Imps to connect different parts of his setup. A bit of head scratching led him to the use of nRF24L01 modules which are cheap and easy to use Radio Frequency transceiver boards. He took a partially finished driver project and brought it home to play nicely with the Imp. Now he can use the system to communicate with other components which will eventually be used for home automation. Right now his proof of concept issues wireless commands to an Arduino driving a strip of LEDs.
Wanting to extend the capabilities of the radio frequency devices in his home [Kalle Löfgren] turned a Raspberry Pi into an RF control hub. We’ve seen some of his home automation work in the past. In his media room he built a universal remote base station which used the same RF board as in this project. The main difference is that before he went with an AVR microcontroller and this time he’s upgrade to a Raspberry Pi board.
The RPi brings a lot more to the table. Notably, the scripting (whose output is shown above) and networking features. His radio board is an nRF24L01 which he talks to via the SPI protocol. The Raspberry Pi has no problem talking to SPI devices through its GPIO header. [Kalle] just needed to do a bit of setup to configure the pin modes.
A Python script lets him sent commands using his keyboard, but this can also be automated. Combine that with the TCP server script he wrote and it opens up the a wide range of configurations to switch or talk to any device operating on the 2.4 GHz band.
[Texane] picked up a 2.4 GHz transmitter/receiver pair for transmitting sensor data wirelessly. After using them in a project he wanted to try pushing them a bit to see what the limits are when it comes to higher bandwidths. He ended up building a wireless speaker that transmits audio at about 90 KB/s. That link leads to a subfolder of his git repository. The code for this project is in the RX and TX folders, with images and video in the DOC folder.
The radio hardware that he’s using is a Nordic nRF24L01P chip which is available on a breakout board from Sparkfun. [Texane] mentioned to us that the chip includes error checking, packet ACK, and automatic retransmission. But these add overhead that can slow things down. The chip does offer the option to disable these features to get lower level access to the hardware. That’s exactly what he did and he mentions that the example code he wrote for the transmitter and receiver make every cycle count. This makes us wonder if it’s the speed of the ATmega328 chip that is the bottleneck, or the transceivers themselves?
When schools and universities have hundreds of students in a lecture course, they need a way to tell alumni and other potential benefactors that faculty/student relations are just as good as they were in the 1960s, when enrollment was just a fraction of current levels. Technology solves all problems, apparently, so administrators of these universities turn to ‘clickers’ – radio frequency remotes used to take attendance and administer quizzes.These clickers have absolutely no security, so it’s no surprise [Taylor Killian] was able to emulate one of these clickers with an Arduino allowing anyone with a laptop to cheat on a quiz, or have an entire class show up with only one student in the room.
Previously [Travis Goodspeed] (thanks for sending this in, [Travis]) tore apart one of these clickers – a TurningPoint ResponseCard RF – and discovered it uses a Nordic nRF24L01 wireless transceiver, commonly available on eBay for about two dollars.
[Taylor] connected this wireless module to an Arduino and whipped up a bit of code that allows him to listen to the audience responses, respond to a question as either a single clicker or all clickers, automatically respond with the most popular answer, and even block all audience responses to each question.
Perhaps technology doesn’t solve every problem, but at least [Taylor] learned something from a glorified remote control sold at the bookstore at an insane markup.
[Travis Goodspeed] put together a proof of concept hack that sniffs wireless keyboard data packets. He’s using the Next HOPE badge that he designed as the hardware platform for these tests. It has an nRF24L01+ radio on-board which can easily communicate with 2.4 GHz devices.
The real trick comes in getting that radio to listen for all traffic, then to narrow that traffic down to just the device from which you want data. He covers the protocol that is used, and his method of getting around MAC address verification on the hardware. In the end he can listen to all keyboard data without the target’s knowledge, and believes that it is possible to inject data using just the hardware on the badge.