I'm doing some work with pH and EC probes and have been working to get the Atlas Scientific pH stamp to communicate properly with two types of Arduino, the UNO and the Mega, both of which were purchased near the end of last year, so fairly current. I am using the 1.0 version of the Arduino IDE, by the way.
My goal has been to get the pH stamp to take pH readings from a probe on a serial port and then send the data through to a monitoring program on a PC using the usual USB/Serial port communications path.
The problem I kept running into was that I could definitely see via the LEDs on the stamp that commands from the PC, through the Arduino Mega and then on to the stamp were going through - but I was getting absolutely no data back into the Arduino and then back to the PC. The last several weeks in my spare time I was making use of the hardware based Serial1, Serial2 or Serial3 ports to communicate with the stamp and as noted getting no data coming back from the stamp. I even tried just using the sample code from the Atlas Scientific site, no changes and still no joy...
I finally decided in desperation to try using the SoftwareSerial library and dang me if it didn't work almost immediately, I can get the data as expected. So what I am wondering about is why the hardware dedicated interrupt driven serial ports are not seemingly responding to the RX interrupts, at least that is what I am guessing is wrong.