ACE-vs-match

webACE Server

World's Smallest Web Server

Up

Small Servers


webACE

webACE II

Spud
In the photo above is the webACE: a Fairchild ACE1101MT8 microcontroller programmed as a Web server and containing two tiny web pages in its on-chip memory. Since the ACE1101MT8 is the smallest available microcontroller, I believe that this really is the World's Smallest Web Server.

ACEvsPIC1
ACEvsPIC2
Besides being a wonderful little microcontroller, the ACE1101 is approximately half the size of the previous record holder, a Microchip PIC12C509A/SN, as we see here (the ACE is on the left and the PIC on the right). The ACE occupies about 65% of the area and about 46% of the volume of the PIC.

The webACE server implements a special-purpose TCP/IP stack, with a number of restrictions, but which suffices for serving small web pages. It connects to the Internet via a standard SLIP link.

That really is an ACE1101 in the photos -- the chip markings have too low contrast to show up.

Try it out!

The server is down until further notice. Thanks for visiting. 29-June-01

The webACE server's home page is here. There is also one other page. The web pages aren't much to look at, but they are a good match for, say, the browser in your cell-phone. Note that the home page is dynamic. Imagine the hit counter replaced with the current temperature inside your fridge, or whatever.

The server also responds to pings. I get a ping round-trip time of around 50ms from my local LAN. Web service maxes out at about 3 hits/second.

The server has been up almost continuously since Oct 20, 1999. If the link is not responding, then either my MediaOne connection is down, you've encountered a bug, or you have a client TCP implementation which does not strictly obey the offered window size (I think some versions of WNT 5.0 have this property).

00:30 EDT 20-Oct-99: The webACE server is UP.
13:00 EST  4-Jan-00: My MediaOne connection has been flakey lately. 
16:00 EST  7-Feb-00: webACE will be mostly down in the coming weeks
20:00 EST 21-Feb-00: webACE and webACE II are back up
17:00 EDT 10-Apr-00: Down. DNS/DHCP problems with MediaOne.
12:00 EDT 11-Apr-00: Back up.
12:00 EDT  7-Aug-01: AT&T Broadband instigates system-wide port 80 block
12:00 EDT  7-Sep-01: Block removed!

The Hardware

The actual running server hardware is not much larger than the chip, and considerably smaller than the serial cable connected to it (click on the photo for a better view)! It consists of just the ACE1101 microcontroller, two status LEDs, and a voltage regulator and a few discrete components for the RS232 interface.

The red LED flashes as packets arrive and the green LED is controlled from a link on the home page. A 57.6Kbps SLIP line connects the server to a Linux host, which serves as a bridge between SLIP and an ethernet LAN. The LAN then connects via a NAT firewall and cable modem to the Internet.

I purchased the ACE1101MT8 from Pioneer for $2.12 (quantity 1 price).

Here are the hardware schematics, as well as instructions for setting up a Linux SLIP server.

Note: The firewall passes only HTTP and ping packets. Although the server correctly sends an RST for packets on unknown TCP ports, you can't send it such a packet from the outside.

The Software

Some code statistics for the original software. I had originally forgotten to include the on-chip 64 byte "data eeprom" in the totals, which led to the 1010 bytes figure quoted on TBTF.
Startup       36 bytes
Serial       179
SLIP          91
IP           144
ICMP          47
TCP          188
Checksum     132
Application  257
Total       1074 bytes

Comprising:
  454 instructions
  912 instruction bytes
  162 data bytes
 2.01 bytes/instruction average

Notes

According to the Fairchild data sheet, the chip is 6.3mm long by 3mm wide by 1.1mm thick. Its size has been misreported in some places.

Join the new acex-users mailing list if you are interested in this microcontroller. Traffic is quite low right now.

NMAP thinks the server is a trivial joke!

webACE is unrelated to the webace, a web interface to A Caenorhabditis Elegans Database, other than being very small like a nematode.

Other Servers

Some other tiny web servers on the net, which you should visit if you're interested. There's a nice overview in a recent issue of the RCFoC Technology Journal.
ACEx is a trademark of Fairchild Semiconductor Corporation.
Copyright 1999,2000 Fredric White
Created: Oct 13, 1999
Last Updated: Aug 5, 2001
f w h i t e@std.com