Hello I'm trying to install the gsm shield for some text testing and when i try to compile it and a error came up stating that the SoftWareSerial.h is missing so i looked and in the library it's not there can someone please help me out. I try to add the old library SoftwareSerial from my 1.0.5 and i got a lot more errors i did have this Gsm sketch working with my uno board but i do have it on the Arduino Due now. can someone please help me out?
I had to port a few libraries to DUE, since SoftwareSerial.h isn't supported (I think). Why not use one of the hardware serial ports instead?
Also, a code working with the UNO doesn't necessarily work with DUE. I experienced this a couple of days ago:
http://forum.arduino.cc/index.php?topic=312410.0
Why not post this in the DUE section of the forum?
Hello eppeeppe i didn't know that there was a Due section of the forum to be honest. but thanks for telling me and Hello Anders53 Thank you i will look into the new 1.6.3 i didn't know either there was a new ver thanks.
Hello i upgraded to the ide 1.6.3 and i still get that error message
gsm_helloworld.ino:1:28: fatal error: SoftwareSerial.h: No such file or directory
compilation terminated.
Error compiling.
Show us your #include line.
My sketch
#include <SoftwareSerial.h>
SoftwareSerial SIM900(7, 8);
void setup()
{
SIM900.begin(19200);
SIM900power();
delay(20000); // give time to log on to network.
}
void SIM900power()
// software equivalent of pressing the GSM shield "power" button
{
digitalWrite(9, HIGH);
delay(1000);
digitalWrite(9, LOW);
delay(5000);
}
void sendSMS()
{
SIM900.print("AT+CMGF=1\r"); // AT command to send SMS message
delay(100);
SIM900.println("AT + CMGS = \"+1xxxxxxxxxx\""); // recipient's mobile number, in international format
delay(100);
SIM900.println("Hello, world. This is a text message from an Arduino Uno."); // message to send
delay(100);
SIM900.println((char)26); // End AT command with a ^Z, ASCII code 26
delay(100);
SIM900.println();
delay(5000); // give module time to send SMS
SIM900power(); // turn off module
}
void loop()
{
sendSMS();
do {} while (1);
}
If I select mega2560 i can compile it but If i select Due as programing port i get that error,
josephchrzempiec:
If I select mega2560 i can compile it but If i select Due as programing port i get that error,
Me too.
Well i do have a mega as well as a Due but i use my Mega a lot and only have one but i do have a Due that i barely use.
josephchrzempiec:
If I select mega2560 i can compile it but If i select Due as programing port i get that error,
As mentioned by eppeeppe, Arduino Due's serial ports use HardwareSerial. Simply remove the include of SoftwareSerial.h (HardwareSerial.h is implicitly included) and reference the Serial object for the serial port in question (e.g., Serial1.begin(19200) to initialize UART1).
So a port of the code posted above is:
//#include <SoftwareSerial.h>
//SoftwareSerial SIM900(7, 8);
//NOTE: %USERPROFILE/Application Data/Arduino15/packages/arduino/hardware/sam/1.6.3/cores/arduino/HardwareSerial.h is implicitly included
void setup()
{
Serial1.begin(19200);
SIM900power();
delay(20000); // give time to log on to network.
}
void SIM900power()
// software equivalent of pressing the GSM shield "power" button
{
digitalWrite(9, HIGH);
delay(1000);
digitalWrite(9, LOW);
delay(5000);
}
void sendSMS()
{
Serial1.print("AT+CMGF=1\r"); // AT command to send SMS message
delay(100);
Serial1.println("AT + CMGS = \"+1xxxxxxxxxx\""); // recipient's mobile number, in international format
delay(100);
Serial1.println("Hello, world. This is a text message from an Arduino Uno."); // message to send
delay(100);
Serial1.println((char)26); // End AT command with a ^Z, ASCII code 26
delay(100);
Serial1.println();
delay(5000); // give module time to send SMS
SIM900power(); // turn off module
}
void loop()
{
sendSMS();
do {} while (1);
}
DeathCab4Brutie:
As mentioned by eppeeppe, Arduino Due's serial ports use HardwareSerial. Simply remove the include of SoftwareSerial.h (HardwareSerial.h is implicitly included) and reference the Serial object for the serial port in question (e.g., Serial1.begin(19200) to initialize UART1).
As would be the Bluetooth code?
Whitout the library SoftwareSerial.h
Any Example?