Sending RF from Chronos watch to MSP430 Launchpad

I tried implementing SimplicTI on Launchpad, and while several people have done it, I ran into various issues. So instead I decided to implement proprietary RF on Chronos and send messages to my Launchpad RF Boosterpack using my LarsRF library.

The code is for controlling as small 4-servo robot. See the code in my Github repository.

While in the acceleration menu on the top line of the Chronos, it sends X,Y and Z coordinates as a packet (with some useless overhead that should be removed). These values are received by the Launchpad using the RF Boosterpack. I’ve based the Servo code on RobG’s code. CorB pointed me in the right direction on the Chronos code. Thanks to both.

Most of my time was used trying to figure out that I was using the wrong frequency settings. Since the crystal on the RF Boosterpack is 27MHz, you can’t just copy the RF settings from the Chronos to the RF Boosterpack. That was quite embarrassing not to realize at once.

Will add pictures later.

Garage door opener using MSP430 and CC2500

I’m trying to make a garage door opener using some cheap CC2500 boards bought through a group-buy at 43oh.com and a great breakout board designed by RobG. I’ve made a prototype first, and it seems to work, but is not very pretty. I need to maybe make it more compact and make a case for it. Here’s a picture:

The code is definitely not finished, but you can download it here if you want to look at it.

Remote controlled power sockets for home automation etc

I’ve had these remote controlled sockets lying around for a while. They can be controlled via a radio-based remote. They often use 434MHz and OOK modulation (on-off-shift keying, which basically is turning the radio signal on and off based on a digital signal). This is a very simple protocol and frequency to reverse-engineer. This one is called NEXA, but I think there are quite a few versions with different brand names using the same RF protocol.

First take a receiver module such as this one. Connect it to power and ground, place an 8 cm wire to the antenna and connect the signal to a digital signal oscilloscope. If you don’t have one, you should get one. There are some sub-100 USD ones that work very well. I use Open Logic Sniffer, which is a great tool. Below is a picture showing a sample collected data. This is not the one from my NEXA remote controlled power socket. I didn’t save that one.

Connect it to the PC and you can see digital waveforms, timing etc on the PC. Use the remote that came with the socket to send a signal and read it using the receiver-module and the logic-sniffer. Press a button, and record the waveform. Note the timings etc. Zoom in to see the details. Try to see the timings + recognize specific repeating wave-forms. If you don’t have a logic-sniffer, you can also write a program to capture the timings of the signal using a simple MSP430-program. Then you have a DSO priced at $4.30 🙂 . Here is a picture of the Receiver-module.

Then use a transmitter module such as this one to send the same signal. Here’s a picture:

Use an MSP430 Launchpad or an Arduino as your microcontroller-board. Connect GND to ground, VCC to your Launchpad 3.5V and ANT to an 8 mm cable. Connect DATA to P1.0 and write a program to replicate the signal you captured using the DSO. I have one example that works with the above NEXA remote controlled socket in Inventortown on this link. You can take it from Inventortown and use it in your ‘local’ compiler if you prefer. This code is just for MSP430 Launchpad.

You can probably use the same mechanism to replicate many garage door openers also. I’ve used this code and the mentioned devices from Farnell to remote control devices in my house. The good thing about doing this is that you don’t have to worry about playing with higher voltages. The external, certified power socket takes care of all the dangerous voltages, and you just control it remotely. Very safe and nice. Source code is also below the line here.

Continue reading Remote controlled power sockets for home automation etc