SoftwareSerial not working on Due?

Hey everyone,

Whenever I try to #include <SoftwareSerial.h> with the Due as my selected board in 1.5, I get the error fatal error: SoftwareSerial.h: No such file or directory. Is the SoftwareSerial library specifically not compatible with Due boards? The only solution that some people mentioned about is using hardware serial instead, but I’m doing this for a school project course on a limited time frame with limited ability to replace parts due to the development time we have left, so I’d like to be able to use software serial and the bluetooth shield I already have.

For clarity, this is happening with literally empty code: The SoftwareSerial library does not even show up under the ‘Import Libraries’ menu, thought it does show up if I select any other board.

The actual project I’m working on is basically do some sensor readings on the Due then transferring them to an Android app over bluetooth via (though that post instruction set was using NewSoftSerial instead).

Any help would be appreciated!


Correct, no one has ported the AVR specific software serial library(ies) to the Due.

But with the number of hardware serial lines, it is possible to route the hardware serial lines using jumper wires to the pins on your shield. You may have to cut or insulate the shield pins that would normally go to the two digital pins that do the serial communications.

Then in your sketch, change the softserial calls to serial calls. As the software is written to be so similar, the changes are minimal.

TheKitty: Correct, no one has ported the AVR specific software serial library(ies) to the Due.

So sad that its not :(.

But I tried what you are talking about once before, I'm pretty new to the Arduino especially the Due, I just tested the bluetooth using the blueterm app on my android phone.

Similar to what TheKitty said though, I had to connect the bluetooth module (I was using the xbee shield) to I think pins 17 and 18 or RX and TX because of this problem. I'm guessing you might be able to do something similar (although probably with the actual correct pins). And as he said I just had to change the code from software ones to serial calls. I didn't have to change anything else hardware wise (although since I was using the shield I had to change this little plastic thing to make sure it output to the correct place)