The Freetronics EtherTen is 100% Arduino Uno compatible, uses the ATmega328P Microcontroller and works with most Arduino shield designs and software. The EtherTen can be powered automatically by the USB connection or powered separately by your project via the DC jack on header, or from the LAN using Power-over-Ethernet.



Software installation

1. Download the latest Arduino IDE (version 0022 or higher) for your operating system from www.arduino.cc/en/Main/Software and install it to suit. You'll also find more step-by-step guides for installation here: www.arduino.cc/en/Guide/HomePage

Windows users please note: The USB driver for the EtherTen must be downloaded and used for first-time installation of the EtherTen's USB port: www.freetronics.com/usbdriver

2. Once the Arduino IDE is installed, we're ready to do the initial board and port setup. You won't need to do this again unless the serial port number changes such as when using a different USB port on your computer.

3. In the Arduino IDE, select Tools > Board > Arduino Uno.

4. Before connecting your EtherTen to the USB port, have a look at the list of ports in Tools > Serial Port. That's where your EtherTen serial port is going to appear when you plug it in.

5. Connect your EtherTen to the computer USB port. We supply an appropriate USB cable with the EtherTen. After a short while if you look at Tools > Serial Port again you'll see a new port appear: that's the EtherTen ready to be used. Select that port now with Tools > Serial Port so there is a tick mark next to it

6. You're ready to go. The Arduino IDE now knows about your board and has a connection to it. Our EtherTen boards ship with the "Blink" sketch preloaded so you should immediately see the blue power LED illuminate, and the red D13 LED will begin flashing on and off at 1 second intervals.

Compiling and uploading a sketch to the EtherTen

"Sketch" is the Arduino term for a program. To test uploading a simple sketch to your EtherTen:

1. Choose File > Examples > Digital > Blink. You'll see the code for Blink open in the IDE.

2. Select Sketch > Verify/Compile, you've now built (compiled) the program ready to be loaded.

3. Lastly, to load the program into the EtherTen, select File > Upload to I/O Board. You'll see the red D13 LED flicker as the board is reset, then the green and yellow RX and TX LEDs will flash while the upload is in being done.

4. A few seconds later the RX and TX LEDs will go off, the board will reset, and the red D13 LED will begin flashing on and off at 1 second intervals. Congratulations! You've now compiled and uploaded your first sketch to the EtherTen. Try experimenting with changing the delay values in the sketch and repeating the process to see the LED blink at different rates.

Using the LAN port

The network functionality of the EtherTen uses the Wiznet W5100 chip, which is the same chip used on the official Arduino Ethernet Shield. We also kept all the pin assignments the same, so functionally the EtherTen is identical to having, say, an Arduino Uno with an official Ethernet Shield plugged into it.

This means any relevant tutorials or examples you find will work just fine on the EtherTen, and also that it's fully supported by the official "Ethernet" library and associated examples included with the Arduino IDE. If you select File > Examples > Ethernet you will see a variety of sketches that you can try with your EtherTen.

Note that just like the official Ethernet Shield, the EtherTen does not come with a specifically assigned MAC address stored in hardware. The MAC address must be set from inside your sketch, just as you'll find near the start of each of the Ethernet examples. You can pick any valid MAC address you like as long as it's unique on your network.

There is one small addition you may need to make to EtherTen sketches with Ethernet support, so Ethernet works correctly after a power on. This is because of the onboard reset chip feature of the EtherTen. Read about it here.

Using the microSD card slot

The microSD card slot is supported by a variety of libraries that implement different versions of the FAT filesystem commonly used on microSD cards. The Arduino IDE comes bundled with the "SD" library pre-installed including some example sketches, so look in File > Examples > SD to see how to communicate with a microSD card.

The "select" line for the microSD slot on the EtherTen is D4, the same as used in the examples bundled with the IDE, so the examples should work exactly as-is.

Note that even though both the Ethernet chipset and the microSD card slot use pins D11, D12, and D13, you can still have both features operating at the same time because they can share those pins. You can therefore combine those features to do things like display a list of files on a microSD card in a web page.

EtherTen specifications

Microcontroller
MCU Type Atmel ATmega328P
Operating Voltage 5V
MCU Clock Speed 16 MHz
EtherTen
Input Voltage 7-12V DC recommended
6-20V DC maximum
Digital I/O pins 14 (6 provide PWM output)
Analog Input Pins 8 (analog input pins also support digital I/O,
giving 22 digital I/O total if required)
Analog Resolution 10 bits, 0-1023 at 5V AREF is approx 0.00488V; 4.88mV per step
Current Per I/O Pin 40 mA maximum
Total Current For All I/O Pins 200mA maximum
Current For 3.3V Output 50mA maximum
Memory
Flash Memory 32 KB Flash Memory, of which less than 1 KB is used by bootloader
SRAM, EEPROM 2 KB SRAM, 1 KB EEPROM
microSD microSD card slot with SPI interface. Uses pins D4 (select), D11, D12, D13
Communications
Serial 1 x hardware USART, SPI (Serial Peripheral Interface), I2C
Ethernet 1 x 10/100 LAN port using the Wiznet W5100. Uses pins D10 (select), D11, D12, D13
Other Integrated USB programming and communication port. Many other one-wire, multi-wire, LCD and expansion devices supported by free code and libraries