Ask Hackaday: Frequency Hopping on the nRF24l01+?

We’ve seen a lot of hacks with the nRF24l01+ 2.4 GHz radio modules. The tiny chips pack a lot of bang for the buck. Since the radios can switch frequencies relatively quickly, [Shubham Paul] decided to take advantage of this feature to make a rudimentary frequency-hopping communications channel.

The code is actually incredibly simple. Both the transmitter and receiver simply scan up and down over the defined channels. Because the clock speeds of any given pair of Arduinos are likely to be slightly different, it’s not a surprise that the radios eventually drift out of sync. Right now, as a quickie solution, [Shubham] is using a serial-port resynchronization: both are connected to the same computer, and he just tells them to get on the same channel. That’s not a horribly satisfying workaround. (But it’s a great start!)

Keeping two radios that are continually swapping channels in sync is no easy task, but it could possibly be made easier by taking advantage of the nRF’s acknowledge mode. If the delay between a sent acknowledge message and a received one were constant, these events (one on TX and one on RX) could be used to re-sync the two hopping cycles. All of this would probably require more temporal resolution than you’re going to get out of a microprocessor running Arduino code, but should be possible using hardware timers. But this is pure speculation. We briefly looked around and couldn’t find any working demos.

So Hackaday, how would you remotely sync two nRF24s on the cheap? Or is this a crazy idea? It might help to make transmissions more reliable in the face of 2.4 GHz band interference. Has anyone implemented their own frequency hopping scheme for the nRF24l01+?

Configure ESP8266 Wifi with WiFiManager

There’s no doubt that the ESP8266 has made creating little WiFi widgets pretty easy. However, a lot of projects hard code the access point details into the device. There’s a better way to do it: use the WiFiManager library. [Witnessmenow] has a good tutorial and a two-minute video (which you can see below).

Hard coding is fine if you are just tinkering around. However, if you are going to send your device away (or even take it with you somewhere) you probably don’t want to reprogram it every time you change access points. This problem is even worse if you plan on a commercial product. WiFiManager does what a lot of commercial devices do. It initially looks like an access point. You can connect to it using a phone or other WiFi device. Then you can configure it to join your network by setting the network ID, password, etc.

Continue reading “Configure ESP8266 Wifi with WiFiManager”

Retrotechtacular: How Old is the Remote?

A few weeks ago we covered a (probably) bogus post about controlling a TV with the IR from a flame. That got us thinking about what the real origin of the remote control was. We knew a story about the 38 kHz frequency commonly used to modulate the IR. We’ve heard that it was from sonar crystals used in earlier sonic versions of remotes. Was that true? Or just an urban myth? We set out to find out.

Surprise! Remotes are Old!

If you are a younger reader, you might assume TVs have always had remotes. But for many of us, remotes seem like a new invention. If you grew up in the middle part of the last century it is a good bet you were your dad’s idea of a remote control: “Get up and turn the channel!” Turns out remotes have been around for a long time, though. They just weren’t common for a long time.

If you really want to stretch back, [Oliver Lodge] used a radio to move a beam of light in 1894. In 1896, [Marconi] and some others made a bell ring by remote control. [Tesla] famously showed a radio-controlled boat in 1898. But none of these were really remote controls like we think of for a television.

mysteryOf course, TV wouldn’t be around for a while, but by the 1930’s many radio manufacturers had wired remotes for radios. People didn’t like the wires, so Philco introduced the Mystery Control in 1939. This used digital pulse coding and a radio transmitter. That’s a fancy way of saying it had a dial like an old telephone. As far as we can tell, this was the first wireless remote for a piece of consumer equipment.

Continue reading “Retrotechtacular: How Old is the Remote?”

Robot Hand Goes Wireless

We can’t decide if [MertArduino’s] robotic hand project is more art or demonstration project. The construction using springs, fishing line, and servo motors isn’t going to give you a practical hand that could grip or manipulate anything significant. However, the project shows off a lot of interesting construction techniques and is a fun demonstration for using nRF24L01 wireless in a project. You can see a video of the contraption, below.

A glove uses homemade flex sensors to send wireless commands to the hand. Another Arduino drives an array of servo motors that make the fingers flex. You don’t get fine control, nor any real grip strength, but the hand more or less will duplicate your movements. We noticed one finger seemed poorly controlled, but we suspect that was one of the homemade flex sensors going rouge.

Continue reading “Robot Hand Goes Wireless”

WiFi Power Bar!

Ever wanted to access a file or run some program on your computer while away from home, but the darned thing is turned off? Finding themselves occasionally working away from home and not wanting to leave their computer on for extended periods, [robotmaker]’s solution was to hack into existence a WiFi-controlled power bar!

esp8266-powerbar-thumbInside the junction box, an eight-channel relay is connected to an ESP8266 module. The module uses MQTT to communicate with Home Assistant and is powered by a partially dismembered USB AC adapter — wrapped in kapon tape for safe-keeping. The entire bar is wired through a 10A fuse, while also using a fire resistant 4-gang electrical box. Once the outlets were wired in, closing it up finished up the power bar.

[robotmaker] controls the outlets via a cheap smartphone — running HADashboard — mounted to a wall with a 3D printed support. Don’t worry — they’ve set up the system to wait for the PCs to power down before cutting power, and the are also configured to boot up when the relay turns on.

The best part — the power bar only cost $25.

[via /r/homeautomation]

ESP32 Tutorials

The ESP8266 has become one of those ubiquitous parts that everyone knows. However, the new ESP32 has a lot of great new features, too. If you want to take the ESP32 for a spin, you should check out [Neil Kolban’s] video series about the device. When we say series, we aren’t kidding. At last count, there were nineteen videos. Some are only a few minutes long, but some weigh in at nearly twenty minutes and the average is somewhere in between.

The topics range from setting up tools and using Eclipse and GDB. There are also tutorials on specific tasks like PWM, analog conversion, real-time operating systems, and more.

Continue reading “ESP32 Tutorials”

Create Cheap Philips Hue Compatible Devices

The Philips Hue range is a great way to add wirelessly controllable lighting to your home, but the protocol is proprietary which makes it difficult to add our own custom hardware. [Peter] found a way to create his own Hue compatible devices based on cheap JN5168 modules that are able to connect to the Hue bridge. This means you can roll out your own lamps using cheap RGB or White LEDs, a power supply and the JN5168 Zigbee Light Link module.

He started off by trying to clone a Zigbee Light Link device to a MeshBee — Seeed studio’s open source Zigbee Pro module based on the NXP JN5168. Even though the MeshBee used the same device as a Hue lamp, it would not connect to the Hue bridge. But another clone lamp called Innr that he purchased from the local hardware store did connect quite easily. Using NXP’s open source tools, he was able to download the flash and EEPROM contents from the Innr and copy them to the MeshBee which did the trick.

After the EEPROM transfer trick, he figured out how to modify the two keys used for the ZigBee protocol — one for Home Automation and the other for the Light Link. With this final discovery he is able to take the ZigBee Light Link demo project, edit it using Beyond Studio, and then load the binaries on the MeshBee device so it can connect to the Hue bridge.

All of this work culminates in two custom firmware binaries; one for white dimmable lights and another for RGB dimmable ones. It even runs on these cheap JN5168 breakout kits he found for a few bucks. With all of the software taken care of, and having cheap ZigBee Light Link compatible modules on hand, building low cost Hue compatible lights becomes pretty straight forward.

Thanks [wind-rider] for the tip.