Nano- Can I use ICSP Pins as I/O?

image link of wrong pinout killed for the good of mankind

It would be suuuuuuuper convenient if I could simply treat the ICSP pins (MISO/MOSI/SCK) just as if they were the digital pins 11/12/13, respectively. The ICSP pins are the 3x2 set of pins top center of the board and shown in detail above.

For 3-pin devices/sensors/modules that have GND-OUT-5V layout, simply plugging them into the ICSP's GND-MOSI-5V would be the cat's pajamas.

But, it doesn't seem to be working as I think it should/does.
Only pin 13 and the ICSP's SCK work identically.
Why doesn't pin 12 work identically to the ICSP MOSI? That's the pin I really want to use as I/O.

Neato, that pinout image is wrong. Apparently pin 11 and 12 are backwards. Wow.

Here's a correct one.

So Pin 13 and ICSP-SCK work interchangeably, as does Pin 12 and ICSP-MISO.

However, for some reason, Pin 11 isn't working with the MOSI. And I checked this on 3 different Nanos.

Is there something special about Pin 11/MOSI?

All I can say is I checked a Nano and Uno and both work fine. Have you ever tried using the ISCP for programming. You may just have a bad batch of Nanos that don't have those pins connected to anything.

That messed up pighixxx diagram has gotten a lot of people but the one on their website is fixed. Did you find it in a forum thread? I was going to ask them to fix or remove that one but I couldn't find it.

All of the ICSP pins other than MOSI work. I get 5V, I get GND, SCK, MISO, and iirc the thing reset when I accidentally grounded on the RESET.

The erroneous pinout pic was the first Google Image result for "nano pinout", following that pic came to:
http://forum.arduino.cc/index.php?topic=147582.0

First post, as the attached image. The posted link goes to a corrected pdf, but the image upload and stored on this website persists.
If you're a mod that could kill that attachment, that'd not be a bad idea.

Did an LED test and Pin11 does work alongside its ICSP MOSI, writing them HIGH.

The failure is when I try to use the ICSP MOSI pin for the transmit pin of a 433MHz transmitter module. Also doesn't work from Digital Pin 11 either, oddly enough. Works on pin 10, 12, and 13, there's just something about pin 11 that doesn't like rf signal transmitting. :confused: confuzzled.

If digital pin 11 doesn't work, neither will MOSI - the two pins are the same pin!
The ICSP header is pins 11, 12, 13, reset, Vcc, Gnd

I suspect that the library is taking over the timer (to time the pulses it's sending), but hasn't turned off PWM from those pins so the output compare is occupying the pin.

INTP:
If you're a mod that could kill that attachment, that'd not be a bad idea.

No, not a mod but I did comment on that thread: Arduino NANO Pinout Diagram - #18 by pert - Project Guidance - Arduino Forum
I'll see if that gets any results and if not try a couple other things. I know I've seen another longer thread(possibly for a different board) with the same issue on a pighixxx pinout and a lot of people were requesting the bad pinout be taken down but with no success.

Why not report the post to get mod to remove?

For anyone interested, the conflicts I've experienced with various projects with certain pins misbehaving has been consistent with this info
Pins 5 and 6: controlled by Timer0
Pins 9 and 10: controlled by Timer1
Pins 11 and 3: controlled by Timer2

And when a library uses an ISR on Timer2, for example, pin 3 and 11 lose PWM capabilities.

pighixxx has now removed the incorrect Nano pinout from that thread and it is no longer showing up in Google Image search for me.

INTP:
For anyone interested, the conflicts I've experienced with various projects with certain pins misbehaving has been consistent with this info
Pins 5 and 6: controlled by Timer0
Pins 9 and 10: controlled by Timer1
Pins 11 and 3: controlled by Timer2

And when a library uses an ISR on Timer2, for example, pin 3 and 11 lose PWM capabilities.

Yup - you can see the timers marked as OC(number)(letter). The number is the timer number, the letter is the channel (A or B on most boards)

It's not using the ISR related to the timers that does it (timer0 has an overflow ISR, for millis, and that doesn't interfere), it's changing the timer mode that does it; usually when you're using timer interrupts for something, you also have to reconfigure the timer mode.