Can someone spare some time to help this complete noooooob?
I have an Uno and Nokia 5110. After some reading through the forums I've found some details in relation to sending SMS data from the Arduino using the 5110, but nothing that makes a great deal of sense.. What I have done is soldered up in preparation a cable for the 5110 from TX/RX & GND, I think I'll need that.
Question is how? Looked for example code but again without a little guidance and a question here and there it may as well be written in Chinese+ let alone C+
For a start I'm looking at sending the same string of data to one number, but eventually I'll be looking for data from GPS to be sent out to phone, perhaps to two seperate numbers.
I know I'm asking a lot but everyone has to learn somehow..
Found a couple of sites with some potentially useful code
This one is based on a PIR being activated, I thought this would give me a starter.
// Declare Constants
const int sensorPin = 2; // PIR Sensor is attached to digital pin 2
const int ledPin = 13; // Built-in LED
const int ledBlinkTime = 500; // Blink one for half a second while calibrating
// Wait for the seonsor to calibrate (20 - 60 seconds according to datasheet)
// 60 Seconds in milliseconds
const unsigned int calibrationTime = 60000;
void setup() {
Serial.begin(115200);
pinMode(sensorPin, INPUT);
pinMode(ledPin, OUTPUT);
// We need to wait one minute for the sensor to calibrate
// Get out of view of the sensor for this duration!
// Blink the LED while calibrating
for (unsigned int i=0; i<calibrationTime; i+=ledBlinkTime*2) {
digitalWrite(ledPin, HIGH);
delay(ledBlinkTime);
digitalWrite(ledPin, LOW);
delay(ledBlinkTime);
}
}
void loop() {
// Constantly check the state of pin 2
// If it is HIGH the sensor is detecting motion
if (digitalRead(sensorPin) == HIGH) {
// Turn the LED on
digitalWrite(ledPin, HIGH);
// Tell the host computer we detected motion
Serial.print(1);
// Sleep for a second to prevent flooding the serial
delay(1000);
} else {
// Turn the LED off
digitalWrite(ledPin, LOW);
}
}
This one suggests a link from GPS to the SMS message, Then there is talk of PDU formatting... .... ... Sorry if it's dumb
/*
* Sending SMS using the Arduino GPRS module
* Copyright (c) 2009 Cool Components Ltd
* http://www.coolcomponents.co.uk
*/
int ModuleOnPin = 2; // the pin to switch the module on (without having to press the button)
void setup()
{
pinMode(led, OUTPUT);
pinMode(ModuleOnPin, OUTPUT);
Serial.begin(115200); // the GPRS baud rate
digitalWrite(ModuleOnPin,HIGH); // swith the module ON
delay(2000);
digitalWrite(ModuleOnPin,LOW);
for (int i=0;i<5;i++) //Assuming SIM card in + there is no pin#, wait 25 secs for module to connect to network
{delay(5000);}
Serial.println(“AT+CMGF=1?); // set the SMS mode to text
}
void loop()
{
Serial.print(“AT+CMGS=”); // send the SMS the number
Serial.print(34,BYTE); // send the ” char
Serial.print(“07941123456?); // send the destination phone number
Serial.println(34,BYTE); // send the ” char
delay(1500);
Serial.print(“Hello World…….”); // the SMS body
delay(500);
Serial.println(0x1A,BYTE); // end of message command 1A (hex)
delay(5000);
Serial.println(“AT*PSCPOF”); // switch the module off
while(1) {} // Loop forever
}