SMS Mud Preview

February 13th, 2010

Are you bored and want to make good use of your unlimited SMS plan? Why not play a multiplayer proof of concept mud I wrote that uses SMS.

This game makes use of Twilio’s new SMS API and is somewhat fun to play, even in its current preview state.

Text the newly dedicated long code ‘hello’ to play: (202) 559-4772

it’s free.


Nike Shoe Check-in Plugin for Foursquare?

February 3rd, 2010

Nike+iPod sensors are small, flat wireless motion detectors that chirp a unique serial number (among other data), to tell your iPod how many steps you have taken, and at what pace. Its a great way to stay in shape.

However, they also make great presence detectors. They all transmit on a single channel, unencrypted, for about 60 feet in the 2.4GHz band. List price? $19.99, or $29.99 for shoe sensor and radio. It also looks kinda trendy too.

One really annoying thing about Foursquare or any other venue check-in application, is having to remember to actually check-in when you arrive. Wouldn’t it be a whole lot better if it worked automatically?

My system could eventually plug into something like stumble.to. If you are not familiar with “stumble.to”, it is a way of providing your MAC addresses for your WiFi laptop and phone to check in for you at the venue when you are present. Currently, it is limited to just a few venues now. But instead of having to lug around your laptop, or connect to the local wifi, you could also have your Nike shoes (or sensor in generic shoes) check in for you.

The backend device would need to be located in the venue, but it is internet-independent, low power, and can be located anywhere in the world.

Currently, its on an electronics bread board and rather bulky, and it talks to Foursquare directly…but it (mostly) works.

Here are some screen shots of my first check-in using this system:

Kodak Easyshare Wireless Picture Frame - How to show everyone whats on your frame

January 4th, 2010

I recently purchased a Kodak Easyshare Wireless Digital Picture Frame off woot for an amazing price of $49.99. Infact, I bought two. The model number is W820, which is an 8″ frame, but there is also a 10 inch version as well. These picture frames have built in WiFi and can grab content off the internet.

The most exciting part about this picture frame has nothing to do with putting an SD card full of baby pictures, and everything to do with adding fun widgets to your photo roll! Facebook status updates, facebook photos, tweets, news, weather, live sports scores, flickr accounts, and the ability to have it make use nearly any RSS feed. Oh, and it shows baby pictures too I guess in the mix, if thats what you want.

The widgets are powered by FrameChannel, which is a sort of third party service that provides this functionality to Kodak picture frames everywhere. You setup an account with a special secret code that is shown on your picture frame (which nobody is supposed to have access to, otherwise they could load content on your frame before you even take it out of the box), and then you are off to widget building land where you can construct a slideshow based on time of day and frequency of display.

However, deep on the website i noticed this little innocent piece of information:

Advanced Settings

Advanced Settings

What’s this at the bottom? Some strange little RSS URL?

Well, lets just plug it in and see what happens:

http://rss.framechannel.com//productId=KD9371/frameId=00:23:4D:B8:07:6D

Look, its an RSS feed of what my picture frame is showing now! I can send this nice URL to everyone I know so they can look at all my private content I have configured for this device. Now, under no circumstances would I recommend changing the last digits of this MAC address frame ID to another number….because you would get someone else’s picture frame content. Why would you want to do that?

UPDATE: 1/6/2010 It is quite apparent that FrameChannel is no longer interested in providing the public RSS feature to its customers. As other people have indicated, the RSS URL has been removed from the user interface. In addition, they are filtering by User-Agent. I am sure that will put an end to sharing of my RSS feed of my frame because User-Agents are impossible to fake. No word if they intend to update firmware for the “AVOS/1.1″-based device.

Slashdot has coined this feature documented on the web interface a “major privacy/security issue” and some discussion has ensued on the forum: http://yro.slashdot.org/story/10/01/05/0413228/Kodak-Wireless-Picture-Frames-Open-To-Public.

Software Defined Radio: An Introduction

October 8th, 2009

There is a lot of buzz in the world of software defined radio, or SDR. White space this, cognitive radio that, but most of that is probably tucked away in some lab somewhere. The limelight has been stolen away from current commercial and experimental uses of the technology today.

What is software defined radio anyway? Traditionally, radios are frequency and application specific. They usually, but not all the time, have a very narrow frequency operating range, and can only do limited amounts of very specific things. For example, your cell phone can only send and receive cellular phone signal. The idea of turning it into a garage door opener with an application at the App Store is laughable. Your WiFi card cannot be told to start receiving TV signals in the UHF band, and your old FM stereo cannot be reprogrammed to start receiving HD digital radio.

However, with SDR, these things start to become big possibilities. Its not so much that there is a demand to do these strange things. There is demand for generic hardware that could be programmed by hackers, small businesses and large companies alike at little cost. Software is something that can be easily changed, hardware is not.

How the heck can you do all the stuff that coils of wire, tank circuits, crystals, and other radio paraphernalia have dominated for the last 100 years? Its actually quite simple.

Radio signals operate at various frequencies, and most of the action occurs around 500KHz-6GHz. A radio frequency is no different than a sound. We already know that we can take a microphone, plug it into a sound card (which converts analog signals to digital signals), and record something. We can even process it, auto-tune it, amplify it, and detect frequency ranges with software you have on your computer. We also have the ability to flip it around, and turn those digital signals to analog ones, and reproduce it using an amplifier and speaker. Audio frequencies are typically between 20Hz and 20KHz, so as long as we take a measurement at least double that, we can safely represent and reproduce the frequency of interest. Thats why CD quality audio operates at 44.1KHz — double the frequency. Some sound cards and media offer 96KHz and beyond. In the land of radiowaves, there isn’t too much going on in this realm, but you could actually connect your microphone jack to an antenna and amplifier and do SDR today.

But that sound card is only good for audio frequencies anyway, what if we took it a step further. What if we could find a really, really, really fast analog-to-digital (ADC) and digital-to-analog (DAC) converter that took samples of information millions of times a second? If we used a 2 million samples per second ADC, we could easily represent an AM radio station of 1000KHz (1MHz). If we had one that did 10 million samples per second, we could represent the time standard station on 5MHz and decode shortwave radio. All we’d need to do is sample twice the rate of the frequency, use some of that FFT software that isolates it to a certain band of frequencies, watch the signal move up and down (amplitude modulation) or side to side (frequency modulation), and we could even send an audio version of it out a speaker–like a real radio receiver.

SDR is a little bit more complicated than that, but it gives you a very good idea on what exactly is going on. We can even use mixers and frequency synthesizers to extend our frequency range of our ADC/DAC to any frequency we want. So now all the ADC/DAC sample rates represent is the size of band of frequencies we can capture at once.

After years of putting it off and keeping an eye on the SDR scene, in particular GNURadio, I decided to see what it was all about. I ordered a USRP 1 from Ettus Research, and a week later, I was the proud owner of a software radio with dual MIMO transceivers that operate between 700MHz-1000MHz and 1.5GHz to 2.0GHz (RFX1800/RFX900).

SDR is highly experimental and has a considerable price barrier that nobody but the most enthusiastic hobbyists would even dream to consider. Even the most simplest setups are well over $1000. However, for any radio hobbyist (in particular, amateur radio operators) or software developer who wants to venture into radio, this is nothing usual. A good amateur radio rig or repeater will cost you this amount or more. Eventually, SDR will become the cheapest form of radio, because the part count is incredibly low, and non-exotic functionality will cost much less. Think of the USRP as an evaluation kit of what SDR can provide, not exactly the production costs if you were to send off your application to the factory today.

SDR, by itself, has a very high learning curve, however, the GNURadio project as mostly corrected this. Infact, you barely need to know anything about radio at all. A newbie could inbox a USRP in the morning, perhaps read a few wikipedia articles about different modulations and radio basics in the afternoon, and have several working examples before dinner. This is mostly due to the fact that not only does GNURadio have great building blocks for developers, it also has a very easy to use set of python modules to get you going.

GNURadio, whether it be C++ or python, involves setting parameters of the components of your radio, telling it how to connect stuff together, and hitting go. To be the most useful, you may want to change characteristics or provide dynamic inputs and outputs as the application runs, but its not required for very basic demo apps.

For example, if you wanted to make an FM radio receiver, you would tell gnuradio what frequency you wanted to receive, and how much bandwidth. Since FM radio only deviates back and forth about 200KHz, 400KHz would probably be enough. Then you would tell it to connect that receiver to a FM demodulator. This decodes the movement in frequency to a movement in amplitude (what us humans can hear and understand). Then you would finally connect it to a speaker. Its only a couple lines of code, there are more details, but you could take an example, change a few pieces of code around, and really do some amazing stuff.

What am I going to do with this thing? Two things: 1) start seeing what i can contribute to the amateur radio community with software defined radio 2) explore OpenBTS, an open source GSM cell site.
Both have great applications for rural and underserved communities, both in the first world and third world in terms of cost. Both also have incredible emergency applications and would be easily configured, deployed, and reconfigured as other needs arise.

This will not be the last word from me in regards to Software Defined Radio. I am actually quite far along with both explorations, and will publish my results so you could also do the same.

One last thing I will point out is, as with any software defined radio experiments, its extremely important not to interfere or hinder existing users in the frequency bands you operate in. I also plan to cover this in detail to help you comply with your local regulations, but its by no means legal advice. SDR on the USRP is a very powerful tool, and care needs to be taken that its output is “clean” and that you do not exceed the very, very small power emissions permitted by FCC (and other) regulations. If you are a licensed amateur radio operator, with proper filtering, nothing more would probably need to be done for experimental radio. Also, if you are interested in operating in other bands, FCC experimental licenses and frequency coordination are not impossible to obtain. I will also provide examples of what others have done to keep things legal. There’s really no need for unexpected visits by angry license holders and enforcement agencies!

Filming of “A Hero’s Gift” has commenced

August 11th, 2009

After a lot of work on the part of Phil Vaira, director of “A Hero’s Gift”, filming has finally commenced.  We expect to wrap up shooting by the end of August or early September.

I am fortunate enough to have been given the role of “Director of Photography” for this short film.  While I have had quite a bit of experience with the camera and experimenting with unique lighting techniques, this is my first experience in this type of role.

We are filming in 1080p at 24mbps using the expanded color gamut which is starting to take hold in the consumer television market.  The size of all the raw footage is absurd.  We will likely down convert to 480p for DVD format, so i’d imagine  its going to look very sharp to say the least.

We are using a very nice smith and victor light kit, along with a variety of color filters, gobo effects, etc. along with a decent rode mic and boom.  Some of the film’s night scenes require some interesting effects.

I flew down last Saturday to Salem, Oregon for the initial two day filming session.  Things went quite well, with the exception of one actor’s no show–he pretty much dropped off the face of the planet.  Short on talent, my budding acting skills were tapped until a replacement could be found for the off camera dialog.  Apparently, my acting is not going to do, and I was even fortunate enough to receive this rather critical review:

“..but the male seems like he has had no formal acting classes at all, lacks any kind of sense memory techniques, its like he is trying to be emotional. He is hardly believable, she is ok, but I would let 10 people listen to this dialog and see how they feel about it, he almost sounds like he is doing a cold read.”

Last time I say yes to something.

I also got to meet Dick McMahon Sunday, who will be playing the part of the war vet.  He fits the role very well.  I will look forward to working with him next Saturday when we do our 3rd day of shooting.

For those who are curious, here is a very rough cut teaser: A Hero’s Gift …. we are still working on a few more of the cut-aways for this scene, but that will be quite similar to the intro.  The film is about two heros who cross paths on Christmas day, a war veteran and a little boy.  Its one of those bittersweet flicks that may tug at your heart strings.