iSpykee

Navigation

Recent site activity

Developer Guide

iSpykee LAN Controller software


Contents



Overview


This package contains C software to implement communications between a Spykee wifi robot and the iSpykee service. Spykee is a wifi robot that implements TCP/IP protocols for controlling the robot functions, such as motors, headlight, and receiving live video and audio streams from the robot's camera and microphone.

The emphasis in designing this software has been on simplicity, portability and education.  The software has very few external dependencies.

Building


In general, building the iSpykee LAN controller involves editing the Makefile and typing 'make'.  There are instructions in the Makefile itself showing where to make edits.

LIBJPEG


The first option in the Makefile is for whether you are builidng with LIBJPEG support.  LIBJPEG is required for motion detection and to support "low res" mode.  The LAN controller will compile and work, without LIBJPEG, but motion detection "low res" mode will not be supported (but you can still use iSpykee, just not those features).

To enable LIBJPEG, download and install LIBJPEG.  Download from the Independent JPEG Group: http://www.ijg.org/ and build and install per the instructions.

In the iSpykee LAN Controller Makefile, see the following lines:

# use this if linking to libjpeg
LIBJPEG=../jpeg-6b/libjpeg.a
CFLAGS=-I../jpeg-6b -DHAVELIBJPEG
MOTION=motion.o lowres.o
LDFLAGS=-lm
#comment out the above if you don't have libjpeg

Change "../jpeg-6b/" to point to wherever you installed the JPEG header files and libraries.

If you want to build without LIBJPEG< simply comment out the above lines in the Makefile.

Mac OS 10.4


When building for Mac OS 10.4 you will need to uncomment the following line in the Makefile:

# had to add this for OS X 10.4 gcc/libc for gettimeofday()
#CFLAGS+=-DTZP

Windows XP/Vista


When building for Windows, uncomment the following lines:

# added this for Windows (MINGW)
#CFLAGS+=-DWINSOCK
#LDFLAGS+=-lws2_32

The binary version we distribute for windows was built with MINGW compiler available here: http://www.mingw.org/

Using mingw32-make included. The binary was linked with a pre-compiled LIBJPEG available here: http://lefthand.xullum.net/index.php?op=downloads

Linux and Mac OS 10.5


Simply use the Makefile as distributed, adjusting for the location of LIBJPEG. The standard LIBJPEG will build on these platforms without problems.  Build LIBJPEG if it is not already on your system (or comment out LIBJPEG per the instructions above).

Type 'make' to build the 'spykee' executable.  For usage, see command-line usage.