Xadow IO pin mapping
Single reference page for all pin information including:-
How to use each pin in your Arduino code
Xadow FFC to Atmega32u4 pin mapping
pins that have interrupts and timers
the 2 serial ports, IIc and ISP
additional on board IO, that might be hacked
The tables provide different views of the data and are especially useful when you are planning which modules to use and which IO pins for direct use!
Xadow FFC IO bus and matching Arduino and Atmega information and example Arduino code
Xadow FFC pins | Arduino | Atmega32u4 pins | ||||||
Name | IO function | Alternate use | # | IO Pin | code example(s) | Name (interrupts in red) | # | Notes |
P1 | Digital Pin | ISP SCK | 1 | 15 | PinMode(15, OUTPUT); digitalWrite(15, HIGH); | PB1(PCINT1/SCLK) | 9 | ISP SMD header pads also on rear of Xado Main board |
P2 | Digital Pin | ISP MOSI | 2 | 16 | PinMode(16, OUTPUT); digitalWrite(16, HIGH); | PB2(PDI/PCINT2/MOSI) | 10 | |
P3 | Digital Pin | ISP MISO | 3 | 14 | PinMode(14, OUTPUT); digitalWrite(14, HIGH); | PB3(PDO/PCINT3/MISO) | 11 | |
P4 | Analogue Pin | Digital pin! | 4 | A5 | analogWrite(A5, 128); pinMode(A5, OUTPUT); digitalWrite(A5, HIGH); | PF0(ADC0) | 41 | Arduino analogue pins can also be used as digital pins! |
P5 | Digital Pin | IIC SCL | 9 | 3 | PinMode(3, OUTPUT); digitalWrite(3, HIGH); | PD0(OC0B/SCL/INT0) | 18 | |
P6 | Digital Pin | IIC SDA | 10 | 2 | PinMode(2, OUTPUT); digitalWrite(2, HIGH); | PD1 (SDA/INT1) | 19 | |
P7 | Digital Pin | Serial Rxd | 11 | 0 | PinMode(0, OUTPUT); digitalWrite(0, HIGH); | PD2(RXD/INT2) | 20 | See Xadow BLE/GPS examples for these serial pin usage info. NOT same serial port uploading code–see Red/Green LED below. |
P8 | Digital Pin | Serial Txd | 12 | 1 | PinMode(1, OUTPUT); digitalWrite(1, HIGH); | PD3(TXD/INT3) | 21 |
Some MORE Xadow IO pins - only on the Main module, NOT on the FFC bus
Xadow pins | Arduino | Atmega32u4 pins | ||||||
Name | IO function | Alternate use | # | IO Pin | code example(s) | Name (interrupts in red) | # | Notes |
Red LED | Rx | - | 17 | PinMode(17, OUTPUT); digitalWrite(17, HIGH); | PB0(SS/PCINT0) | 8 | Serial port uploading code | |
Green LED | Tx | - | 11 | PinMode(11, OUTPUT); digitalWrite(11, HIGH); | PB7(PCINT7/OC0A/OC1C/!RTS) | 12 | ||
Wake | - | 10 | Have not yet connected and validated this! | PB^/A10/D10 | 30 | On board switch – you need super soldering skills to access this! |
Note: Reset switch is connected to Atmega32u4 Reset pin 13 via a diode – so no access to the 32u4 IO pin AT THE RESET SWITCH!
The BIG Table of Xadow modules and the IO bus pin use for each module
Why such a big complicated table? Well it brings together all of the IO information in one place, but more importantly it lets you see which IO pins are still available once you have selected several Xadow modules! Also the schematic has different FFC pin numbers to the rest of the wiki documentation!
Notes:-
Remember that IIC devices are daisy chained – that is they can connect in parallel, so you can have more than one IIC device connected to the same pins!
Need more IO pins? You may be able to use ONE pin for several different uses, the same way the vibration motor and buzzer are sharing one pin, or in some situations you can use the same pin for different purposes at DIFFERENT TIMES. For example you might set a pin as output to trigger an ultrasonic sensor, then change the pin to input to detect when the signal is received!
Most IIC modules {except the Main Board module, LED, RTC}, ALSO have IIC breakout pins.
So items in purple in the IIC SCL & IIC SDA columns do NOT also have breakout pins!
Additional details highlighted in yellow in center of table document the ADDITIONAL breakout pins on each Xadow module!
? = Don't know, or not yet verified!
| | | | | | | | Arduino Pin name | ||
Interrupts in red--------> | PB1(PCINT1/SCLK) | PB2(PDI/PCINT2/MOSI) | PB3(PDO/PCINT3/MISO) | PF0(ADC0) | PD0(OC0B/SCL/INT0) | PD1(SDA/INT1) | PD2(RXD/INT2) | PD3(TXD/INT3) | Atmega32u4 pin Name | |
| 9 | 10 | 11 | 41 | 18 | 19 | 20 | 21 | Atmega32u4 pin# | |
P1, 1 | P2, 2 | P3, 3 | P4, 4 | P5, 9 | P6, 10 | P7, 11 | P8,12 | FFC pin Name, # | ||
Xadow Modules | Module Control Mode & Address | | | | | | | | | Xadow Pin function |
| | SCK | MOSI | MISO | | | | Rxd | TxD | |
| | SCK | MOSI | MISO | | | | Rxd | TxD | |
| | | Plus pads specific to BLE on rear | |||||||
| | SCK | MOSI | MISO | | | | Rxd | TxD | + Grove I2C & Serial sockets |
| | | | |||||||
| | | | |||||||
| | | | _Disconnect module BEFORE using ISP_ | ||||||
| | | | rear pad connect INTB – Int0??? | ||||||
| | | | | | | | | | _Disconnect module BEFORE using ISP_ |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | ||
| | | | | | | | | | |
| | ISP – SCK | ISP MOSI | ISP MISO | | | All via SMD pads on rear. |
Tech Support & Product Discussion
Thank you for choosing our products! We are here to provide you with different support to ensure that your experience with our products is as smooth as possible. We offer several communication channels to cater to different preferences and needs.