Quick Look at the Original Ruggeduino
The Ruggeduino is directly compatible with the Arduino UNO SMD. It uses the same microcontroller (ATmega328P), same Arduino GUI, same USB interface (ATmega16U2), same clock frequency, same connectors and connector positions, and so on. The Ruggeduino adds several features to make it more rugged, making sure that it will last a long time.
This table shows a quick comparison between the Arduino UNO SMD and the original Ruggeduino. Please note the new Ruggeduino SE and ET are slightly different with updated specs on their respective pages.
The Ruggeduino is powered from one of three sources:
- USB port: 5V is provided directly from the USB port. A 500mA PTC (resettable fuse) protects the computer from overcurrent.
- DC power jack: a 2.1mm center-positive DC power adapter can supply 7V - 24V. This power input is also protected by a 500mA PTC (only on the Ruggeduino!)
- Vin: this connector pin can either source power to the Ruggeduino (7V-24V) or draw power from the DC power jack.
When more than one power source is present, the automatic power switching circuit selects external power (DC power jack or Vin, whichever is higher) when available, otherwise USB power is used. This behavior is the same as the Arduino UNO.
The Ruggeduino can supply power to shields or external circuits in three ways:
- +5V output: the +5V connector pin is the same voltage seen by the microcontroller. The current from this output is naturally limited by thermal protection on the on-board 5V regulator when externally powered, or limited to 500mA by a resettable fuse when USB-powered.
This +5V output can typically source 500mA when the DC power jack voltage (Vext) is 9V or less, and less current as Vext increases due to thermal loading on the 5V regulator.
On the Ruggeduino, the +5V output is protected against applied high voltage. If, for example, you apply 24V to this pin by mistake, the Ruggeduino will not be damaged. If you do the same thing on an Arduino UNO, you will destroy it!
- +3.3V output: the +3.3V connector pin sources 350 mA (Vext is 9V or less). Note that this is quite a bit more than the 50mA limit of the Arduino UNO.
As with the +5V output, the +3.3V output is protected against applied high voltage; if you apply 24V to this pin by mistake, the Ruggeduino will not be damaged.
- Vin: the Vin connector pin can draw power from the DC power jack. This power output is limited to 500mA by a PTC (resettable) fuse. The 500mA PTC fuse protects this output against conditions like short circuits to GND (which would damage an Arduino UNO).
The Ruggeduino is programmed in exactly the same way as the Arduino UNO; the full details can be found in the Programming section of the Arduino UNO SMD product page.
- From the Arduino GUI, select “Arduino UNO” from the Tools->Board menu.
- The Optiboot bootloader is preloaded on the Ruggeduino so it is ready for uploading sketches.
- The LUFA DFU/serial bootloader is preloaded on the Ruggeduino so it is ready for uploading sketches. It can be modified or replaced in exactly the same way as the Arduino UNO: using DFU/FLIP or through the ICSP header.
- The ATmega328P can be programmed through the bootloader or through its ICSP header.
- The Ruggeduino uses the same auto-reset mechanism as the Arduino UNO. Jumper J3 can be cut to disable this.
No special installation steps are required on Linux or Mac OS X. The Ruggeduino is recognized as a Communication Device Class (CDC) USB device and appears as a standard serial port on your system.
On Windows, this INF file must be installed to tell Windows that the Ruggeduino is a CDC USB device. Follow the instructions on the Getting Started with Arduino page. Just remember to use the INF file for the Ruggeduino instead of the one for the Arduino UNO. There is no conflict between the two INF files; it is OK to have a mix of Arduino UNO and Ruggeduino boards all plugged in at the same time.
The Ruggeduino was designed to withstand common electrical mistakes, thus ensuring your Ruggeduino will last a long time. This section describes the details of these protective circuits.
I/O Pin Protection
Every I/O pin is protected by a 5.1V zener diode and 220 ohm 30mA PTC (resettable fuse). The equivalent circuit is shown in this figure.
This protection circuit means:
- Every I/O pin can have up to 24V applied to it and will still not be damaged.
- Every I/O pin can be short-circuited to ground and will still not be damaged
- Every I/O pin can be short-circuited to another I/O pin and will still not be damaged
In addition, the 220 ohm PTC can take the place of series resistors in many applications, such as lighting LED’s, driving transistors, and so on. Here is an example of an Arduino driving a transistor through a series resistor, and how the Ruggeduino simplifies the circuit due to its built-in 220 ohm series resistance.
Similarly, you can connect LED’s directly to Ruggeduino digital outputs without any resistors and not worry about destroying them due to excessive current.
If you do have an application where this built-in 220 ohm resistance is not wanted, you can easily change it. Every I/O pin has through-hole pins surrounding its PTC fuse that can be jumpered with either a wire for 0 resistance or with a standard resistor. Here is a picture showing how to bypass the 220 ohm PTC for pin D7.
Total Microcontroller Current Protection
It is not enough to limit the current of each I/O pin, the total current sourced by the microcontroller must also be limited to limit its power dissipation. Current-limiting device IC3 on the schematic does this: the microcontroller total current is limited to 150mA (typical) no matter how many pins are sourcing current.
The MIC2009A limits the current from the +5V input to the +5v/1 output, which is used to power the ATmega328P. As soon as the ATmega328P pins start sourcing more than 150mA the +5V/1 voltage is automatically reduced by the MIC2009A to limit the current to this level. You can short every one of the ATmega328P’s I/O pins to ground and set them all high in your program and you still won’t destroy the microcontroller. Don’t try that with an Arduino!
5V Output Protection
The 5V output connector pin is current-limit protected by the thermal shutdown feature of the on-board 5V regulator. In addition, this pin is protected against applied overvoltage. Any voltage at this pin above 5.5V (typical) will disconnect the pin from the rest of the Ruggeduino circuitry, preventing this damaging voltage from reaching the other components.
Applied voltages of up to 24V are blocked.
The schematic below represents the output protection circuitry. The comparator is constantly checking the output pin +5VIO against a reference voltage set by the 2.4V zener diode. If the +5VIO voltage becomes too high, the comparator trips and turns off the MOSFET to disconnect the microcontroller’s +5V supply from the overvoltage applied at +5VIO.
3.3V Output Protection
The 3.3V output connector pin is current-limit protected by the thermal shutdown feature of the on-board 3.3V regulator. In addition, this pin is protected against applied overvoltage. Any voltage at this pin above 3.6V (typical) will disconnect the pin from the rest of the Ruggeduino circuitry, preventing this damaging voltage from reaching the other components.
Applied voltages of up to 24V are blocked. A circuit similar to the one shown above for 5V output protection is used.
Vext Fuse and Vin Blocking Diode
The external DC power jack input is fused on the Ruggeduino (500mA PTC resettable fuse). The main purpose of this fuse is to protect the Vin output when used to provide power to external devices. The on-board 5V regulator provides additional current limiting (thermal limiting) to the Ruggeduino circuitry.
On the Arduino Uno, the Vin output pin has no reverse blocking diode. If you apply power to the Arduino through this pin and reverse the voltage by mistake, you will destroy the Arduino. On the Ruggeduino the blocking diode comes after the Vin input thus prevents this failure mode.
The schematic below shows the Vin and Vext protection circuitry on the Ruggeduino.
RESET Pin Protection
The microcontroller RESET pin is protected by a 1k series resistor (R15 on the schematic) to limit current into this pin in the case of applied overvoltage.
AREF Pin Protection
The microcontroller AREF pin is protected by a 600 ohm series resistor (R14 on the schematic) to limit current into this pin in the case of applied overvoltage.
USB Connector Protection
The USB data lines are protected against ESD by low-capacitance transient voltage suppressors (TVS), as is the USB power line.
ICSP Pin Protection
The ATmega8U2 ICSP pins are protected by 1k series resistors and 5.1V zener diodes. The ATmega328P ICSP pins have the same protection as the other I/O pins on the microcontroller (see above).
The ATmega328P on the Ruggeduino is clocked by a highly-precise 16 MHz oscillator (0.005% accuracy) rather than the resonator used on the Arduino Uno.
D13 LED Isolated
The LED connected to D13 is isolated by a transistor circuit rather than being driven directly from the ATmega328P pin. This isolation draws much less current from the ATmega328P pin allowing it to be used for other purposes.
LED Disconnect Jumpers
In low-power applications, the on-board LED’s can be an unnecessary source of wasted current. All four of the Ruggeduino LED’s have cuttable jumpers in series (J1, J2, J4, J5) which can be cut to disable the associated LED. The jumpers can be reconnected using a 2-pin jumper and shunt, or bridged with solder or a small wire.
ATmega16U2 Reset Switch
For reprogramming the ATmega16U2 USB microcontroller, solder in switch S2, a standard 6x3.5mm tactile switch. This makes it easy to put the ATmega16U2 microcontroller into firmware update mode.
DTR Current Limit Resistor
The auto-reset mechanism on the Arduino Uno can be stressful to the ATmega16U2 USB microcontroller since it has to instantly discharge the coupling capacitor that connects to the ATmega328P reset pin. This instantaneous current can, over time, degrade the pin driver and possibly even cause it to fail. On the Ruggeduino, 100 ohm resistor R41 limits this current and protects the ATmega16U2.
- Here is the schematic of the Ruggeduino.
- Here is a graphic showing locations of the headers and cuttable jumpers
The Ruggeduino was designed in the USA and is assembled in the USA using lead-free components and lead-free manufacturing and assembly processes.