RIOduino - REV Robotics popular application for Arduino-compatible boards like the RIOduino is to...

12
REV-11-1104-UM-00 Copyright © 2014 REV Robotics, LLC 1 RIOduino USER'S MANUAL

Transcript of RIOduino - REV Robotics popular application for Arduino-compatible boards like the RIOduino is to...

REV-11-1104-UM-00 Copyright © 2014 REV Robotics, LLC 1

fg

RIOduino USER'S MANUAL

REV-11-1104-UM-00 Copyright © 2014 REV Robotics, LLC 2

TABLE OF CONTENTS

1 RIOduino OVERVIEW .............................................................................................................................................................. 3

1.1 FEATURES ..................................................................................................................................................................... 4

1.2 KIT CONTENTS .............................................................................................................................................................. 4

2 FEATURE DESCRIPTION ........................................................................................................................................................ 5

2.1 ARDUINO COMPATIBILITY ........................................................................................................................................... 5

2.2 POWER OPTIONS .......................................................................................................................................................... 5

2.2.1 VIN SOURCE REQUIREMENTS .................................................................................................................................. 5

2.2.2 POWER SOURCE SELECTION ................................................................................................................................... 5

2.2.3 POWER SUPPLY CAPABILITIES ............................................................................................................................... 6

2.3 MXP SIGNALS................................................................................................................................................................ 6

2.3.1 SHARED I2C................................................................................................................................................................ 7

2.3.2 SHARED UART ........................................................................................................................................................... 7

2.4 WS281x RGB LED STRIP CONNECTIONS .................................................................................................................... 7

2.5 MOUNTING HOLES ........................................................................................................................................................ 8

APPENDIX A SCHEMATIC ....................................................................................................................................................... 9

APPENDIX B DRAWING......................................................................................................................................................... 10

APPENDIX C BILL OF MATERIALS ....................................................................................................................................... 11

LIST OF FIGURES Figure 1-1 RIOduino ....................................................................................................................................................................... 3

Figure 2-1 MXP Signal Access ...................................................................................................................................................... 6

Figure 2-2 Connecting WS281x LED Strip to RIOduino ............................................................................................................... 8

LIST OF TABLES

Table 2-1 VIN Voltage Requirements ............................................................................................................................................. 5

Table 2-2 Automatic Power Selection Truth Table ...................................................................................................................... 5

Table 2-3 Maximum Supply Current ............................................................................................................................................. 6

Table 2-4 Shared I2C Signals ......................................................................................................................................................... 7

Table 2-5 Shared UART Signals .................................................................................................................................................... 7

Table 2-6 Recommended Mounting Screw Sizes ........................................................................................................................ 8

REV-11-1104-UM-00 Copyright © 2014 REV Robotics, LLC 3

1 RIOduino OVERVIEW The REV Robotics RIOduino is an Arduino Uno R3 compatible microcontroller board designed to plug into the roboRIO MXP (myRIO Expansion Port). Because the RIOduino is a complete microcontroller board, the vast ecosystem of Arduino shields and example code are immediately compatible without having to port any code to the roboRIO. Communicating with the RIOduino is made easy by using the UART or I2C interfaces connected through the MXP to the roboRIO.

Figure 1-1 RIOduino

REV-11-1104-UM-00 Copyright © 2014 REV Robotics, LLC 4

1.1 FEATURES

The REV Robotics RIOduino includes the following features:

Arduino Uno R3 compatible microcontroller board o Compatible with virtually all Arduino Uno R3 footprint shields

3 auto-selecting power options o VIN terminal - 12.0 V (from PDP, VRM, etc.) o MXP connector - 5.0 V o USB connector - 5.0 V

Serial connections between RIOduino and roboRIO o UART (TTL levels) o I2C

All MXP signals are passed through to 0.1" header positions o 4 MXP signals are connected to the RIOduino

UART.RX UART.TX DIO14/I2CSCL DIO15/I2CSDA

o Remaining signals are pass-through only o Allows for stacking of MXP boards with provided connector

Connections for WS281x LED strips o Power externally provided

Mounting holes o 2 holes for roboRIO mounting, 4-40 x 3/16" screws o 4 Arduino footprint mounting holes, #4 sized screws o 4 holes for additional mounting options, #6 sized screws

1.2 KIT CONTENTS

The REV Robotics RIOduino comes with the following:

RIOduino USB A to mini B cable Female MXP connector 2 roboRIO mounting screws, 4-40 x 3/16"

REV-11-1104-UM-00 Copyright © 2014 REV Robotics, LLC 5

2 FEATURE DESCRIPTION The REV Robotics RIOduino is designed to seamlessly integrate the vast Arduino ecosystem into the FIRST Robotics Competition control system. This section describes these RIOduino features in detail.

2.1 ARDUINO COMPATIBILITY

The RIOduino is compatible with the latest Arduino UNO R3 footprint. It features an Atmel ATmega328 8-bit microcontroller and can be programmed over USB using the Arduino integrated development environment (IDE). Each board comes with the Arduino bootloader preprogrammed on the ATmega328. Please see the RIOduino Getting Started Guide at www.revrobotics.com/product/rioduino for instructions on how to program the RIOduino for the first time.

For more information on the Arduino UNO R3, the Arduino IDE, compatible shields, and access to the vast Arduino community, please visit arduino.cc.

2.2 POWER OPTIONS

The RIOduino can be powered from one of three power sources: the VIN terminal, MXP connector, or USB connector. It can also supply power to connected circuitry and shields.

2.2.1 V I N SOURCE REQUIREMENTS When powering the RIOduino from either the VIN pin (J4.8) or the VIN screw terminal (J7) please ensure the voltage meets the input requirements outlined in Table 2-1.

Table 2-1 VIN Voltage Requirements

MIN TYP MAX VIN 7.0 V - 12.0 V

If VIN drops below 7.0 V the on-board regulator is at risk of browning out and resetting the RIOduino. If VIN is higher than 12.0 V, the on-board regulator can overheat and be damaged.

2.2.2 POWER SOURCE SELECTION Circuitry on the RIOduino automatically selects the best source for power with the priority given first to the VIN terminal, then the MXP connector, and then the USB connector. Table 2-2 shows the truth table behind the power source selection.

Table 2-2 Automatic Power Selection Truth Table

VIN > 2.7 V1 VMXP > VUSB Selected Source

No No USB Yes MXP

Yes X VIN 1. Note that VIN must be 7.0 V - 12.0 V for the RIOduino to

operate properly, however a VIN greater than 2.7 V will force the selection of VIN as the input source. Please see 2.2.1 VIN SOURCE REQUIREMENTS for more information.

REV-11-1104-UM-00 Copyright © 2014 REV Robotics, LLC 6

The power selection scheme makes it possible to program and debug over USB without removing the RIOduino from the system.

2.2.3 POWER SUPPLY CAPABILITIES The RIOduino can supply both 5.0V and 3.3V to connected circuitry and shields. Table 2-3 lists the maximum current capabilities for each supply depending on the RIOduino power source.

Table 2-3 Maximum Supply Current

Power Source USB MXP VIN 3.3 V Rail - IMAX 50 mA 1.5 A2 50 mA 5.0 V Rail - IMAX

1 500 mA 1.0 A 1.0 A

1. These are the absolute maximums for the 5.0 V rail current. The actual available current will less and will depend on the 3.3 V rail current and any on-board current draw (including the microcontroller).

2. This is the maximum output current for the roboRIO 3.3 V rail. The actual available current depends on any other devices connected to the roboRIO 3.3V rail.

When powered by the MXP connector, the on-board 3.3 V regulator (U5) is put into a shutdown mode and 3.3 V power is provided by the roboRIO. Pin 8 on the MXP connector (J1) is connected to the pin (U5.3) and is tied to ground once it is connected to the matching pin 8 on the roboRIO MXP.

2.3 MXP SIGNALS

All MXP signals are routed to 2x17 0.1" spaced grid of holes along the bottom edge of the board, see Figure 2-1.

Figure 2-1 MXP Signal Access

The included female MXP connector can be soldered to these holes and used in tandem with the REV Robotics MXP Extension Cable (REV-1-1118) to stack an additional MXP board like the REV More Board (REV-11-1100).

Both I2C and UART are connected between the roboRIO and the RIOduino providing the means to communicate between the two.

REV-11-1104-UM-00 Copyright © 2014 REV Robotics, LLC 7

2.3.1 SHARED I2C Table 2-4 shows which signals are shared for I2C.

Table 2-4 Shared I2C Signals

RIOduino Signal RIOduino Shield Pin MXP Pin MXP Signal AD4/SDA J3.5 J1.34 DIO15/I2CSDA AD5/SCL J3.6 J1.32 DIO14/I2CSCL

As with any I2C bus, pull-up resistors are required for both SCL and SDA. To keep AD4 and AD5 free for analog use, the RIOduino has two unpopulated positions (R12, R13) for 2.2 kΩ 0603 surface mount resistors. When used with the roboRIO, these external resistors are not needed because the roboRIO has internal pull-up resistors. For other applications, these resistors can be added. Please see APPENDIX A SCHEMATIC and APPENDIX B DRAWING for the schematic and component placement drawing.

2.3.2 SHARED UART Table 2-5 shows which signals are shared for UART.

Table 2-5 Shared UART Signals

RIOduino Signal RIOduino Shield Pin MXP Pin MXP Signal IO0/RX J5.1 J1.14 UART.TX IO1/TX J5.2 J1.10 UART.RX

CAUTION The UART signals are at TTL levels. Do not connect directly to a RS-232 serial port without an RS-232 to TTL converter.

The UART on the ATmega328 is connected to both the MXP connector and the on-board USB to Serial converter through 1 kΩ resistors. These resistors prevent either the roboRIO or the USB to Serial converter from forcibly driving the bus when another UART device is connected through the shield headers.

2.4 WS281x RGB LED STRIP CONNECTIONS

A popular application for Arduino-compatible boards like the RIOduino is to control addressable RGB LED strips like the WS2811 and WS2812 based strips. The RIOduino includes five plated-through holes that make it easy to connect one of these strips and its external power source. Figure 2-2 shows how to wire a WS281x LED strip with an external 5V supply.

REV-11-1104-UM-00 Copyright © 2014 REV Robotics, LLC 8

Figure 2-2 Connecting WS281x LED Strip to RIOduino

The data line for the strip is connected to the D6 output of the RIOduino while power is provided externally. LED strips can draw a large amount of current, so care should be given to ensure the external power source can provide enough current.

2.5 MOUNTING HOLES

The RIOduino has 10 total mounting hole locations throughout the board. Please see APPENDIX B DRAWING for the mounting hole placement. Table 2-6 lists the recommended mounting screw sizes.

Table 2-6 Recommended Mounting Screw Sizes

Mounting Hole Quantity Recommended Screw Size roboRIO 2 4-40 x 3/16" machine screw Arduino footprint 4 #4 machine screw General mounting 4 #6 machine screw

The general mounting holes give flexibility in mounting the board, either mounted directly on the roboRIO or externally using the REV Robotics MXP Extension Cable (REV-1-1118).

REV-11-1104-UM-00 Copyright © 2014 REV Robotics, LLC 9

APPENDIX A SCHEMATIC Appendix A shows the schematic for the REV Robotics RIOduino.

RR-RIODUINO-BD-A

Microcontroller Board

Arduino Compatible MXP

WWW.REVROBOTICS.COM

PROJECT

DESCRIPTION

FILENAME

DESIGNER

REVISION

DATE

PART NO.

SHEET

1

1

OF

RIOduino-RevA.sch

11/14/2014

A

RIODuino

DAY

29

PC6(RESET/PCINT14)

7

PB6(PCINT6/XTAL1/TOSC1)

8

PB7(PCINT7/XTAL2/TOSC2)

18

AVCC

4

VCC

6

VCC

20

AREF

3

GND

5

GND

21

GND

12

PB0(PCINT0/CLKO/ICP1)

13

PB1(PCINT1/OC1A)

14

PB2(PCINT2/SS/OC1B)

15

PB3(PCINT3/OC2A/MOSI)

16

PB4(PCINT4/MISO)

17

PB5(SCK/PCINT5)

23

PC0(ADC0/PCINT8)

24

PC1(ADC1/PCINT9)

25

PC2(ADC2/PCINT10)

26

PC3(ADC3/PCINT11)

27

PC4(ADC4/SDA/PCINT12)

28

PC5(ADC5/SCL/PCINT13)

19

ADC6

22

ADC7

30

PD0(RXD/PCINT16)

31

PD1(TXD/PCINT17)

32

PD2(INT0/PCINT18)

1

PD3(PCINT19/OC2B/INT1)

2

PD4(PCINT20/XCK/T0)

9

PD5(PCINT21/OC0B/T1)

10

PD6(PCINT22/OC0A/AIN0)

11

PD7(PCINT23/AIN1)

U1

ATMEGA328

16

USBDM

15

USBDP

27

OSCI

28

OSCO

19

RESET#

20

VCC

4

VCCIO

17

3V3OUT

26

TEST

25

AGND

7

GND

18

GND

21

GND

1

TXD

5

RXD

11

CTS#

3

RTS#

2

DTR#

9

DSR#

10

DCD#

6

RI#

8

NC

24

NC

23

CBUS0/TXLED#

22

CBUS1/RXLED#

13

CBUS2/TXDEN

14

CBUS3/PWREN#

12

CBUS4/SLEEP#

U3

FT232RL

1

3

5

7

9

11

13

15

17

19

21

23

25

27

29

31

33

2

4

6

8

10

12

14

16

18

20

22

24

26

28

30

32

34

J1

CON-HDR-2X17-0100-THS-DBCOGJ254DS34

1

2

3

4

5

6

7

8

9

10

J2

1

2

3

4

5

6

J3

1

2

3

4

5

6

7

8

J4

1

2

3

4

5

6

7

8

J5

L1

10uH

C1

0.1uF

C2

0.1uF

C3

0.1uF

Y1

ECS-160-20-3X-TR

C4

20pF

C5

20pF

R1

10K

C6

0.1uF

H1

H2

3

VIN

4

VOUT

1

GND

U2

AP1117ID50G-13

1

STAT

2

D0

3

D1

4

ILIM

8

IN1

7

OUT

6

IN2

5

GND

U4

TPS2115

D1

MM5Z4V7

4.7V

R4

3K

R3

10K

1

2

F1

FUSE-PTC-0.5A-0ZCA0050FF2G

1

5V

2

D-

3

D+

4

ID

5

G

6

7

9

8

J6

CON-USB-MINI-B

C7

10uF 16V

C8

1uF

D2

Yellow

R2

1K

D3

Red

R5

1K

R6

0 OHMS

H3

H4

R7

1K

R8

1K

H5

H6

H7

H8

C9

0.1uF

H12

1

VIN

2

GND

3

SHDN

5

VOUT

4

BYPASS

U5

TC1014-3.3VCT713

C10

1uF

C11

1uF

C12

10uF 16V

R9

10K

R10

1K

R11

1K

R12

2.2K

R13

2.2K

C13

0.1uF

+

C14

47uF

D4

Green

R14

1K

D5

Green

R15

1K

1

2

3

4

5

6

J8

CON-HDR-2X3-0100

OMIT

R16

400

D6

SD101AW-TP

1

3

2

4

S1

SW

-TACT-P

TS645SM

43SM

TR92

1

2

J7

IO8

IO9

SS

MOSI

MISO

SCK

AD0

AD1

AD2

AD3

AD4/SDA

AD5/SCL

AREF

+5.0V

+5.0V

RESET

AREF

AD6

AD7

+5.0V

+3.3V

+5.0V

+5.0V

VIN

+5.0V_MXP

+5.0V_USB

DTR

+5.0V

+5.0V

+5.0V_USB

IO0/RX-I

IO1/TX-O

TXD

RXD

+5.0V

+5.0V_MXP

+3.3V

+3.3V

AD5/SCL

AD4/SDA

IO0/RX-I

IO1/TX-O

IO2

IO3

IO4

IO5

IO6

IO7

UART.RX

UART.TX

IO1/TX-O

IO0/RX-I

+5.0V

+5.0V

AO0

AO1

AGND

DIO11

DIO12

DIO13

AD5/SCL

AD4/SDA

AI0

AI1

AI2

AI3

DIO0

DIO1

DIO2

DIO3

DIO4

DIO5

DIO6

DIO7

DIO8

DIO9

DIO10

+5.0V

MISO

SCK

MOSI

RESET

IO1/T

X-O

IO0/R

X-I

+5VLED

IO6

+5VLED

REV-11-1104-UM-00 Copyright © 2014 REV Robotics, LLC 10

APPENDIX B DRAWING Appendix B shows the component placement and dimensional drawing of the REV Robotics RIOduino.

REV-11-1104-UM-00 Copyright © 2014 REV Robotics, LLC 11

APPENDIX C BILL OF MATERIALS Appendix C shows the bill of materials for the REV Robotics RIOduino.

RIOduino Bill of Materials

Item Ref Qty Description Mfg Part Number

1 C1-3 C6 C9 C13 6 CAP CER 0.1UF 50V Y5V 0603 Samsung CL10F104ZB8NNNC

2 C14 1 CAP ALUM 47UF 25V 20% SMD Nichicon UWT1E470MCL6GS

3 C4-5 2 CAP CER 20PF 50V 5% NP0 0603 Samsung CL10C200JB8NCNC

4 C7 C12 2 CAP CER 10UF 16V Y5V 1206 Samsung CL31F106ZOHNNNE

5 C8 C10-11 3 CAP CER 1UF 25V 10% X5R 0603 Murata GRM188R61E105KA12D

6 D1 1 DIODE ZENER 4.7V 200MW SOD523F Fairchild MM5Z4V7

7 D2 1 LED CHIPLED 588NM YLW 0805 SMD OSRAM LY R976-PS-36

8 D3 1 LED CHIPLED 645NM RED DIFF 0805 OSRAM LH R974-LP-1

9 D4-5 2 LED CHIPLED 570NM GREEN 0805 SMD OSRAM LG R971-KN-1

10 D6 1 DIODE SCHOTTKY 40V SOD323 MCC SD101CWS-TP

11 F1 1 PTC RESTTBLE 0.50A 8V CHIP 1206 Bel 0ZCA0050FF2G

12 J1 1 2x17-Pin Female Box Header, 0.1", Keyed Xiamen DBCOGJ254DS34

13 J2 1 CONN FEMALE 10POS .1" SMD TIN Sullins PPTC101LFBN-RC

14 J3 1 CONN FEMALE 6POS .1" SMD TIN Sullins PPTC061LFBN-RC

15 J4-5 2 CONN FEMALE 8POS .1" SMD TIN Sullins PPTC081LFBN-RC

16 J6 1 CONN MINI USB RCPT RA TYPE B SMD EDAC 690-005-299-043

17 J7 1 CONN TERM BLOCK 2.54MM 2POS PCB On Shore OSTVN02A150

18 L1 1 INDUCTOR MULTILAYER 10000NH 0603 Abracon AIML-0603-100K-T

19 R1 R3 R9 3 RES 10K OHM 1/10W 5% 0603 SMD Rohm MCR03ERTJ103

21 R16 1 RES 470 OHM 1/10W 5% 0603 SMD Rohm MCR03ERTJ471

22 R2 R5 R7-8 R10-11 R14-15 8 RES 1.0K OHM 1/10W 5% 0603 SMD Yageo RC0603JR-071KL

23 R4 1 RES 3K OHM 1/10W 5% 0603 SMD Rohm MCR03ERTJ302

24 R6 1 RES 0.0 OHM 1/10W JUMP 0603 Samsung RC1608J000CS

25 SW1 1 SWITCH TACTILE SPST-NO 0.05A 12V C&K PTS645SM43SMTR92 LFS

26 U1 1 IC MCU 8BIT 32KB FLASH 32TQFP Atmel ATMEGA328-AU

27 U2 1 IC REG LDO 5V 1A TO252-3 Diodes Inc. AP1117ID50G-13

28 U3 1 IC USB FS SERIAL UART 28-SSOP FTDI FT232RL-REEL

29 U4 1 C OR CTRLR SRC SELECT 8TSSOP Texas Instruments

TPS2115APWR

30 U5 1 IC REG LDO 3.3V 50MA SOT23-5 Microchip TC1014-3.3VCT713

31 Y1 1 CRYSTAL 16MHZ 20PF SMD ECS ECS-160-20-3X-TR

32 PCB1 1 RIOduino Rev. A PCB, 2-layer, 1 oz REV Robotics RR-RIODUINO-BD-A

Do not populate list

20 R12-13 2 RES 2.2K OHM 1/10W 5% 0603 SMD Rohm MCR03ERTJ222