Ricevere chiamate con modulo gsm 800l

Buon giorno, è la prima volta che uso Arduino. Mi chiamo Marica mi sono appassionata ad Arduino per puro caso, Le mie conoscenze però del linguaggio di programmazione di Arduino sono pari a zero e tutto quel poco che so l'ho imparato girando su internet. .
Sto cercando di usare Arduino Nano e modulo gsm 800L per ricevere chiamate ed attivare un relè.
Sono riuscito a ricevere la chiamata ma non riesco ad attivare il relè. Lo schema è il seguente:

/*
 * interruttore per chiamata GSM
*/
#include <SoftwareSerial.h>

SoftwareSerial SIM(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2

#define rele 5

String dato;

void setup()
{
  pinMode(rele,OUTPUT);
  digitalWrite(rele,LOW);
  
  Serial.begin(9600);
  SIM.begin(9600);

  delay(1000); 
  SIM.println("AT");
  delay(500);
  SIM.print("AT+CLIP=1\r\n"); //abilita identificazione di chiamata
  delay(500);
}

void loop()
{
  
  if(SIM.available()>0)///*

*/
#include <SoftwareSerial.h>

SoftwareSerial SIM(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2

#define rele 5

String dato;

void setup()
{
  pinMode(rele,OUTPUT);
  digitalWrite(rele,LOW);
  
  Serial.begin(9600);
  SIM.begin(9600);

  delay(1000); 
  SIM.println("AT");
  delay(500);
  SIM.print("AT+CLIP=1\r\n"); //abilita identificazione di chiamata
  delay(500);
}

void loop()
{
  
  if(SIM.available()>0)//chiedi se la sim è disponibile
    {
      dato=SIM.readString();
      delay(100);
      Serial.println(dato);
      delay(100);
      if(dato.indexOf("RING") > -1)//Chiedi se viene trovato RING
      {
           Serial.println("chiamata rilevata");
           delay(100);
        if(digitalRead(rele)==HIGH)
          {digitalWrite(rele,LOW);delay(100);}
        else
          {digitalWrite(rele,HIGH);delay(100);}
        delay(1000);
        SIM.println("ATH");
        delay(1000);
        dato="";
      }
    }
}
    {
      dato=SIM.readString();
      delay(100);
      Serial.println(dato);
      delay(100);
      if(dato.indexOf("RING") > -1)//Chiedi se viene trovato RING
      {
           Serial.println("chiamata rilevata");
           delay(100);
        if(digitalRead(rele)==HIGH)
          {digitalWrite(rele,LOW);delay(100);}
        else
          {digitalWrite(rele,HIGH);delay(100);}
        delay(1000);
        SIM.println("ATH");
        delay(1000);
        dato="";
      }
    }
}

Questo è l'errore che mi da quando carico il programma.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x3c

Spero riusciate ad aiutarmi. Grazie e saluti a tutti.

Buongiorno e benvenuto nella sezione Italiana del forum,
allora ... un po' di cose che devi tenere presente:

:warning: prima di tutto ti segnalo che, nella sezione in lingua Inglese, si può scrivere SOLO in Inglese ... quindi, per favore, la prossima volta presta più attenzione in quale sezione metti i tuoi post; questa volta esso è stato spostato, da un moderatore della sezione di lingua Inglese, nella sezione di lingua Italiana ... la prossima volta potrebbe venire direttamente eliminato, dopo di che ...

cortesemente, leggi attentamente il REGOLAMENTO di detta sezione, (... e, per evitare future possibili discussioni/incomprensioni, prestando molta attenzione al punto 15), dopo di che, come da suddetto regolamento, fai la tua presentazione NELL'APPOSITA DISCUSSIONE (... quello che vedi in blu è un link, fai click su di esso per raggiungere la discussione) spiegando bene quali esperienze hai in elettronica e programmazione, affinché noi possiamo conoscere la tua esperienza ed esprimerci con termini adeguati.

Detto questo, come richiesto al punto 7 del succitato regolamento, per favore edita il tuo post qui sopra (quindi NON scrivendo un nuovo post, ma utilizzando il bottone a forma di piccola matita :pencil2: che si trova in basso del tuo post), seleziona la parte di codice e premi l'icona <code/> nella barra degli strumenti per contrassegnarla come codice. Inoltre, così com'è, non è molto leggibile ... assicurati di averlo correttamente indentato nell'IDE prima di inserirlo (questo lo si fa premendo ctrlT su un PC o cmd T su un Mac, sempre all'interno del IDE).

Grazie,

Guglielmo

P.S.: Ti ricordo che, purtroppo, fino a quando non sarà fatta la presentazione nell’apposita discussione e sistemato il codice come indicato, nel rispetto del regolamento nessuno ti risponderà (eventuali risposte o tuoi ulteriori post, verrebbero temporaneamente nascosti), quindi ti consiglio di farla al più presto. :wink:

P.P.S.: Evitate di utilizzare la traduzione automatica fatta dal browser ... vi impedisce di capire la lingua della sezione dove andate a scrivere ...

Di che scheda Arduino parliamo? Che versione dell'IDE? Che sistema operativo?

Più informazioni date, maggiore è la probabilità che ci si capisca qualche cosa ...
... quell'errore è quando l'IDE NON riesce a comunicare con la scheda per caricare il programma :roll_eyes:

Guglielmo

Prova a selezionare nelle proprietà della scheda "old bootloader" e vedi se cambia qualcosa.

Ciao, Ale.

... quindi, se usa il CH34x, è un "clone" Cinese e non un Arduino originale ... :roll_eyes: ... prova come dice "ilguargua", dato che sui cloni, spesso, è presente il vecchio bootloader ...

Guglielmo

Manca il diodo in parallelo al relè, cos' è? Un relè automotive da 30A?, se si, non è omologato per carichi a tensione di rete, tira via quella scritta 220vac altrimenti Guglielmo ti blocca il thread come da regolamento

Relè 10A 30dc

.... si, ma la domanda resta, COSA ci comandi?

Guglielmo

Dall'ARDUINO vorrei far arrivare l'impulso al relè che poi attiverebbe la centralina del cancello di casa.

... NON giriamoci intorno, voglio sapere che TENSIONE c'è sui contatti di quel relè ... visto che, sul tuo schema, disegni una lampadina a 230V :roll_eyes:

Guglielmo

...ecco, allora forse NON hai letto con attenzione il REGOLAMENTO ed in particolare il punto 15 ed i suoi sotto punti.

Ora, o elimini ogni traccia di 230V da immagini e testi o ... come ti ha anticipato Icio,il thread viene chiuso.

Guglielmo

Chiedo scusa, ho letto con troppa superficialità il regolamento.
Credo di aver cancellato tutti i post non congruenti con il regolamento per altri progetti che non prenderò evidentemente più in considerazione.
Comunque la centralina del cancello come dicevo ha il passo passo e la chiave esterna alimentate a 12v con uscite appunto dedicate.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.