Project Sun SPOT  > >   Documentation  > >     General FAQ

Frequently Asked Questions:

General

What is Project Sun SPOT?

Sun has been very successful in spreading Java to over 6 billion devices throughout the world. Well over a billion cell phones run Java. We in Sun Labs are interested in what comes next. In order to help make sure that the next generation of gadgets is based Sun technology, we developed Sun Small Programable Object Technology (SPOT). We've created an experimental platform to inspire developers to build the next great toy, sensor, communication device -- who knows -- using Sun technology. Our Sun SPOT devices make include a flexible hardware platform as well as the software and tools to make it easy to innovate, experiment, and prototype whatever a developer can imagine.

What is a Sun SPOT Device?

The Sun SPOT Device is a small, wireless, battery powered experimental platform. It is programmed almost entirely in Java to allow regular programmers to create projects that used to require specialized embedded system development skills. The hardware platform includes a range of built-in sensors as well as the ability to easily interface to external devices.

What does a Sun SPOT Development Kit contain?

Each SPOT kit contains two complete, free-range Sun SPOTs (with processor, radio, sensor board and battery) and one basestation Sun SPOT (with processor and radio). Also included are all the software development tools and cables required to start developing applications for your Sun SPOT.

What is the basestation used for?

The basestation connects to your development machine (a PC) and allows you to write programs that can run on your PC and use the basestation's radio to communicate with remote Sun SPOTs. The development tools also make use of the basestation to deploy and debug applications on remote Sun SPOTs. Note that a full Sun SPOT can also be used as a basestation, though in doing so its sensor board would not be used.

What development platforms are currently supported?

The initial Sun SPOT development software has been tested on Windows XP, Macintosh OS X 10.4 running on both PowerPC- and Intel-based hosts, Linux (Fedora Core 5, SuSE 10.1 and Ubuntu 6.06), and Solaris x86 (August release or later with latest USB drivers and running Java 5 not 6).

For other platforms please search the Sun SPOT Forums for postings by community members who have successfully installed the SPOTs SDK on a variety of different platforms.

What about Vista and Leopard?

We were not able to test them before the latest Sun SPOT release (version 3.0). However posts on the Sun SPOT Forums have reported that people have been successful installing the SPOTs SDK for both VISTA and Leopard (Mac OS X 10.5). Please search the Forum for details about how to work around various problems. In particular, problems with the spotfinder utility.

Is there an emulator or simulator for Sun SPOTs?

Yes, the 3.0 release includes an Emulator as part of SPOTWorld. This emulator is capable of running a Sun SPOT application on your desktop computer. This allows for testing a program before deploying it to a real SPOT, or if a real SPOT is not available. Instead of a physical sensorboard, SPOTWorld displays a virtual SPOT with a control panel where you can set any of the potential sensor inputs (e.g. light level, temperature, digital pin inputs, analog input voltages, and accelerometer values). Your application can control the LEDs' color that is displayed in the virtual SPOT image, just like it would a real SPOT. You can click with the mouse on the push button switches in the virtual SPOT image to press and release the switches. Receiving and sending via the radio is also supported. Each virtual SPOT is assigned its own address and can broadcast or unicast to the other virtual SPOTs. If a shared basestation is available a virtual SPOT can also interact over the radio with real SPOTs.

Ordering

Are Sun SPOTs available in Europe? Australia? etc?

Yes. We are now able to sell SPOTs to the EU, Canada and Australia. We are currently in the process of getting compliance approvals to sell SPOTs in other parts of the world. As these agency approvals are received SPOTs will be made available in those countries.

Is there an educational price for Sun SPOTs?

Yes. There are significant educational discounts available for both individual Sun SPOT kits and a special classroom pack of 15 kits. Please contact a Sun sales person for more details.

How do I return a damaged Sun SPOT?

If you are having problems with a Sun SPOT please post a description of the problem to the "General" Forum at http://www.sunspotworld.com/forums/ Many times what appears to be a defective SPOT is actually the result of an incorrect installation or a misreading of the documentation. In those cases a reply on the Forum can get you up and running right away. If your Sun SPOT does seem to be defective then you will receive instructions on how to exchange it for a good one.

Hardware

What is the basic hardware configuration?

A full, free-range Sun SPOT device is built by stacking a Sun SPOT processor board with a sensor board and battery. It is packaged in a plastic housing. The smaller basestation Sun SPOT consists of just the processor board in a plastic housing. Dimensions are 41 x 23 x 70 mm. Weight is 54 grams.

What processor does the Sun SPOT use? How much memory does it have?

Each Sun SPOT has a 180MHz 32-bit ARM920T core processor with 512K RAM and 4M Flash.

What radio does the Sun SPOT use?

The Sun SPOT processor board has a 2.4GHz radio with an integrated antenna on the board. The radio is a TI CC2420 (formerly ChipCon) and is IEEE 802.15.4 compliant.

What other features does the processor board support?

Each processor board has a USB interface (used to connect to a PC). There are two LED's, one red and one green. Finally there is an 8-bit microcontroller Atmel Atmega88 used as a power controller.

What type of battery is used?

Each complete SunSpot has a 3.7V rechargeable, 750 mAh lithium-ion battery which is recharged whenever the USB interface is connected to a PC or powered USB hub. Note the basestation Sun SPOT does not have a battery, getting its power via the USB connection to the host PC.

How long will the battery power the SPOT?

With both the CPU and the radio active the battery can support about 7 hours of operation. This can be extended by having the processor sleep and turning off the radio when it is not in use. In deep sleep mode the battery will last for over 900 days. Note: with all 8 of the sensor board's LEDs on full, the battery will only last for about 3 hours.

What sensors/actuators are currently available?

The initial Sensor Board has

  • a 3-axis accelerometer (with two range settings: 2G or 6G)
  • a temperature sensor
  • a light sensor
  • 8 tri-color LEDs
  • 6 analog inputs readable by an ADC
  • 2 momentary switches
  • 5 general purpose I/O pins and 4 high current output pins

When will I be able to get an XXXX sensor? (e.g. GPS, humidity, etc.)

The initial Sun SPOT sensor board has a variety of inputs making it easy to attach many external sensors. For example please see http://blogs.sun.com/davidgs/date/20061121 for a description of hooking up a relative humidity sensor to a Sun SPOT.

Software

What kind of operating system does the Sun SPOT run on?

There is no operating system used. The Sun SPOT runs a Java VM on the bare metal.

What is the Java implementation for Sun SPOTs?

The Sun SPOTs use a fully capable Java ME implementation, called Squawk, that supports CLDC 1.1 and MIDP 1.0, plus provides basic OS functionality. The VM executes directly out of flash memory. All the device drivers are also written in Java.

Is any of the Sun SPOT software open source?

Yes all of the code that runs on the Sun SPOT is available under GPL v2. You can download it from our projects on java.net. Go to https://spots.dev.java.net for more information.

Where can I find the Sun SPOT source code?

For the absolutely latest version of the source code please go to spots.dev.java.net. For the version corresponding to your currently installed Sun SPOT SDK, look in the "src" directory and expand any of the jar files there to examine to the Sun SPOT library source code.

Is the source code for the Squawk VM available?

Yes. The Squawk source code is now available from squawk.dev.java.net

Sun SPOTs and Other Sensor Platforms

What is the difference between the Sun SPOT and the Berkeley Motes?

The two platforms are quite different as they have been designed with different goals in mind. The Berkeley Mote uses an 8-bit, low-power microcontroller (Atmel ATmega128L) running TinyOS and programmed with NesC. The Sun SPOT uses a 32-bit ARM9 microprocessor running the Squawk VM and programmed in Java. Both support IEEE 802.15.4 radio. The Sun SPOT was designed to be easier to program and to better support rapid prototyping.

Can Sun SPOTs and Motes talk to each other?

In theory yes, but the current Sun SPOT radio stack is incompatible with the packet format used by the Motes. We do provide direct access to the 802.15.4 layer via the I802_15_4_MAC and I802_15_4_PHY interfaces (look inside com.sun.spot.peripheral.radio). Currently, the LowPAN layer sits on top 802.15.4. Since the motes do not use LowPAN, you'll need to create your own layer modelled after LowPAN that sits directly on 802.15.4.

Do Sun SPOTs support ZIGBEE?

No. IEEE 802.15.4 is the standard. Zigbee is an industry alliance that is layered on top of 802.15.4. We have chosen to implement the 802.15.4 standard and not add the additional Zigbee stuff, but there is no reason that someone couldn't. (See previous answer.)

Is it be possible to communicate with a bluetooth device using the Sun Spots?

Not with the current sensor board. However it would be possible if you build your own sensor board that includes a Bluetooth radio and write the radio stack for it.