Olimex PIC32-PINGUINO, PIC32-PINGUINO-OTG User guide

PIC32-PINGUINO and PIC32-PINGUINO-OTG
development boards
user's manual
All boards produced by Olimex are ROHS compliant
Revision E, October 2013
Designed by OLIMEX Ltd, 2011
Page 1
INTRODUCTION:
Arduino is an open-source electronics prototyping platform, designed to make the process of using electronics in multidisciplinary projects more accessible. The hard­ware consists of a simple open hardware design for the Arduino board with an At­mel AVR processor and on-board I/O support. The software consists of a standard programming language and the boot loader that runs on the board.
Arduino hardware is programmed using a Wiring-based language (syntax + librar­ies), similar to C++ with some simplifications and modifications, and a Pro­cessing-based IDE.
The project began in Ivrea, Italy in 2005 to make a device for controlling stu­dent-built interaction design projects less expensively than other prototyping sys­tems available at the time. As of February 2010 more than 120,000 Arduino boards had been shipped. Founders Massimo Banzi and David Cuartielles named the pro­ject after a local bar named Arduino. The name is an Italian masculine first name, meaning "strong friend". The English pronunciation is "Hardwin", a namesake of Arduino of Ivrea.
More information could be found at the creators web page http://arduino.cc/ and in the Arduino Wiki http://en.wikipedia.org/wiki/Arduino
To make the story short - Arduino is easy for the beginners with lack of Electronics knowledge, but also do not restrict the professionals as they can program it in C++ or mix of Arduino/C++ language.
There are thousands of projects which makes the startup easy as there is barely no field where Arduino enthusiasts to have not been already.
Arduino has inspired two other major derivatives - MAPLE and PINGUINO. Based on 8-bit AVR technology the computational power of Arduino boards are modest, this is why team from MIT developed MAPLE project which is based on ARM7 STM32F103RBT6 microcontroller, the board have same friendly IDE as Arduino and offers the same capabilities as hardware and software but runs the Arduino code much faster. Maple project can be found at http://leaflabs.com
In parallel with Arduino another project was started called PINGUINO. This pro­ject choose the first implementation to be with PIC microcontrollers, the reason was that AVRs were hard to find in some parts of the world like South America so you will see lot of PINGUINO developers are from there. PINGUINO project founders decided to go with Python instead Java for processing language. For the moment
PINGUINO is much more flexible than Arduino as not limited to 8bit, currently the
IDE which have GCC in background can support 8-bit PIC microcontrollers, 32bit PIC32 (MIPS) microcontrollers and ARM7/CORTEXM3 microcontrollers which makes PINGUINO very flexible as once you make your project you can migrate easily through different hardware platforms and not being connected to single mi­crocontroller manufacturer. The PINGUINO project can be found at
http://www.pinguino.cc
Page 2
BOARD FEATURES:
We entered the Arduino/MAPLE field 5 years after the introductions of the design, and this allowed us to see and skip most of the errors the Arduino inventors did :-)
We had the possibility to read current customer feedback and to implement what they wanted to see in the original Arduino.
1. The original Arduino/Maple uses linear power supply, this limits the input
voltage range. We designed the power supply to accept power in the 9 to 30V DC range thus making it possible to take virtually any power supply adapter on the market; this also enables application which are in industrial power supply 24VDC.
2. We carefully selected all components to work reliable in the I NDUSTIRAL
temperature range -25+85C so the board can be used in INDUSTIRAL applications
while the original design is up to the commercial 0-70C operating temperature.
3. The original Arduino/MAPLE design is not good for portable applications
as consumes too much power with the linear voltage regulators, we put ULTRA LOW POWER voltage regulators and the consumption is only few microamps, which enables hand-held and battery powered applications.
4. We added Li-Ion rechargeable battery power supply option with BUILD-IN
on board charger, so when you attach battery it is automatically charged and kept in this state until the other power source (USB or external adapter) is removed and it will AUTOMATICALLY power the board - no jumpers, no switches!
5. Our board has UEXT connector which allows many existing modules like
RF, ZIGBEE, GSM, GPS to be connected.
6. Our board has SD-MMC card for data logging.
7. Our board has USB-OTG hardware.
8. Our design allows RTC - Real Time Clock.
9. We made our design noise immune.
10. Optionally if someone needs higher precision and temperature stability in Analog reading we have provisioned the board with Aref precise source.
11. The LEDs and the BUTTONs are on the edge of the board so that there is easy access even if the boards have shields mounted.
12. All components are LOWER than the connectors, so the shields do not in­terfere with them.
13. Mini USB connector is used which is common and used in most cell phones, so you do not have to buy other cables.
14. Original Arduino design had flaw and the connectors were not spaced at
0.1" thus making the usage of proto boards impossible, to keep the compatibility we have same spacing but we also added next to it a connector with 0.1" step which customers can use with perforated boards.
Page 3
15. All signals on the connectors are printed on the top and on the bottom of the board, so when you check with probe you know exactly which port you are measuring.
16. 4 mount holes to make board attachment easier.
ELECTROSTATIC WARNING:
The PIC32-PINGUINO and PIC32-PINGUINO-OTG boards are shipped in protective anti-static packaging. The boards must not be subject to high electrostatic potentials. General practice for working with static sensitive devices should be applied when working with these boards.
BOARD USE REQUIREMENTS:
Cables: Mini USB cable
For programming via ICSP connector you will need PIC-ICSP connector and USB A-B cable for, PIC-KIT3.
Hardware: Programmer/Debugger – PIC-KIT3, or other compatible
programming/debugging tool.
!!!Warning!!! PIC-ICD2, PIC-ICD2-POCKET and PIC-ICD2-TINY are not
supported nor recommended. They lack software support in newer MPLABs
MAIN DIFFERENCES BETWEEN THE TWO BOARDS:
The main difference between PIC32-PINGUINO and PIC32-PINGUINO-OTG is the USB connector. The first board has a standard USB connector that is configured as a device which allows the board to communicate only with hosts. The PIC32­PINGUINO-OTG can be configured either as a device or a host – which allows the board to communicate with devices also – e.g. USB smartphones, keyboards, mice etc.
Page 4
SCHEMATICS:
PIC32-PINGUINO
DW02R
SW-SIDE_ WTCM -TR(3X4)
10uF/6. 3V/0805
100n F 100n F 100nF 100nF 100n F
20pF
20pF
27pF
27pF
100n F
100n F
10nF
NA(2.2uF)
NA(2.2uF)
CE 100uF /35V/6.3x 11mm/R M2.5
100 nF
CE 47 0 uF /10 V /6 .3x 11 m m /RM 2 .5
2.2uF
NA(100nF)
4.7nF
820 pF
10u F/6.3 V
100 nF
10uF/6.3V
10uF/6.3V
10n F
2.2 uF
2.2uF
NA
NA
NA(GPH12 7/SMT /02x10 )
NA
NA
1N5 819S /SS14
1N414 8/min i-mel f
1N5819S/SS14
1N5819S/SS14
1N581 9S/SS1 4
1N5819S/SS14
IRLML 6402
GND
GND
CL10u H SW68
FB1206
GREEN(GYX-SD-TC0805SGC)
Close
YELLOW(GYX-SD-TC0805SYC)
VIN
VIN
+5V
+5V
+5V
+5V
+5V
+5V
VIN
VIN
YDJ-1136
RED(GYX-SD -TC0805SGC )
Q8.000MHz/HC-49S/20pF/20ppm/PTH
32.768 kHz/6pF
0R(NA)
NA NA
33R 33R
NA
NA
33R
330R 330R
4.7k 4.7k 33k
0.47R
0.47R
4.7k 4.7k
3k/1%
330R
330R
1k/1%
0R(NA)
15k
330R
4.7k
SW-SID E_WTCM -TR(3X4)
NA(AP431SA)
PIC32MX440F256H-80I/PT
MC330 63ADR(SO8 )
MCP7 3812T -420I/O T
BH10R
MINI-USB
3.3V
3.3V
3.3V
3.3V
3.3V3.3V 3.3V 3.3V
3.3V
3.3V
3.3V
3.3V
3.3V_AVCC
3.3V_AVCC
3.3V_AVCC
3.3V_AVCC
3.3V_AVCC
MCP17 00T-33 02E/ MB
NA(MCP17 00T -3302E/ MB)
NA
A[0..3]
D0(RXD1),D1(T XD1),D2(BUT ),D[3..7]
D8,D9(LED2),D10(#SS),D11(MOSI),D12(MISO),D13(SCK/LED1),UEXT_#CS
A0
A0
A1
A1
A2
A2
A3
A3
A4(SDA1)
A4(SDA1)
A4(SDA1)
A4(SDA1)
A5(SCL1)
A5(SCL1)
A5(SCL1)
A5(SCL1)
AREF
AREF
AREF
AREF
D+
D+
D-
D-
D0(RXD1)
D0(RXD1)
D0(RXD1)
D1(TXD1)
D1(TXD1)
D1(TXD1)
D2(BUT)
D2(BUT)
D2(BUT)
D2(BUT)
D2(BUT)
D2(BUT)
D3
D3
D3
D4
D4
D4
D5
D5
D5
D6
D6
D6
D7
D7
D7
D8
D8 D9
D9
D10(#SS)
D10(#SS)
D10(#SS)
D11(MOSI)
D11(MOSI)
D11(MOSI)
D11(MOSI) D12(MISO)
D12(MISO)
D12(MISO)
D13(SCK/LED1)
D13(SCK/LED1)
D13(SCK/LED1)
D13(SCK/LED1)
GND
LED2
LED2
PGEC2
PGEC2
PGED2
PGED2
RESET
RESET
RESET
RESET
RX2
RX2
TX2
TX2
UEXT_#CS
UEXT_#CS
UEXT_#CS
USB_POWER
1 2
3.7V-LI_BAT
A6
A7
BUT
C1
C2 C3 C4 C5 C6
C7
C8
C9
C10
C11
C12
C13
C14
C15
C16
C17
C18
C19
C20
C21
C23
C24
C25
C26
C27
C28
C29
C30
1 2 3 4 5 6
CON1
1 2 3 4 5 6
CON2
CON3-1 CON3-2 CON3-3 CON3-4 CON3-5 CON3-6 CON3-7 CON3-8
CON3-9
CON3-10
CON3-11
CON3-12
CON3-13
CON3-14
CON3-15
CON3-16
CON3-17
CON3-18
CON3-19
CON3-20
1 2 3 4 5 6 7 8
CON4
1 2 3 4 5 6 7 8
CON5
D1
D2
D3
D4
D5
D6
FET1
1
2
3
G9 /F0
L1
L2
LED1
1 2
LED1_E
LED2
PWR_J
PWR _LED
Q1
Q2
R1
R2 R3
R4 R5
R6
R7
R8
R9 R10
R11 R12 R13
R14
R15
R16 R17
R18
R19
R20
R21
R22
R23
R24
R25
RST
SR1
3V3 5V
A0 A1 A2 A3 A4 A5
AREF
D0 D1 D2 D3 D4 D5 D6 D7
D8 D9 D10 D11 D12 D13
GND GND
GND
GND
PGC
PGD
PGM
RESET
RST
VCC
VIN
#MCLR
7
#U1CTS/SDA1/IC2/INT2/RD9
43
#U1RTS/OC2/RD1
49
AN2/C2IN-/CN4/RB2
14
AN3/C2IN+/CN5/RB3
13
AN4/C1IN-/CN6/RB4
12
AN5/C1IN+/VBUSON/CN7/RB5
11
AN8/#U2CTS/C1OUT/RB8
21
AN9/C2OUT/PMA7/RB9
22
AN14/#U2RTS/PMALH/PMA1/RB14
29
AN15/OCFB/PMALL/PMA0/CN12/RB15
30
AVDD
19
AVSS
20
CN15/RD6
54
CN16/RD7
55
D+/RG2
37
D-/RG3
36
ENVREG
57
IC4/PMCS1/PMA14/INT4/RD11
45
OC1/INT0/RD0
46
OC5/IC5/PMWR/CN13/RD4
52
OSC1/CLKI/RC12
39
OSC2/CLKO/RC15
40
PGEC1/AN1/VREF-/CVREF-/CN3/RB1
15
PGEC2/AN6/OCFA/RB6
17
PGED1/AN0/VREF+/CVREF+/PMA6/CN2/RB0
16
PGED2/AN7/RB7
18
PMRD/CN14/RD5
53
RE0/PMD0
60
RE1/PMD1
61
RE2/PMD2
62
RE3/PMD3
63
RE4/PMD4
64
RE5/PMD5
1
RE6/PMD6
2
RE7/PMD7
3
RF0
58
RF1
59
RG6/SCK2/PMA5/CN8
4
RG7/SDI2/PMA4/CN9
5
RG8/SDO2/PMA3/CN10
6
RG9/#SS2/PMA2/CN11
8
RTCC/IC1/INT1/RD8
42
SCL1/IC3/PMCS2/PMA15/INT3/RD10
44
SCL2/U2TX/PMA8/CN18/RF5
32
SDA2/U2RX/PMA9/CN17/RF4
31
SOSCI/CN1/RC13
47
SOSCO/T1CK/CN0/RC14
48
TCK/AN12/PMA11/RB12
27
TDI/AN13/PMA10/RB13
28
TDO/AN11/PMA12//RB11
24
TMS/AN10/CVREFOUT/PMA13/RB10
23
U1RX/OC3/RD2
50
U1TX/OC4/RD3
51
USBID/RF3
33
VBUS
34
VCAP/VDDCORE
56
VDD
10
VDD
26
VDD
38
VSS
9
VSS
25
VSS
41
VUSB
35
U1
DC
8
FB
5
IS
7
SC
1
SE
2
TC
3
VCC
6
VSS
4
U2
CE
1
PROG
5
VBAT
3
VDD
4
VSS
2
U3
1 2 3 4 5 6 7 8 9 10
UEXT
D+
D-
GND
GND1
GND2
GND3
GND4
ID
VBUS
USB
GND
1
VIN
2
VOUT
3
VR1(3.3V)
GND
1
VIN
2
VOUT
3
VR2(3.3V)
X1-1
X1-2
9-30VDC
PIC32-PINGUINO_rev_B1
OLIMEX LTD , B ULGAR IA , 2012
https://www.olimex.com
+
+
+
0R
0R
C
A
R
POW ERA NALO GDIG ITALDIG ITAL
ARDUINO: PLATFORM & CONNECTORS
ICS P
BAT TERY CHARGER
USB
+
-
1-2->clo se
LEDS
BUTTONS
ARDUINO_PLATFORM
VOLTAGE_REFERENCE
POWER_SUPPLY
UEXT
USB_DEVICE
Battery Charger
appr. 70 mA charge current
5V
PIC32-PINGUINO-OTG
DW02R
SW-SID E_WTCM -TR(3X4)
10uF/6. 3V
100n F
10uF/6. 3V
10uF/6. 3V
10uF/6. 3V
100n F
20pF
20pF
27pF
27pF
100n F
100n F
2.2uF
NA(2.2uF)
NA(2.2uF)
CE 100uF /35V/6.3x 11mm/ RM2.5
100 nF
CE 470uF/10V/6.3x11mm/RM2.5
2.2 uF
NA(100nF)
4.7nF
47uF/6.3V/TANT
820 pF
10u F/6.3 V
100 nF
10uF/6.3V
10uF/6.3V
10n F
2.2 uF
2.2 uF
100nF
10n F
NA
NA
NA(GPH12 7/SMT /02x1 0)
NA
NA
1N5 819S /SS14
1N414 8/mi ni-me lf
1N5819S/SS14
1N5819S/SS14
1N581 9S/SS1 4
1N5819S/SS14
FB0805/600R/200mA(201209-601)
IRLML6402
GND
GND
CL10u H SW68
FB120 6
CL470nH/0805/1.76R/250mA
GREEN(GYX-SD-TC0805SGC)
Close
YELLOW(GYX-SD-TC0805SYC)
VIN
VIN
+5V
+5V
+5V
+5V
+5V
+5V
VIN
+5V
VIN
YDJ-1136
RED(GYX-SD -TC0805SGC )
Q8.000MHz/HC-49S/20pF/20ppm/PTH
32.768 kHz/6pF
0R(NA)
NA NA
33R 33R
NA
NA
33R
330R 330R
4.7k 4.7k 33k
0.47R
0.47R
4.7k 4.7k
3k/1%
330R
330R
1k/1%
0R(NA)
15k
330R
4.7k
10k
10k
3M
1M
1M 10k
100k 100k 100k
SW-SID E_WTCM -TR(3X4)
MICRO
NA( AP431 SA)
DTC114YKA
PIC32MX440F256H-80I/PT
MC33063ADR(SO8)
MCP73 812T -420I/O T
LM35 26M-L(S O8)
BH10R
USB-OTG
3.3V
3.3V
3.3V
3.3V
3.3V3.3V 3.3V 3.3V
3.3V
3.3V
3.3V
3.3V
3.3V
3.3V
3.3V
3.3V_AVCC
3.3V_AVCC
3.3V_AVCC
3.3V_AVCC
3.3V_AVCC
MCP17 00T-33 02E/ MB
NA(MCP1 700T -3302E /MB)
NA
A[0. .3]
D0(RXD1),D1(T XD1),D2(BUT ),D[3..7 ]
D8,D9(LED2),D10(#SS),D11(MOSI),D12(MISO),D13(SCK/LED1),UEXT_#CS
+5V_VBUS
A0
A0
A1
A1
A2
A2
A3
A3
A4(SDA1)
A4(SDA1)
A4(SDA1)
A4(SDA1)
A5(SCL1)
A5(SCL1)
A5(SCL1)
A5(SCL1)
AREF
AREF
AREF
AREF
D+
D+
D-
D-
D0(RXD1)
D0(RXD1)
D0(RXD1)
D1(TXD1)
D1(TXD1)
D1(TXD1)
D2(BUT)
D2(BUT)
D2(BUT)
D2(BUT)
D2(BUT)
D2(BUT)
D3
D3
D3
D4
D4
D4
D5
D5
D5
D6
D6
D6
D7
D7
D7
D8_MMC_#SS
D8_MMC_#SS
D8_MM C_#SS
D9
D9
D10(#SS)
D10(#SS)
D10(#SS)
D11(MOSI)
D11(MOSI)
D11(MOSI)
D11(MOSI)
D11(M OSI)
D12(MISO)
D12(MISO)
D12(MISO)
D12(MIS O)
D13(SCK/LED1)
D13(SCK/LED1)
D13(SCK/LED1)
D13(SCK/LED1)
D13(SCK /LED1)
E_ME ASUREME NT
E_ME ASUREME NT
GND
LED2
LED2
PGEC2
PGEC2
PGED2
PGED2
RESET
RESET
RESET
RESET
RX2
RX2
TX2
TX2
UEXT_#CS
UEXT_#CS
UEXT_#CS
USB_FAULT
USB_FAULT
USB_ID
USB_ID
VBUSON
VBUSON
V_BAT
V_BAT
1 2
3.7V-LI _BAT
A6
A7
BUT
C1 C2
C3
C4
C5
C6
C7
C8
C9
C10
C11
C12
C13
C14
C15
C16
C17
C18
C19
C20
C21
C22
C23
C24
C25
C26
C27
C28
C29
C30
C31
C32
1 2 3 4 5 6
CON1
1 2 3 4 5 6
CON2
CON3-1 CON3-2 CON3-3 CON3-4 CON3-5 CON3-6 CON3-7 CON3-8
CON3-9
CON3-10
CON3-11
CON3-12
CON3-13
CON3-14
CON3-15
CON3-16
CON3-17
CON3-18
CON3-19
CON3-20
1 2 3 4 5 6 7 8
CON4
1 2 3 4 5 6 7 8
CON5
D1
D2
D3
D4
D5
D6
FB1
FET1
1
2
3
G9 /F0
L1
L2
L3
LED1
1 2
LED1_E
LED2
PWR_J
PWR _LED
Q1
Q2
R1
R2 R3
R4 R5
R6
R7
R8
R9 R10
R11 R12 R13
R14
R15
R16 R17
R18
R19
R20
R21
R22
R23
R24
R25
R26
R27
R28
R29
R45 R46
R47 R48 R49
RST
CD/DAT3/CS
2
CLK/SCLK
5
CMD/DI
3
DAT0/DO
7
DAT1/RES
8
DAT2/RES
1
VDD
4
VSS
6
SD/MMC
SR1
T1
3V3 5V
A0 A1 A2 A3 A4 A5
AREF
D0 D1 D2 D3 D4 D5 D6 D7
D8 D9 D10 D11 D12 D13
GND GND
GND
GND
PGC
PGD
PGM
RESET
RST
VCC
VIN
#MCLR
7
#U1CTS/SDA1/IC2/INT2/RD9
43
#U1RTS/OC2/RD1
49
AN2/C2IN-/CN4/RB2
14
AN3/C2IN+/CN5/RB3
13
AN4/C1IN-/CN6/RB4
12
AN5/C1IN+/VBUSON/CN7/RB5
11
AN8/#U2CTS/C1OUT/RB8
21
AN9/C2OUT/PMA7/RB9
22
AN14/#U2RTS/PMALH/PMA1/RB14
29
AN15/OCFB/PMALL/PMA0/CN12/RB15
30
AVDD
19
AVSS
20
CN15/RD6
54
CN16/RD7
55
D+/RG2
37
D-/RG3
36
ENVREG
57
IC4/PMCS1/PMA14/INT4/RD11
45
OC1/INT0/RD0
46
OC5/IC5/PMWR/CN13/RD4
52
OSC1/CLKI/RC12
39
OSC2/CLKO/RC15
40
PGEC1/AN1/VREF-/CVREF-/CN3/RB1
15
PGEC2/AN6/OCFA/RB6
17
PGED1/AN0/VREF+/CVREF+/PMA6/CN2/RB0
16
PGED2/AN7/RB7
18
PMRD/CN14/RD5
53
RE0/PMD0
60
RE1/PMD1
61
RE2/PMD2
62
RE3/PMD3
63
RE4/PMD4
64
RE5/PMD5
1
RE6/PMD6
2
RE7/PMD7
3
RF0
58
RF1
59
RG6/SCK2/PMA5/CN8
4
RG7/SDI2/PMA4/CN9
5
RG8/SDO2/PMA3/CN10
6
RG9/#SS2/PMA2/CN11
8
RTCC/IC1/INT1/RD8
42
SCL1/IC3/PMCS2/PMA15/INT3/RD10
44
SCL2/U2TX/PMA8/CN18/RF5
32
SDA2/U2RX/PMA9/CN17/RF4
31
SOSCI/CN1/RC13
47
SOSCO/T1CK/CN0/RC14
48
TCK/AN12/PMA11/RB12
27
TDI/AN13/PMA10/RB13
28
TDO/AN11/PMA12//RB11
24
TMS/AN10/CVREFOUT/PMA13/RB10
23
U1RX/OC3/RD2
50
U1TX/OC4/RD3
51
USBID/RF3
33
VBUS
34
VCAP/VDDCORE
56
VDD
10
VDD
26
VDD
38
VSS
9
VSS
25
VSS
41
VUSB
35
U1
DC
8
FB
5
IS
7
SC
1
SE
2
TC
3
VCC
6
VSS
4
U2
CE
1
PROG
5
VBAT
3
VDD
4
VSS
2
U3
#ENA
1
#ENB
4
FLAG_A
2
FLAG_B
3
GND
6
IN
7
OUT_A
8
OUT_B
5
U4
1 2 3 4 5 6 7 8 9 10
UEXT
D+
D-
GND
GND1
GND2
GND3
GND4
ID
VBUS
USB
GND
1
VIN
2
VOUT
3
VR1(3.3V)_D
GND
1
VIN
2
VOUT
3
VR2(3.3V)_A
X1-1
X1-2
9-30VDC
Designed by Olimex_LTD
PIC32-PINGUINO-OTG_rev_D
OLIMEX LTD 2012
https://www.olimex.com
+
+
+
0R
0R
C
A
R
10k
47k
POW ERA NALO GDIG ITALDIGI TAL
ARDUINO: PLATFORM & CONNECTORS
ICSP
BAT TERY CHARGER
USB
+
-
1-2->clo se
LEDS
BUTTONS
ARDUINO_PLATFORM
VOLTAGE_REFERENCE
POWER_SUPPLY
UEXT
USB_OTG
Battery Charger
appr. 70 mA charge current
5V
SD/MMC
Loading...
+ 13 hidden pages