which pins can be used for Software Serial on micro

The information for Software Serial on the Micro states:
"Not all pins on the Leonardo and Micro support change interrupts, so only the following can be used for RX: 8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI)."
I need to set up 6 different receive ports in addition to the UART but can't figure out which pins 14 (MISO), 15 (SCK), 16 (MOSI) are. According to the main documentation there are a total of 20 digital IO ports, 0 to 13 and A0 to A5 which does not include the MISO MOSI and SCK pins.
Can the MOSI MISO and SCK pins be referred to as 14 15 and 16 and used for Software Serial RX even though that would make the total number of digital IO pins 23 not 20?

Thanks for any help!

akiabtahi:
can't figure out which pins 14 (MISO), 15 (SCK), 16 (MOSI) are.

  • 14 (MISO) is labeled on the Arduino Micro as "MI".
  • 15 (SCK) is labeled on the Arduino Micro as "CK".
  • 16 (MOSI) is labeled on the Arduino Micro as "MO".

Thanks for the quick reply.
This means then that the Micro really has 23 pins that can be used for digital IO? 0 to 13, A0 to A5, and 14 15 16

I really don't have much experience with the ATmega32U4 on the Micro, other than simple projects using the keyboard/mouse emulation. It's strange because the product page very specifically says:

Note that the SPI pins are not connected to any of the digital I/O pins as they are on the Uno, they are only available on the ICSP connector and on the nearby pins labelled MISO, MOSI and SCK.

But the pins work fine for me using digitalWrite() and digitalRead(). I can't imagine what the reason could be for writing that sentence and also for not numbering those pins on the silkscreen.

In fact pin 17 (SS) is LED_BUILTIN (the RX LED on the board). I'm not sure how that LED is connected so that might be something to consider if using that pin.

If you look at the Pro Micro board:


They do have pins 14-17 labeled as such.

Indeed there are several places where there are sentences that are contradictory or confusing so I went to the 32U4 datasheet, and the Micro schematic. I probably should have dug deeper before posting a question but in case somebody else has this question here is what I found:
Software Serial uses interrupt on change which on the 32U4 is available on all 8 of the Port B pins. The attached PDF shows the pin mapping.

PINS.pdf (28.8 KB)