Quite some time ago I ordered a bunch of Wireless Rabbit development kits from Rabbit Semiconductor. These controllers support 802.11 b/g wireless, and I also purchased some RCM5700 modules, which is basically the Ethernet version of the same processor. The dev. kits cost approximately $140 and come with the processor, development interface board for programming and power as well as a prototyping board with all of the required headers, standoffs, cables, software/drivers, etc. Once you own one dev. kit, you can simply purchase individual processors for ~$69 each and swap them out on the programming board. They can be connected using a mini PCI-Express connector broken out to a 50 pin header for access to all ports/pins.

Some of the features of these processors are:

  • 74 MHz Processor
  • 1MB Flash
  • 1MB SRAM
  • 35x GPIO pins
  • 6x Serial Ports
  • Real Time Clock
  • 10x 8-bit timers
  • 1x 10-bit timer
  • 1x 16-bit timer
  • 4 PWM Channels
  • Parallelism supported through co-statements and co-functions
  • Libraries/support for SMTP, TCP, UDP, Web Server, etc etc etc.
  • Specialized “web” variables that are passed between the controller and the web server

The list goes on, but I’m sure you get the idea. Pretty powerful stuff. As a quick and simple demo I created a small program with a web site that passes the values of four bits representing digital output pins between the web-server and the controller. When buttons are clicked on the website, LEDs are turned on/off allowing remote control of pretty much anything via the interwebs. Here is the video: (NOTE: Sadly the first few seconds were cut off again, despite the fact that I double-checked that they were intact before encoding. I promise this is the last time I use Windows Movie Maker to import my videos 😀)

As I mention in the video, documentation for these processors is slightly annoying, but overall they’re a lot of fun to play with. You basically have the ability to monitor and control variables and set-points from anywhere. You can even have the module Email you in the event of an “alarm.” The web server also supports user groups, which are extremely simple to setup. Basically it’s 1 line of code to create a user-group and 1 line of code to assign a username/password to a group and then each variable has read/write permissions associated with it while each .html file has viewing permissions assigned to them. A bit pricey, but certainly fun if you have a need for a portable wireless web-server that can control just about anything 😀