Inviare email con il PICmicro

Inviare le email con il PICmicro è semplice ed efficiente grazie a FTPmicro ed alla nuova versione dello stack 4.02 fornita da Microchip. Ecco come ricevere una email in automatico quando si verifica un determinato evento da qualsiasi sito remoto!

Inviare per email la temperatura in automatico

In questo esempio, vogliamo utilizzare le nuove funzionalità dello stack TCP/IP per permettere ad FTPMicro di inviare una e-mail al verificarsi di un determinato evento.
Il codice proposto, si basa principalmente sul codice di esempio disponibile per FTPmicro, per il quale, però, veniva impiegato una versione meno recente dello stack.

In particolare, avevamo una pagina web attraverso la quale era possibile monitorare la temperatura del dispositivo e modificare lo stato dei LED. A questa è stato aggiunto (per comodità) un nuovo pulsante per l'invio dell'e-mail, ma vedremo che sarà possibile effettuare l'invio in modo assolutamente automatico.

La versione semplificata con soltanto i led attivabili e monitorabili è disponibile qui: Controllare la temperatura via internet con un web server di 8cm

Con delle semplici modifiche è stato attivato un pulsante per inviare una email con la temperatura, molto utile per testare il sistema.

Basteranno inoltre alcune semplici modifiche al codice e sarà possibile inviare automaticamete email quando la temperatura supera una certa soglia (ad esempio), inserendo nell'email stessa il valore della temperatura attuale.

Configurazione base per inviare email dal Picmicro

Per prima cosa è stato deciso di non utilizzare il DHCP e quindi impostare manualmente l'indirizzo IP locale e quindi avere sul router sempre assegnato lo stesso IP.
Questa operazione non è necessaria, ma in questo modo non dobbiamo ogni volta verificare l'indirizzo di FTPmicro all'accensione.
Nel nostro caso 192.168.0.9

#define MY_DEFAULT_IP_ADDR_BYTE1        (192ul)
#define MY_DEFAULT_IP_ADDR_BYTE2        (168ul)
#define MY_DEFAULT_IP_ADDR_BYTE3        (0ul)
#define MY_DEFAULT_IP_ADDR_BYTE4        (9ul)

Successivamente sono stati impostati i server dns (primario e secondario). Dato che la connessione dove è stato effettuato il test è con Tiscali, sono stati inseriti i valori forniti dal provider (ogni provider ha sul proprio sito i valori dns).
Nel nostro caso (Tiscali):
213.205.32.70 e 213.205.36.70

#define MY_DEFAULT_PRIMARY_DNS_BYTE1	(213ul)
#define MY_DEFAULT_PRIMARY_DNS_BYTE2	(205ul)
#define MY_DEFAULT_PRIMARY_DNS_BYTE3	(32ul)
#define MY_DEFAULT_PRIMARY_DNS_BYTE4	(70ul)

#define MY_DEFAULT_SECONDARY_DNS_BYTE1	(213ul)
#define MY_DEFAULT_SECONDARY_DNS_BYTE2	(205ul)
#define MY_DEFAULT_SECONDARY_DNS_BYTE3	(36ul)
#define MY_DEFAULT_SECONDARY_DNS_BYTE4	(70ul)

Infine sono stati aggiornati i file sulle memoria SD con la modifica al file index.html ed il file mail.html per gestire il pulsante email ed il successivo invio.

Autenticazione Email

La versione usata dello stack non supporta l'autenticazione, quindi per inviare email senza autenticazione (username e password) è necessario utilizzare un server open mail relay (attualmente introvabili, per ovvi motivi) oppure utilizzare il proprio provider sfruttando l'autenticazione della stessa connessione.
Infatti nel nostro caso è bastato configurare il server come smtp.tiscali.it e poi ovviamente l'indirizzo di posta elettronica del destinatario.

static BYTE RAMStringServer[] = "smtp.tiscali.it";	 // SMTP server address
static BYTE RAMStringTo[] = "[email protected]"; // email destinatario

Dalle versioni successive dello stack e quindi nei prossimi articoli, verranno introdotte nuove funzionalità, come appunto l'autenticazione mail.

Tutta la documentazione su FTPmicro è disponibile a questa pagina FTPmicro per Utenti Premium.
Potete realizzarlo da soli (fai-da-te) scaricando tutti i codici sorgenti (Schema elettrico realizzato con Orcad, lista parti, circuito stampato realizzato con Orcad, file gerber, codice sorgente assembler realizzato su piattaforma Microchip).

Il progetto montato e collaudato è disponibile sul nostro store --> FTPmicro

Scarica subito una copia gratis

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend