Adafruit Ultimate GPS Breakout not working on Micro

Hey all -

I bought a GPS breakout and ran a Serial sketch using this wiring. It worked perfectly, got the correct stream of NMEA sentences.

I then moved the wires to the identical pins on the Arduino Micro, and I cannot make it work. I've tried switching RX/TX, manually resetting on upload, nothing works. Am I missing something?

If you want to see my code:

#include <SoftwareSerial.h>

#define BAUD 9600
#define GPS_RX 2
#define GPS_TX 3

SoftwareSerial GPS (GPS_RX, GPS_TX);

void setup () {
  Serial.begin(BAUD);
  GPS.begin(BAUD);
}

void loop () {
  if(GPS.available()) {
    Serial.print((char)GPS.read());
  }
}

And my layout:

GPS MICRO
TX 2
RX 3
GND GND
VIN 5V

Like I said, this works perfectly on the Uno, and not at all on the Micro

I solved the problem. It's probably a pretty common error.

As mentioned on Arduino's SoftwareSerial page:

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 moved my TX and RX to 8 and 9, respectively. Works fine now.