The UnoNet is a micro controller board based on the ATmega328. It has 14 digital input/output pins, 6 analog inputs, a 16 MHz crystal oscillator, a RJ45 connection, a power jack, an ICSP header, and a reset button. The board has been laid out as a Arduino Rev 3 compatible board and is equipped with Arduino compatible headers making it possible to fit standard Arduino compatible shields on top of it.
NB: Pins 10, 11, 12 and 13 are reserved for interfacing with the Ethernet device and should not be used otherwise. This reduces the number of available pins to 9, with 4 available as PWM outputs.
The board is equipped with a Silabs CP2104 USB to serial adapter that is used for programming and communication with the device. If you’re using USB to connect to the board it will also power the device.
There’s also a barrel jack that you can power the device from. The board can operate on an external supply of 6 to 20 volts. If supplied with less than 7V, however, the 5V pin may supply less than five volts and the board may be unstable. If using more than 12V, the voltage regulator may overheat and damage the board. The recommended range is 7 to 12 volts.
The power pins are as follows:
- VIN. The input voltage to the UnoNet board when it’s using an external power source (as opposed to 5 volts from the USB connection or other regulated power source). You can supply voltage through this pin, or, if supplying voltage via the power jack, access it through this pin.
- 5V. This pin outputs a regulated 5V from the regulator on the board. The board can be supplied with power either from the DC power jack (7 – 12V), the USB connector (5V), or the VIN pin of the board (7-12V). Supplying voltage via the 5V or 3.3V pins bypasses the regulator, and can damage your board. We don’t advise it.
- 3V3. A 3.3 volt supply generated by the on-board regulator. Maximum current draw is 50 mA.
- GND. Ground pins.
- IOREF. This pin on the UnoNet board provides the voltage reference with which the microcontroller operates. A properly configured shield can read the IOREF pin voltage and select the appropriate power source or enable voltage translators on the outputs for working with the 5V or 3.3V.
The ATmega328 has 32 KB Flash with 0.5 KB used for the bootloader, which is optiboot. It also has 2 KB of SRAM and 1 KB of EEPROM (which can be read and written with the EEPROM library).
Input and Output
Each of the 14 digital pins on the Ethernet board can be used as an input or output, usingpinMode(), digitalWrite(), and digitalRead() functions. They operate at 5 volts. Each pin can provide or receive a maximum of 40 mA and has an internal pull-up resistor (disconnected by default) of 20-50 kOhms. In addition, some pins have specialized functions:
- Serial: 0 (RX) and 1 (TX) – Used to receive (RX) and transmit (TX) TTL serial data.
- External Interrupts: 2 and 3 – These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details.
- PWM: 3, 5, 6, 9, and 10 – Provide 8-bit PWM output with the analogWrite() function.
- SPI: 10 – (SS), 11 (MOSI), 12 (MISO), 13 (SCK). These pins support SPI communication using theSPI library. Note that on this board these are assigned to the Ethernet controller. You can still use the SPI inteface with other peripherals but you need to assign a separate chip select signal for your other device.
- LED: 13 – There is a built-in LED connected to digital pin 13. When the pin is HIGH value, the LED is on, when the pin is LOW, it’s off.
The UnoNet board has 6 analog inputs, labeled A0 through A5, each of which provide 10 bits of resolution (i.e. 1024 different values). By default they measure from ground to 5 volts, though is it possible to change the upper end of their range using the AREF pin and the analogReference() function. Additionally, some pins have specialized functionality:
- TWI: A4 (SDA) and A5 (SCL). Support TWI communication using the Wire library.
There are a couple of other pins on the board:
- AREF. Reference voltage for the analog inputs. Used with analogReference().
- RESET. Bring this line LOW to reset the microcontroller. Typically used to add a reset button to shields which block the one on the board.
See also the mapping between Arduino pins and ATmega328 ports.
Please note that the standard Arduino connectors are not soldered to the board.
Besides the standard Arduino type connectors that you find on most other Arduino boards we have included 4 new ones that will help you get things started quickly.
- J1 is an I2C connector that allows you to hook sensors and other expansion directly into the board.
- J2 is a serial connector that maps Rx0 and Tx0 out.
- J3 and J4 are simple three pin connectors that can be used to hook up 1-Wire sensor or similar. IO8 and IO9 are mapped out to these connectors with a 4.7K ohm pull up resistor on each signal.
The UnoNet has a number of facilities for communicating with a computer, another Arduino, or other microcontrollers.
A SoftwareSerial library allows for serial communication on any of the UnoNet’s digital pins.
The ATmega328 also supports TWI and SPI communication. The Arduino software includes a Wire library to simplify use of the TWI bus; see the documentation for details. For SPI communication, use the SPI library.
All the Ethernet example sketches work as they do with the Ethernet shield but you have to make sure that you are using an updated Ethernet library that supports the W5500 ethernet device. Make sure to change the network settings for your network.
The length and width of the UnoNet PCB is 65mm by 54 mm respectively, with theRJ45 connector and power jack extending beyond the former dimension. Four screw holes allow the board to be attached to a surface or case.
The board follows the standard pinout as described by Arduino.