background preloader

Getting Started with nRF24L01+ on Arduino

Getting Started with nRF24L01+ on Arduino
Nordic’s nRF24L01+ 2.4GHz RF radios are a great way to communicate wirelessly between Arduino’s. They’re cheap, and powerful. Unfortunately, they can be a little daunting to beginners to get started. Today, I want to make it easy for total beginners to get up and running on nRF24L01+ radios quickly and easily. Stuff we need First, we have to go shopping. Reasonable substitutes for this stuff can also be found at Sparkfun if you like spending a lot more money. Preparation We only need one of the 2×4 pin female headers. Here’s what it looks like all ready to go. Solder it up The 8-pin male header goes in position C09-16.The 6-pin male header goes in position V13-18.The 2×4-pin male header goes in position K16-N15.The wires are connected as follows: Here’s what it looks like with all the wires in place, up close and personal. Software Get the RF24 library from github. From the File menu, select “Examples”, then “RF24″, and finally “GettingStarted”. Make another one From here…

Setup Nordic nRF24L01 RF modules to both Arduino UNO and Raspberry Pi In my process of building a Wireless Sensor Network, I obtained a few low cost RF module from Inhaos that are compatible with Nordic Semiconductor nRF24L01. My plans are to have these low cost RF modules replaces the wires for my sensor network on Arduino and connect them to Raspberry Pi as the IP gateway to the rest of the Internet. This entry will show you on how to setup both Arduino UNO & Raspberry Pi to connect to these nRF24L01 modules. Some basic information on these low cost RF modules, they communicate using SPI to the microcontroller and works on raw speed of 250Kbps, 1Mbps and 2Mbps. I'm using the following hardware & software:- RF modules used here :- Too many to choose from, just google for the above keyword on eBay or choose the cheapest as they sells in bulk of 10 pieces for a very low cost... *** The main differences between the regular nRF24L01+ modules and the Inhaos RF2400P modules are that the RF2400P have a higher output power of 5dBm but could not do 250Kbps speed. or

Wireless Arduino-compatible miniatures The IoT platform GroveStreams is a new IoT platform in the cloud designed to interact with users and remote M2M networks. Some developers let us know their interest in integrating with GoroveStreams since it seems to be providing some nice capabilities such as: On-line graphs and data logsEvent handling and calendarsSMS alertsGUI widgets that can be inserted into custom web pagesRESTful API Lagarto-MAX is very adaptable to this kind of online services so we accepted the challenge to add compatibility for GroveStreams. GroveStreams introduces a new concept called "component template", which lets us format data streams in a common way. Integration with lagarto GroveStreams is device oriented so we can transmit multiple datastreams (endpoint values) associated to a common device or component into a single HTTP request.However, lagarto-max's Event Manager is mostly endpoint oriented so we will be taking each endpoint value as an independent component from GroveStreams.

More 433Mhz RF Hacking | Tickett's Blog I touched on the smoke detectors and door/window sensors I ordered last week: – here are a few more details. The smoke detectors were £5.75 each – (all now sold out, but more available on a separate listing from the same seller – The door/window sensors were £2.50 each – (shop link if/when the listing ends – The RF signals broadcast by both devices are not decoded by the RFXCom receiver/transceiver RFXtrx433. I already had a few jeenodes ( knocking about and a 433Mhz plug ( – there are many alternatives available. I didn’t even have the right components so I improvised: So I disabled all of the decoders and enabled just the raw signal capture: Next steps: Like this: Like Loading...

Reverse Engineering LightwaveRF - about:benjie I’ve been stumped for a little while trying to decode LightwaveRF data using a cheap 433.92MHz receiver and a Arduino Nano. Today I’ve finally cracked it! Thanks to Geek Grandad’s LightwaveRF GitHub repo I finally figured out the missing link - my zeros were not zeros, but instead 10s! Sure, this doesn’t make sense yet, but let me explain. The setup To capture the radio data, I used a cheap 433.92MHz receiver hooked up to an Arduino Nano. For example, if it was low for 250us (microseconds) then high for 350us then low for 250us, the sketch would output the equivalent of “250, 350, 250”. In the image above the regular bits is the sensible data (4 different button presses, each automatically repeated to help with collisions) and the areas in-between are just noise. Limitations Due to not wanting to overflow the ringbuffer in the Arduino sketch I only allowed each capture to go up to 5,000 records (which worked out to be pretty variable, but generally a couple of seconds). Capture Analysis

LightwaveRF RF Protocol - about:benjie Following on from yesterday’s success, I’ve done a big data capture of various commands and have figured out (mostly) the protocol. As you saw yesterday, each command comprises 10 bytes. But actually, each of these only ever take one of 16 values, thus they really represent nibbles. The values of these nibbles are: Then the payload is made out of 10 of these nibbles. Level (2 nibbles) The level is defined by nibbles 1 and 2, giving a range of 0-255 (NOTE: this full range is not used, as far as I can tell). You can dim a light to one of the 31 different levels, but these levels start at 129. As with dimming, for a MOOD command (see later), you add 0x80 to your mood value - there are at least 5 moods supported: 0-4. Subunit (1 nibble) Each LightwaveRF remote can target 16 different “subunits” - e.g. the remote shown has in effect 34 buttons - on and off the the 16 subunits (A-D * 1-4) plus the two “global” buttons below. Command (1 nibble) Remote Identifier (6 nibbles)

LightwaveRF/Siemens/JSJS protocol - help? - Hi all, As mentioned in the EVE board, I've been attempting to decode LightwaveRF data. I've got a cheap 433.92MHz OOK/ASK receiver and hooked it up to an Arduino. The sketch records the length of time the data pin is high or low for - e.g. 250us high, 250us low, 250us high, 1250us low, ... Each signal repeats identically a number of times There is no preamble (or the preamble is repeated each repeat) The gap between transmissions is around 10200us. Using the above, I've captured some useful and extremely reliable data (reliable in that it always outputs the same data for the same button press, and it always outputs different data for presses of different buttons). As you can see this is a monotonically increasing sequence, but it's not e.g. the binary representation of [0..15] as I would have expected. Can anyone offer up any help/suggestions? I also have data about the commands (on/off/etc) from this remote which I can post if anyone is interested. Cheers, Benjie.

Achieving 3.4km with default XRF antennas - When I received my 4 XRF radio modules I did some initial testing, worked flawlessly from the very beginning and communicated through thick stone walls like they weren't there, so for fun I set out to see just how far their signal would travel in a line-of-sight scenario. The transmitting setup at base was simply a 4x AA pack powering a 3.3v regulator for a Picaxe 18m2 and XRF on a standard sized breadboard. And for the remote test rig I whipped up this using an old LCD video screen case, filling it with 4x AA's, 3.3v regulator, Picaxe 18m2, 20x2 serial LCD screen for displaying packets received/lost statistics, red/green LED for immediate feedback of receiving signal or not, and an XRF: (bottom button=power, top button=LCD backlight for night tests) The XRFs used in the long range tests had default 82mm whip antennas and all default settings, however I did drop the radio data rate down to 1.2k because it apparently increases radio sensitivity.

Part 1 of 2: Home Automation with Arduino and OpenHAB – Wireless Sensor Integration | electronic hamsters Home automation and sensing using Arduino, OpenHAB, and MQTT. With emphasis on low cost (less than $20) wireless sensor nodes. Here’s an example using Arduino to monitor the position of a garage door, and wirelessly report the position to OpenHAB, to be displayed the web interface. OpenHAB Android app user interface Arduino Field Device Node Eventually, I’d like to get to this point. All the sensors for home automation system. Physical Computing – a doll house replica of the house that mimics real-world activities. I want to share a setup for home automation and remote sensing using Arduino and Raspberry Pi. 1) Gateway 2) Field device (node and sensor / actuator) 3) User Interface Gateway The gateway is where all the field device data gets sent. Interface with multiple device protocols (more details later)Provide rules/scenes for automation (if this, then that). Field Node The field device is the node to which sensors or actuators are directly attached. Field Node Details Wireless Transceiver end