If you want to take a photograph with a professional look, proper lighting is going to be critical. [Richard] has been using a commercial lighting solution in his studio. His Lencarta UltraPro 300 studio strobes provide adequate lighting and also have the ability to have various settings adjusted remotely. A single remote can control different lights setting each to its own parameters. [Richard] likes to automate as much as possible in his studio, so he thought that maybe he would be able to reverse engineer the remote control so he can more easily control his lighting.
[Richard] started by opening up the remote and taking a look at the radio circuitry. He discovered the circuit uses a nRF24L01+ chip. He had previously picked up a couple of these on eBay, so his first thought was to just promiscuously snoop on the communications over the air. Unfortunately the chips can only listen in on up to six addresses at a time, and with a 40-bit address, this approach may have taken a while.
Not one to give up easily, [Richard] chose a new method of attack. First, he knew that the radio chip communicates to a master microcontroller via SPI. Second, he knew that the radio chip had no built-in memory. Therefore, the microcontroller must save the address in its own memory and then send it to the radio chip via the SPI bus. [Richard] figured if he could snoop on the SPI bus, he could find the address of the remote. With that information, he would be able to build another radio circuit to listen in over the air.
Using an Open Logic Sniffer, [Richard] was able to capture some of the SPI communications. Then, using the datasheet as a reference, he was able to isolate the communications that stored information int the radio chip’s address register. This same technique was used to decipher the radio channel. There was a bit more trial and error involved, as [Richard] later discovered that there were a few other important registers. He also discovered that the remote changed the address when actually transmitting data, so he had to update his receiver code to reflect this.
The receiver was built using another nRF24L01+ chip and an Arduino. Once the address and other registers were configured properly, [Richard's] custom radio was able to pick up the radio commands being sent from the lighting remote. All [Richard] had to do at this point was press each button and record the communications data which resulted. The Arduino code for the receiver is available on the project page.
[Richard] took it an extra step and wrote his own library to talk to the flashes. He has made his library available on github for anyone who is interested.
There is no question that steering wheel mounted controls are super convenient. Reaching all the way over to the dashboard to change a radio station is so 1990′s. An ever-increasing percentage of new cars are coming equipped with steering wheel controls for the stereo, however, you’ll lose the button control if you change out the stock head unit to something a little higher in quality. Sure, there may be an adapter readily available for your car/stereo combination, but there also may not be. [Ronnied] took the DIY road and made his own adapter.
The first obstacle for [Ronnied] was to figure out the wiring on the steering wheel controls. After some poking around he found that there were only two wires used for all of the control buttons, each button only changing the resistance between the two wires. The button states could easily be read by using an Arduino’s analog input. A Pro Mini model was chosen for its small size as it could be housed in the radio compartment of the dash.
The next step was getting the Arduino to control the aftermarket head unit. [Ronnied] did some research regarding JVC’s Stalk digital control interface but came to the conclusion that it would be easier to direct wiring the Arduino outputs to the appropriate spot on the head unit’s circuit board. To do this the button for each function that would also be represented on the steering wheel was traced out to find a common point on the circuit board. Jumper wires soldered to the circuit board simply allow the Arduino to emulate button pushes. To ensure that the head unit buttons still work in conjunction with the steering wheel buttons, the Arduino would have to keep the pins as inputs until a steering wheel button was pushed, the pin changed to an output, the signal sent and the pin changed back to an input. This feature was easily created in the Arduino sketch.
Continue reading “Arduino Translates Signals Between Steering Wheel Buttons and Aftermarket Head Unit”
There aren’t many Hackaday Prize entries playing around in RF, save for the handful of projects using off the shelf radio modules. That’s a little surprising to us, considering radio is one of the domains where garage-based tinkerers have always been very active. [Luke] is bucking the trend with a FM continuous wave radar, to be used in experiments with autonomous aircraft, altitude finding, and synthetic aperture radar imaging.
[Luke]‘s radar operates around 5.8-6 GHz, and is supposed to be an introduction to microwave electronics. It’s an extremely modular system built around a few VCOs, mixers, and amplifiers from Hittite, all connected with coax.
So far, [Luke] has all his modules put together, a great pair of cans for the antennas, everything confirmed as working on his scope, and a lot of commits to his git repo.
You can check out [Luke]‘s demo video is available below.
The project featured in this post is a quarterfinalist in The Hackaday Prize.
Continue reading “THP Semifinalist: A Continuous Wave Radar”
In 2016, a communications satellite will be launched into geostationary orbit somewhere over the middle east. Normally, this is fairly ordinary occurrence. This satellite, however, will be carrying two amateur radio transponders for hams all across europe, africa, the middle east, and India. [2FTG] is building a satellite transponder to talk to this satellite, and he’s doing it with junk sitting around his workbench.
The uplink frequency for this satellite will be in the neighborhood of 2.4 GHz, and [2FTG] needed a way to deal with the out of band interference in this part of the spectrum. The easy and cheap way to do this is with filters made for the WiFi band. Instead, [2FTG] had a few cavity filters in his junk box and decided to go that route. It meant he had to retune the filters, a process that should be annoyingly hard. [2FTG] did it in thirty minutes.
Antennas are another matter, but since [2FTG] has a supply of metal coffee cans, this part of the build was just a matter of soldering a bit of wire to an SMA connector, drilling a hole (using a log as a drill stop, no less), and soldering the connector to the can.
The project featured in this post is a quarterfinalist in The Hackaday Prize.
Continue reading “THP Semifinalist: Cheap Satellite Transponder”
With many hackers out there realizing how much you can do with a few RF blocks connected to a computer, it’s no surprise software defined radio would make a showing in the semifinalists for The Hackaday Prize. [Michael]‘s project is the PortableSDR, a small, self-contained unit that handles just about everything below 30MHz. No, [Michael] isn’t dealing with gigahertz accessible with fancier SDRs, but that’s not the point: PortableSDR is meant to do everything - vector analysis, a neat waterfall display, transmit and receive – in a small, portable package you can take anywhere. It’s also fairly cheap to build, and of course completely open source.
This isn’t [Michael]‘s first rodeo; he’s built a number of equally cool projects before. He was kind enough to send in a short bio, available below.
Continue reading “THP Hacker Bio: Michael R Colton”
One of the apparent unofficial themes of The Hackaday Prize is the Internet of Things and home automation. While there were plenty of projects that looked at new and interesting ways to turn on a light switch from the Internet, very few took a good, hard look at the hardware required to do that. [Felix]‘s Moteino is one of those projects.
The Moteino is based on the Arduino, and adds a low-cost radio module to talk to the rest of the world. The module is the HopeRF RFM12B or RFM69. Both of these radios operate in the ISM band at 434, 868, or 915 MHz. Being pretty much the same as an Arduino with a radio module strapped to the back, programming is easy and it should be able to do anything that has been done with an ATMega328.
[Felix] has been offering the Moteino for a while now, and already there are a few great projects using this platform. In fact, a few other Hackaday Prize entries incorporated a Moteino into their design; Plant Friends used it in a sensor node, and this project is using it for texting and remote control with a cell phone.
The project featured in this post is a semifinalist in The Hackaday Prize.
There’s a lot more to those fancy radio modules you use with your Arduino projects than meets the eye. Many of them are systems on a chip, complete with their own microcontroller and memory that can control your entire blinking LEDs project. Developing for these radio modules is a bit of a challenge, as the IDEs and compilers cost several thousand dollars. [Tim]‘s entry for the Hackaday Prize looks at one of these Bluetooth LE modules – Texas Instrument’s CC2540 and CC2541 – and puts an embedded BASIC interpreter right on the chip.
[Tim]‘s inspiration for this project came from looking at a few popular devices using the CC254X chip. Many of these included a microcontroller and the added costs, complexity, and power requirements that come along with an additional chip. This radio module could easily run any code an ATMega could, and adding another chip to a product seemed like a terrible waste, and certainly not in the spirit of open hardware and software.
The alternative is writing an interpreter for the CC254X chip. He’s chosen BASIC, but added a little bit of Arduino language syntax to make it even easier to develop on. Having already run through a few successful tests involving SPI, I2C and 1-wire devices, [Tim] has a basic system working, but [Tim] admits it does need a little rework to make it easier to use.
It’s a great project, and personally astonishing that it didn’t make the quarterfinal selection for The Hackaday Prize. [Tim] is still working on his project, though, in a great example of extrinsic motivation; he doesn’t need a trip to space to convince him to build something cool.
You can check out [Tim]‘s two minute concept video below.
This project is an official entry to The Hackaday Prize that sadly didn’t make the quarterfinal selection. It’s still a great project, and worthy of a Hackaday post on its own.
Continue reading “Extrinsic Motivation: BASIC For Bluetooth”